int main()
{
test p;
p.a = "test1";
p.b = "test2";
_asm
{
lea eax, p
push eax
call Affich
}
}
Tu peux aussi faire
push p.a
push p.b
call ...
moi si je mets juste push p, ca me met une erreur d'esp à l'exécution (il doit pusher en effet seulement le premier champ)
Si tu peux modifier ta dll, je pense que tu as intérêt à passer par adresse, c'est toi qui voit
Si tu veux utiliser offset p, tu dois mettre p en varaible globale (il sera dans le segment de données, toi tu le mets en local, donc sur la pile)