4

Visual Studio 2005 SP1 がインストールされた Windows 7 マシンを使用しています。これを使用して、VS2005 SP1 でコンパイルされた Windows XP で実行時に DLL をロードするアプリケーションをビルドします。これは失敗し、次のエラーが発生します。

"...\foo.dll": サイド バイ サイド構成が正しくないため、アプリケーションを開始できませんでした。詳細については、アプリケーション イベント ログを参照するか、コマンド ライン sxstrace.exe ツールを使用してください。

読み込まれた DLL は、デバッグ CRT に対してコンパイルされます。この質問に対する答えは、vcredist_x86.exe には CRT のリリース バージョンのみが含まれていることを示唆しています。私のマシンとDLLがコンパイルされたマシンの両方に完全なVS2005 SP1がインストールされているため、この場合にそれが関係しているかどうかはわかりません。

Windows 7 で DLL を再構築する必要がありますか (再構築しない方がよいと思います)、Windows XP マシンで DLL が使用できなくなりますか?

4

1 に答える 1

2

問題が解決しました。問題は、DLL をビルドした Windows XP マシンにインストールされたKB971090アップデートが Windows 7 マシンにないことでした。更新プログラムをインストールできるようにするには、Windows 以外の更新プログラムを受け取りたいことを Windows Update に明示的に伝える必要がありました。

于 2009-09-03T11:44:40.280 に答える