Permalänk
Medlem

Fråga om DLL-er och minne

Om ett program X laddar in tio olika dll-filer som alla använder sig av win32-apit MessageBox och jag hookar den funktionen i ytterligare en inladdad dll-fil, kommer den då bli hookad i de andra tio dll-filerna oxå?

Visa signatur

www.filipsprogram.tk - lite freeware
"Delight, herregud. Talang är bara förnamnet."

Permalänk
Medlem

Det var ett bra tag sen jag höll på med PE filer men jag tror att varje inladdad PE modul har en egen IAT (import address table), och alltså så måste du patcha varje enskild moduls IAT för att alla anrop till funktionen ska interceptas.

Visa signatur

Intel Core i7-3770K | NVIDIA Geforce GTX 980 | 16 GB DDR3 | DELL P2415Q | DELL U2711 | DELL U2410

Permalänk
Medlem

jag hookar user32.MessageBoxA direkt, inte IATn. Först tänkte jag att det skulle bli system-wide då men det blev det inte, bara i den process jag hookade i. Sen är det i själva verket dll-er allt sker i och dom är ju lite speciella med hur dom kan dela minne o sånt. Jag antar att jag får göra lite tester.

Visa signatur

www.filipsprogram.tk - lite freeware
"Delight, herregud. Talang är bara förnamnet."