2

SDL 1.2.15 および SDL_image 1.2.12 ライブラリを使用して、C++ でアプリを作成しました。私のコンピューターでは動作しますが、*.exe を友人に送信すると (もちろん、SDL ライブラリからのすべての *.dll ファイルと、プログラムが必要とするイメージと共に)、友人は何も起こらないと言います (メッセージなし、エラーなしなど)。私が作成したすべての SDL アプリはこのような問題を引き起こすため、プログラムの内容は問題ではありません。

私は Windows XP で Code::Blocks 10.05 に取り組んでいます (友人として)。明らかに、リリース版を送信しました。

プログラムが Windows NT 以前との互換モードで実行されないことがわかりました。

4

2 に答える 2

2

アプリケーションが起動していないように見える場合は、DependencyWalkerを使用して、すべての静的依存関係が満たされているかどうかを確認できます。不足している dll があるかどうかが表示されます。すべての依存関係が満たされているように見える場合 (dll リストにエラーがない場合)、Profileメイン メニューからコマンドを使用して、アプリケーションの起動をプロファイルできます。

プロファイリングは、動的な依存関係 (COM 経由で読み込まれた dll または への明示的な呼び出しLoadLibrary) に問題があるかどうかを示します。

于 2012-09-30T12:12:59.703 に答える
0

わかりました、私は自分の間違いを発見しました。SDL_Surface (SDL_SetVideoMode() を使用) の幅と高さを画面のサイズに合わせて決定しました。関数が他のディメンションで画面上で同じことをしたい場合、NULL を返したため、すべてのアプリがクラッシュしました。ご心配ありがとうございます。

于 2012-10-02T15:35:00.713 に答える