値に問題がありIMAGE_EXPORT_DIRECTORY
ます。アドレスを計算するたびに、間違った値が返されます ( Name
、NumberOfNames
、AddressOfNames
など)。以下のコードで計算しています。
IMAGE_EXPORT_DIRECTORY *export_directory = (IMAGE_EXPORT_DIRECTORY*)(nt_headers->OptionalHeader.DataDirectory[0].VirtualAddress + (DWORD)dos_header);
デバッガーをたどると、アドレスは正しく、 があるはずですがIMAGE_EXPORT_DIRECTORY
、なぜ間違った結果が得られるのでしょうか? 悪いptrと表示されているため、そこからどの要素にもアクセスできませkernel32.dll
んuser32.dll
。
Windows 8 x86 を使用しています。