「任意のCPU」としてビルドするように設定されたアセンブリUtilsがあり、「任意のCPU」としてもビルドするように設定されたマネージドEXEがあります。exeは私のUtilsアセンブリを使用します。
私のUtilsアセンブリは、管理されていない非com 32ビットDLLをロードし、いくつかの関数を呼び出す必要があります。
毎回「間違った形式のプログラムを読み込もうとしました。」という例外が発生します。
EXEとアセンブリを64ビットモードで実行しながら、32ビットDLLをロードして簡単な関数呼び出しを行う方法はありますか?
EXEを32ビットモードでビルドすると機能することはわかっていますが、Utilsアセンブリは64ビットモードで実行される可能性のあるWCF Webサービスやその他のプログラムで使用され、32ビットdllを呼び出す必要があります。
方法はありますか?64ビットコードから呼び出されたときに0ポインターを返すLoadLibraryと、例外を与えるDllImportを使用してみました。
ご協力ありがとうございました。