普段はC#言語で開発していますが、C#言語で開発したOpenCvを用いたアプリケーションをC++に移植したとき、セットアップを作成後、インストールしたアプリケーションを起動すると”MSVCP120d.dllが見つかりません。”が発生するこの問題について調査した内容を記述します。
調査その1:Visual C++ 再頒布可能パッケージのインストール
まずはOpenCvに必要なVisual C++ 再頒布可能パッケージをインストールしてみました。
結果は同じメッセージが表示される。
WindowsのSystem32
フォルダを確認しても、MSVCP120d.dllファイルは存在しませんでした。
調査その2:強制的にMSVCP120d.dllのインストール
windows->system32に”MSVCP120d.dll”ファイルをインストール(コピー)してみました。
結果は同じメッセージが表示される。
最終的にやったこと
参考にしたサイトを見ると、以下のように記載されていました。
・MSVCP120.DLLが見つからない場合は、再頒布可能パッケージがインストールされていない。
・MSVCP120D.DLLが見つからない場合は、実行しようとしているアプリケーションがデバッグモードでビルドされている。
まさにデバッグモードでビルドした実行ファイルをセットアップに使用していました。
リリースモードでビルドした実行ファイルをセットアップに使用し、インストールしたところ無事動作いたしました。
コメント