0

32 ビット DLL である Microsoft.TeamFoundation.VersionControl.Client.dll を参照するツールを作成しました。

ツールを 64 ビット Windows でビルドするときは、Visual Studio を X86 をターゲットにするように設定して、強制的に 32 ビット ビルドにします。

All-CPU の代わりに X86 をターゲットにすると、ツールを直接呼び出す限り (たとえば、コマンド ラインで「myTool.exe」と入力する) 、BadImageFormatException が発生しなくなります。ただし、ツールを呼び出すバッチ ファイルを実行すると、依然として例外が発生します。これは、バッチ ファイルが 32 ビット コマンド プロンプト (%WINDIR%\SysWOW64\cmd.exe) で実行されている場合でも発生します。

この作業を行うために他に何ができますか?

4

1 に答える 1

0

コマンドラインを実行しているのは64ビットマシンであるため、64ビットです。32 ビット コマンド ラインを開いて実行する方法は次のとおりです。

http://www.tipandtrick.net/2008/how-to-open-and-run-32-bit-command-prompt-in-64-bit-x64-windows/

私もこれらをチェックします:

http://www.devnewsgroups.net/group/microsoft.public.dotnet.framework/topic46570.aspx および http://filips.net/archives/2008/01/17/getting-badimageformatexception-in-64-bit-ウィンドウズ/

于 2010-05-11T17:05:58.313 に答える