30

bearbecue (./28) :
Folco> ouai, d'ailleurs il me semble que j'ai du poster dur yN du code qui fait ca pour interfacer des delegates C# avec du C++, ca genere des stubs dans une page en execution, qui appellent des fonctions membres, avec le 'this' stocke dans le stub, jsais plus ou c'etait (peut-etre dans videz votre presse-papier triso.gif )

Très excitant, ya donc pas qu'en asm qu'on peut se faire des trips à la noix trilove

31

32

Ah oui. Jamais vu un aussi gros pavé pour expliquer comment on fait une table de saut ou un trampoline, en pc-relatif ou en absolu. grin

33

tu parle du gros pave de commentaires?
bah c'est surtout pour expliquer comment le code d'en dessous packe les stubs, pour en caser le plus possible dans une page, et comment le dit code fait pour eviter d'allouer une page par delegate, ou de changer les droits de la page et d'invalider l'instruction cache a chaque rajout de nouvelle delegate... ^^

(et s'en souvenir si on doit y retoucher un an apres cheeky)
avatar
HURRRR !

34

./30 > Des tripes à la noix ? Intéressant comme concept culinaire, tiens !
avatar

35

trisogrin

bear -> Oué, effectivement, en entreprise faut penser au suivi, je suis pas habitué grin

36

Folco (./35) :
en entreprise faut penser au suivi
(oh, oh, oh cheeky)

C'est rigolo de voir à quel point tu idéalises les programmeurs pro, tu sais grin

37

C'est pas la première fois qu'on me le dit, c'est vrai, mais là c'est Mister Bear qui en a parlé en premier grin

38

Oui nan, mais bearbecue est quelqu'un de sérieux (!) Ça arrive quand même parfois de trouver des gens comme ça.

39

en_galaxy.h, l.104 :

/*
[...]
** ttttttthis line was typ;;;;;;;;;ed with m6yyyyy dick.
** bow befffffore its greeeatness....
[...] */


quoted for emphasis...
avatar
HURRRR !

40

trisotfl T1 c'est pas vrai, c'est au boulot ça ? Ok, anéfé grin

41

Ah non mais ça c'est rigolo (mais pointsqualylant embarrassed), ça n'empêche que le reste doit être plus ou moins propre tongue

42

Ouais enfin, j'ai eu droit à d'autres extraits, il y a des sections entières où les variables ne sont pas vraiment mnémoniques cheeky
avatar

43

44

Bon, bon embarrassed

45

@bearbecue: J'ai du mal à comprendre pourquoi tu fais ton propre tas plutôt que d'utiliser HeapCreate(HEAP_CREATE_ENABLE_EXECUTE). À moins que tu veuilles faire un code compatible Mono?
avatar
Maintenant j'ai la flemme de garder une signature à jour sur ce site. Je n'ai même plus ma chaîne Exec sous la main.

46

bah heu, parceque c'est pas un tas que je veux, mais juste une page, que je prefere avoir des pages en read/execute plutot que read/write/execute qui trainent, et que j'ai pas envie de regenerer les stubs a chaque creation de delegate, et encore moins de me farcir l'overhead de HeapAlloc, qui doit d'ailleurs etre plus gros que les stubs eux-memes... grin

la la page est allouee en read/write, les stubs sont generes dedans, et elle est passee en execute-only quand c'est fini, ca se fait une seule fois a l'allocation de la page, et c'est plus jamais touche. (sauf la page de data, pour ecrire les 'this')
avatar
HURRRR !

47

Ah OK, je n'avais pas vu que tu avais séparé les stubs de la page des "this". Très astucieux.
avatar
Maintenant j'ai la flemme de garder une signature à jour sur ce site. Je n'ai même plus ma chaîne Exec sous la main.