オフライン テスト用のダミー DLL を生成するプロジェクトに取り組んでいます。互換性がないように見えますが、実際の DLL とそのヘッダー ファイルがあります。DLL 内の名前はマングルされていませんが、関数の前方宣言宣言は次のように呼び出されます__stdcall
。
たとえば .h
DWORD __stdcall DoSomething(byte aByte);
Dependency Walker の example.dll:
2 (0x0002) 2 (0x0002) DoSomething 0x000831C0
私が読んだ限りでは、__stdcall
規約で関数をエクスポートできる場合、その名前は依存関係ウォーカーで次のように読み取られる必要があります。
2 (0x0002) 2 (0x0002) _DoSomething@1 0x000831C0
これは、ヘッダー ファイルがコンパイルされた DLL に対応していないことを意味しますか、それとも何か不足していますか?
最終的に、ダミー関数のエクスポートを作成して、エミュレートしている実際の DLL と同じように動作させるにはどうすればよいでしょうか?