• 締切済み

リリースビルドについて

VC++2005とDIRECTX SDKにて開発を行なっています。 コーディングも一段落つきリリースビルドを行ないました 警告もエラーも出ずにビルド成功したのですが、いざ生成されたexeを起動するとエラー報告を行いますかというウィンドウが出て強制終了します どのような場合にこのようなことが起こるのでしょうか それについての解決方法も教えてほしいです よろしくお願いします。

みんなの回答

回答No.4

 こんにちは。  DirectX系で良くしでかすのは、画像や音像ファイルを読み込む時に指定したパスが合わなり、読み込みに失敗た結果としてプログラムが落ちる事です。  特にGetCurrentDirectory()APIや、ファイルへのパスには注意をする必要があります。  怪しいと思った部分にMessageBox()APIを置いて表示して見るとすぐにわかる場合があります。  後は、VC2005が不正なコードを作成する事もありますので、VC2005用のサービスパックが当たっていなければ、当てておくこともお勧めします。  この手の現象はVC6時代が一番多かったのですが、VC2005でも色々とあります。  http://support.microsoft.com/kb/918526/ja  http://social.msdn.microsoft.com/Forums/ja-JP/vsfeedbackja/thread/3ff1a0b8-b88c-4ba5-afc8-f5cba81afb63  http://softyasu.blog121.fc2.com/blog-entry-25.html  http://d.hatena.ne.jp/ir9Ex/20060819/1155926915

rikaruna
質問者

お礼

サービスパック当てたらうまくいきました。 本当にありがとうございました。

回答No.3

貴方のプログラムが間違っているだけです。 メモリアクセスはポインタ操作をせず、配列の範囲外アクセスでも発生します。 根気強く、怪しい箇所を探っていくしかないです。

  • D-Matsu
  • ベストアンサー率45% (1080/2394)
回答No.2

デバッグビルドでは動いている、ということですか? 強制終了原因として最初に考えられるのはAccess Violationでしょうか。 メモリアクセス周りをよーく見直してみてください。

  • nta
  • ベストアンサー率78% (1525/1942)
回答No.1

 エラーメッセージをよく見てください。実行時のエラーだけでなくビルド時のワーニングなどもよく注意してみる必要があります。  経験から言えばデバイスドライバが十分に適合していないデバイスを扱うと問題が発生することがあります。Direct Input のジョイスティックだとかBluetoothドライバーなどですが、そういった機器の制御をプログラムから外して実行してみると問題が起こらなければ怪しいといえます。

関連するQ&A

専門家に質問してみよう