Einzelnen Beitrag anzeigen

venice2
(Gast)

n/a Beiträge
 
#15

AW: Auf Exports hin prüfen ohne DLL zu laden

  Alt 12. Jul 2021, 14:25
Es ist so..

PIMAGE_NT_HEADERS = ^IMAGE_NT_HEADERS;
^IMAGE_NT_HEADERS verzweigt unter 64Bit auf
IMAGE_NT_HEADERS = IMAGE_NT_HEADERS64;
sollte also der richtige record sein.

geht aber trotzdem nicht.

Dein Schnipsel hilft mir bei den Problem nicht.
trotzdem Danke für das raussuchen.

EDIT:
So wie ich sagte der Header der 64Bit Anwendung hat nichts mit dem Header der 32Bit DLL's zu tun.
Es geht deshalb nicht weil Delphi mir den Header verdreht! Ich brauche den für 32Bit nicht den für 64Bit. Der Header einer 64Bit-DLL interessiert mich nicht!
Er macht aus IMAGE_NT_HEADERS = IMAGE_NT_HEADERS64 es muß aber IMAGE_NT_HEADERS32 sein denn die DLL die ich auslese ist 32Bit nicht 64Bit!

Siehe!
Zitat:
Nochmal. Ich habe eine 64Bit Anwendung die soll eine 32Bit.dll einlesen und mir den Export Namen davon zurückgeben.
Was hat jetzt die 64Bit Anwendung mit dem Header zu tun der wird doch aus der 32Bit DLL ausgelesen.
Nach dieser Änderung funktioniert es jetzt.
Delphi-Quellcode:
PIMAGE_NT_HEADERS = ^IMAGE_NT_HEADERS32; // Das hier "^IMAGE_NT_HEADERS" wurde von Delphi auf 64Bit verdreht deshalb ging es nicht.
PIMAGE_EXPORT_DIRECTORY = ^IMAGE_EXPORT_DIRECTORY;

Geändert von venice2 (12. Jul 2021 um 14:54 Uhr)
  Mit Zitat antworten Zitat