FireWire カメラから画像を取得する C# アプリケーションを作成しました。FireWire ドライバーと SDK dll (.NET) を含むカメラ ベンダーの SDK をインストールしました。SDK dll は、インストール中に GAC に展開されます。
アプリケーションで参照した SDK dll は、Microsoft.VC80.CRT v8.0.50727.6195 に依存しています。マニフェスト ファイルと dll の msvcr80.dll、msvcm80.dll、msvcp80.dll をアプリケーションと同じフォルダにコピーし、アプリケーションを実行しようとしましたが、それでも .NET ランタイムが VCRT dll を見つけることができず、アプリケーションがクラッシュします。
次の例外が発生します: 「ファイルまたはアセンブリ 'CameraSDK.dll' またはその依存関係の 1 つを読み込めませんでした。サイド バイ サイド構成が正しくないため、アプリケーションを開始できませんでした。アプリケーション イベント ログを参照するか、詳細については、コマンドライン sxstrace.exe ツールを参照してください (HRESULT からの例外: 0x800736B1)。"
Google で調べたところ、VCRT v8.0.50727.6195 を入手するには、Microsoft Visual C++ 2005 Service Pack 1 をインストールする必要があることがわかりました。VCRedist をダウンロードしてインストールしようとしましたが、dll がインストールされませんでした。私のマシンには VS2008 と VS2010 の両方があり、VCRedist インストーラーが私のマシンで最新バージョンを検出し、インストールをスキップしたと思います。
アプリケーションがローカル ディレクトリで依存する dll を検索するようにするにはどうすればよいですか? どんな助けでも大歓迎です。ありがとう。