4

GLUT、OpenGL、FMOD を使用するゲームを作成しました。問題は、Visual Studio 2008 がコンピューターにインストールされていない限り、バイナリが実行されないことです。

どうしてこれなの?

4

7 に答える 7

11

ほとんどの場合、C/C++ ランタイムの DLL バージョンとリンクしています。プロジェクトのプロパティ -> C++ -> コード生成に移動し、ランタイム ライブラリが「DLL」の種類の 1 つにならないように設定します。

または、DLL ランタイムにリンクすることもできますが、その場合、アプリケーションと共にランタイムを再配布する必要があります。

MSDN には、C++ アプリケーションの展開のさまざまな側面に関する詳細情報があります: http://msdn.microsoft.com/en-us/library/zebw5zk9.aspx

また、Dependency Walker (depends.exe)は、実行可能ファイルが依存しているライブラリを表示します。一部のバージョンの Visual Studio にも同梱されています。

于 2008-12-08T09:44:07.763 に答える
5

Microsoft Visual C++ 2008 Redistributable Package (x86)が必要な理由を教えてください。

このパッケージは、C ランタイム (CRT)、標準 C++、ATL、MFC、OpenMP、および MSDIA ライブラリのランタイム コンポーネントをインストールします。サイド バイ サイド配置モデル (CRT、SCL、ATL、MFC、OpenMP) をサポートするライブラリの場合、これらは、サイド バイ サイド アセンブリをサポートする Windows オペレーティング システムのバージョンで、WinSxS フォルダーとも呼ばれるネイティブ アセンブリ キャッシュにインストールされます。 .

デフォルトではすべての Windows、特に VS 2008 より前に出荷されたものにインストールされているわけではないためです。

でも

cout << "Hello, World" << endl;

ライブラリが必要です。この場合は標準 C++ ライブラリです。

于 2008-12-08T09:44:39.493 に答える
3

アプリケーション展開のすばらしい世界へようこそ。

ツールを実行すると、実行可能ファイルに依存し、EXE と一緒にコピーする必要がある DLL が通知されます。

于 2008-12-08T09:42:12.183 に答える
3

このプログラムは、プログラムが実行されないコンピューターで欠落している dll (存在する場合) を見つけるのに役立ちます。

于 2008-12-08T09:42:47.563 に答える
2

デフォルトでは、C ランタイムのリリース バージョンと C++ 標準ライブラリ dll のみが Windows にインストールされます。Visual Studio をインストールすると、デバッグ バージョンが追加でインストールされます。

デプロイするバージョンが完全にリリース モードでビルドされていることを確認してください。

于 2008-12-08T09:43:45.627 に答える
1

リリース モードでコンパイルしてみて、必要なすべての DLL がターゲット マシンにインストールされていることを確認してください。わたしにはできる。

于 2008-12-08T09:42:46.423 に答える
0

デバッグ ライブラリに依存していますか?

于 2008-12-08T09:41:33.510 に答える