ページ 11

DxLib Debugできない

Posted: 2013年10月28日(月) 22:58
by 桃缶
DxLibを使っているとき、私は動作確認をGameProg¥Debug¥GameProg.exeでやっているのですが、
F7でビルドは成功します。
しかしなぜか急にそのexeファイルが開けなくなりました。(ダブルクリックしても反応しない)
VCの「デバッグなしで開始」でやっても反応しません。

「デバッグ開始」すると、「出力」が次のようになりました。(○○○○○○はユーザー名)
'GameProg.exe' (Win32): 'C:\Users\○○○○○○\Desktop\GameProg\Debug\GameProg.exe' が読み込まれました。シンボルが読み込まれました。
'GameProg.exe' (Win32): 'C:\Windows\SysWOW64\ntdll.dll' が読み込まれました。PDB ファイルを開けないか、ファイルが見つかりません。
'GameProg.exe' (Win32): 'C:\Windows\SysWOW64\kernel32.dll' が読み込まれました。PDB ファイルを開けないか、ファイルが見つかりません。
'GameProg.exe' (Win32): 'C:\Windows\SysWOW64\KernelBase.dll' が読み込まれました。PDB ファイルを開けないか、ファイルが見つかりません。
'GameProg.exe' (Win32): 'C:\Windows\SysWOW64\apphelp.dll' が読み込まれました。PDB ファイルを開けないか、ファイルが見つかりません。
SHIMVIEW: ShimInfo(Complete)
'GameProg.exe' (Win32): 'C:\Windows\SysWOW64\user32.dll' が読み込まれました。PDB ファイルを開けないか、ファイルが見つかりません。
'GameProg.exe' (Win32): 'C:\Windows\SysWOW64\gdi32.dll' が読み込まれました。PDB ファイルを開けないか、ファイルが見つかりません。
'GameProg.exe' (Win32): 'C:\Windows\SysWOW64\shell32.dll' が読み込まれました。PDB ファイルを開けないか、ファイルが見つかりません。
'GameProg.exe' (Win32): 'C:\Windows\SysWOW64\msvcrt.dll' が読み込まれました。PDB ファイルを開けないか、ファイルが見つかりません。
'GameProg.exe' (Win32): 'C:\Windows\SysWOW64\combase.dll' が読み込まれました。PDB ファイルを開けないか、ファイルが見つかりません。
'GameProg.exe' (Win32): 'C:\Windows\SysWOW64\shlwapi.dll' が読み込まれました。PDB ファイルを開けないか、ファイルが見つかりません。
'GameProg.exe' (Win32): 'C:\Windows\SysWOW64\rpcrt4.dll' が読み込まれました。PDB ファイルを開けないか、ファイルが見つかりません。
'GameProg.exe' (Win32): 'C:\Windows\SysWOW64\sspicli.dll' が読み込まれました。PDB ファイルを開けないか、ファイルが見つかりません。
'GameProg.exe' (Win32): 'C:\Windows\SysWOW64\cryptbase.dll' が読み込まれました。PDB ファイルを開けないか、ファイルが見つかりません。
'GameProg.exe' (Win32): 'C:\Windows\SysWOW64\sechost.dll' が読み込まれました。PDB ファイルを開けないか、ファイルが見つかりません。
'GameProg.exe' (Win32): 'C:\Windows\SysWOW64\bcryptprimitives.dll' が読み込まれました。PDB ファイルを開けないか、ファイルが見つかりません。
'GameProg.exe' (Win32): 'C:\Windows\SysWOW64\imm32.dll' が読み込まれました。PDB ファイルを開けないか、ファイルが見つかりません。
'GameProg.exe' (Win32): 'C:\Windows\SysWOW64\msctf.dll' が読み込まれました。PDB ファイルを開けないか、ファイルが見つかりません。
'GameProg.exe' (Win32): 'C:\Program Files (x86)\K7 Computing\K7TSecurity\k7crvr.dll' が読み込まれました。PDB ファイルを開けないか、ファイルが見つかりません。
'GameProg.exe' (Win32): 'C:\Program Files (x86)\K7 Computing\K7TSecurity\k7crvr.dll' がアンロードされました
初回例外が 0x00DEE5D7 (GameProg.exe) で発生しました: 0xC00000FD: Stack overflow (パラメーター: 0x00000000, 0x01362000)。
ハンドルされない例外が 0x00DEE5D7 (GameProg.exe) で発生しました: 0xC00000FD: Stack overflow (パラメーター: 0x00000000, 0x01362000)。
プログラム '[6848] GameProg.exe' はコード 0 (0x0) で終了しました。


なぜ急に開けなくなったのでしょうか?
この出力のメッセージに書いてあることが原因でしょうか?
教えてもらえれば幸いです。

Re: DxLib Debugできない

Posted: 2013年10月28日(月) 23:01
by h2so5
Stack overflow と出ているのでプログラムに何らかの問題があります。
具体的には関数の再帰呼び出しの階層が深すぎる、など。

Re: DxLib Debugできない

Posted: 2013年10月28日(月) 23:03
by softya(ソフト屋)
あと考えれるのはローカル変数の配列サイズが大きすぎる場合です。
関数呼び出しとローカル変数の定義にはスタックと呼ばれるメモリを消費します。
これが足らなくなったという実行時エラーです。

Re: DxLib Debugできない

Posted: 2013年10月28日(月) 23:15
by 桃缶
ありがとうございます!
試しにプログラムの中の配列を消したらできました!