it-swarm-ja.com

Visual Studio 2013MSVCR110d.dllがありません

これがSuperUserに属しているのか、StackOverflowに属しているのかはよくわかりませんが、コーディングの問題ではないようですので、これを使用して実行します。

FreeGLUTとFreeImageを利用したVisualStudio2013を使用したC++ゲームの開発を開始しました。デスクトップで問題なくコンパイルして実行できますが、ラップトップで同じコードをコンパイルしようとすると、「msvcr110」というエラーが表示されます。d.dllがコンピューターにありません。」その後、Visual Studioがフリーズする可能性が約50%あり、タスクマネージャーがプロセスを停止できないため、コンピューターを再起動する必要があります(私がまだ取り組んでいる別の問題)。

Googleの検索で、Visual C++ Redistributable 2012をインストールするように言われましたが、これはすでにこのラップトップ(x86とx64の両方)にインストールされており、再インストールされています( http://www.Microsoft.com/en-us/download /details.aspx?id=30679 )はまったく役に立ちませんでした。 Visual C++ Redistributable 2013(x86&x64、 http://www.Microsoft.com/en-us/download/details.aspx?id=40784 から)もインストールしようとしましたが、役に立ちませんでした。これらのリンクにはどちらもARM=ダウンロードが含まれています。それが何であるかわからないため、インストールしようとすると、このバージョンにはインストールできないというポップアップが表示されます。 Windows(つまりWindows 8)なので、私はそれを必要としないと思います。

C:\ Windows\SysWow64フォルダーを見ると、msvcr110.dllはあるがmsvcr110はないd.dll。リリースバージョンがインストールされたようですが、デバッグはインストールされていません。 msvcr120が表示されますd.dll、2013バージョンは正しいでしょうか?したがって、msvcr110の代わりにVisual Studio 2013がそれを使用するべきではありませんd.dll?

標準のC++ HelloWorldプロジェクトを実行してもこの問題は発生しないため、FreeGLUTまたはFreeImageと関係があると思います。ただし、問題なくコンパイルしてデスクトップで実行できるため、すべてが正しくコーディングおよびリンクされていると思います。インクルードディレクトリ、ライブラリディレクトリ(どちらもデバッグ用)を追加し、依存関係としてopengl32.libとFreeImaged.libを追加しました。

Visual C++ Redistributableのインストールは役に立たなかったので、この問題を解決する別の方法はありますか? Visual Studio 2013はmsvcr110d.dllを使用する必要がありますか、それともmsvcr120d.dllを使用する必要がありますか? ARM MSVCRダウンロードページからインストールする必要がありますか?Windows 8 64ビットを使用しています(新品のラップトップも使用しているため、破損の問題はないと思います)。よろしくお願いします。あなたの助けに。

ダグ

4
Doug

"標準のC++ HelloWorldプロジェクトを実行してもこの問題は発生しないため、FreeGLUTまたはFreeImageと関係があると思います。"

あなたは正しい方向に進んでいると思います。 FreeGLUTまたはFreeImageがデバッグモードでコンパイルされているようです、それが「D」バージョンが要求されている理由です。依存関係のリリースコンパイルを使用していることを確認してください。

4
Patrick Seymour

リモートデバッグを試みている場合(または他のシナリオで)、ランタイムライブラリの設定をマルチスレッドデバッグDLL(/ MDd)->マルチスレッドデバッグ(/MTd)。

プロジェクトを右クリックし、Properties-> C++-> Code Generationを選択してRuntime Libraryオプションをプルダウンすることで、これを実現できます(VS2012)。 「DLL」が含まれていない設定の1つに変更します(デバッグモードまたはリリースモードの生成が必要かどうかに基づいて設定を選択します)。

お役に立てれば。

0
Bryan