2012-04-16 9 views
1

LPTSTR DLLPath = new TCHAR [_MAX_PATH]; :: GetModuleFileName((HINSTANCE)& __ImageBase、DLLPath、_MAX_PATH);リリースモードのプログラムからisapi dll物理パスを取得する方法

私は上記の関数を使ってisapi dllの物理パスを取得していました。デバッグモードでは正常に動作します。リリースモードでビルドしようとすると、__ImageBaseは未確認です。 誰も私にこれに対する代替案を提案することができます。

おかげ

答えて

0

おそらく、そうのようにそれをキャストする必要があります、0x400000イメージ・ローダーは、メモリ内の.exeファイルをロードするところ、これは通常、次のとおりです。

__ImageBaseは正常値です。

HINSTANCE hInst = reinterpret_cast<HINSTANCE>(&__ImageBase) 
0

おそらくDllMain()ではなく__ImageBaseに渡さhInstanceパラメータを保存して使用する必要があります。

関連する問題