2017-01-28 21 views
0

私はSFMLライブラリを使用してVisual Studio 2015で小さなC++ゲームを作ったが、 'Debug-x86'モードの '►Local Windows Debugger'ボタンをクリックすると完全に正常に動作する。Visual Studio 2015でC++アプリケーションを作成するには?

それは次のdllファイルが欠落していると言うので、私のゲームは他の誰のコンピュータ上では動作しません

msvcp140.dll
msvcp140d.dll
vcruntime140d.dll

ucrtbased.dll appcrt140dを私はそれらのファイルが来る知って
desktopcrt140d.dll

を.dllをVisual Studio 2015 Instalationから、VSをインストールしていない人は、これらの問題を解決するために何ができるのですか?

は、私は私のPCのCから最初の4 DLLをコピー:\ WINDOWS \ System32にexeファイルのパス上 (msvcp140.dll、msvcp140d.dll、vcruntime140d.dll、ucrtbased.dll)が、最後の2を見つけることができませんでしたどこにもない。 (appcrt140d.dll、desktopcrt140d.dll)

どのようにすべてのDLLの依存関係でexeアプリケーションを作成するのか分かりません。

私は 'Release-x86'モードを使用すると、途中で次のエラーがスローされます。

Timber.exeに0x62234AE7(vcruntime140d.dll)でスローされる例外: 0xc0000005で:アクセス違反が位置0x00000000のを読み取ります。

この例外のハンドラがある場合、プログラムは安全に続行される可能性があります。

+1

あなたが依存関係を持っており、それらはOSによって提供されていない場合は、あなたがそれらを供給する必要がある場合。 – macroland

+2

Visual Studio C++ Redistributableを配布する必要があります。 [リンク](https://www.microsoft.com/en-ca/download/details.aspx?id=48145)リリースDLLのみが再配布可能ファイルに含まれていることに注意してください。 –

+3

Release-x86の設定が矛盾しているように見えます。リンカの入力設定を確認し、どのlibのデバッグバージョンも参照されていないことを確認してください。 – Laszlo

答えて

0

プロジェクトのプロパティでSFMLライブラリのリリースモードを設定し、 'Debug-x86'の代わりに 'Release-x86'モードに切り替えることで修正しました。

あなたはここにあなたのSFMLプロジェクトを構成する方法の詳細を読むことができます:https://www.sfml-dev.org/tutorials/2.4/start-vc.php

関連する問題