トップページ > 過去ログ > 記事閲覧
VC++6で、デバッグ出来ない
名前:ぺたぽん 日時: 2009/07/11 04:51

初めて質問させて頂きます。 現在DXライブラリを使用させて頂きゲーム製作していますが、困った問題が発生しております。 問題の内容 デバッグの途中 「ProcessMessage」 「GetHitKeyStateAll」 等のDXライブラリの関数にさしかかるとステップオーバー、ステップアウトのどちらも出来ず、デバッグを中止せざるを得ない。 当方での対処 1.VCの設定ミスを考え、VCでのDXライブラリ使用時の設定をチェックしましたが、問題無し。 2.製作したプログラム上のミスを考え、必要最低限の行数に削減して再度テストしましたが、変化無し。 3.DXライブラリ使用時の手順を最初からやり直し、さらにHPのサンプルプログラムをコピペして再度テストしましたが、やはり変化無し。 どなたかご存知の方がいらっしゃいましたら、どこが問題なのか教えて頂けますでしょうか? 念の為、HPよりコピペした内容を残しておきます。 宜しくお願い致します。 #include "DxLib.h" #define PI 3.1415926535897932384626433832795f int WINAPI WinMain( HINSTANCE hInstance, HINSTANCE hPrevInstance, LPSTR lpCmdLine, int nCmdShow ) { char KeyBuf[ 256 ] ; // ウインドウモードに変更 ChangeWindowMode( TRUE ) ; // DXライブラリ初期化処理 if( DxLib_Init() == -1 ) return -1; // メッセージの表示 DrawString( 0 , 0 , " C と K と Y のキーを同時に押したら終了します ", GetColor( 255 , 255 , 255 ) ) ; // 無限ループ while( 1 ) { // すべてのキーの状態を得る GetHitKeyStateAll( KeyBuf ) ; // CとKとYのキーが押されていたらループから抜ける if( KeyBuf[ KEY_INPUT_C ] == 1 && KeyBuf[ KEY_INPUT_K ] == 1 && KeyBuf[ KEY_INPUT_Y ] == 1 ) { break ; } // Windows 依存のメッセージ処理を行う if( ProcessMessage() == -1 ) break ; } // DXライブラリ使用の終了処理 DxLib_End() ; // ソフトの終了 return 0 ; }

Page: 1 |

追記 ( No.1 )
名前:ぺたぽん 日時:2009/07/11 05:00

書き忘れていましたが、サンプルプログラム自体は問題無く動作いたしました。
Re: VC++6で、デバッグ出来ない ( No.2 )
名前:管理人 日時:2009/07/13 00:33

ステップオーバー、ステップアウトのどちらもできない、というのは 具体的にはどのような状態に陥ってしまうということでしょうか? ProcessMessage や GetHitKeyStateAll ではウインドウがアクティブになるのを 待つ処理が入っていますので、ステップオーバーしようとした後に ウインドウをアクティブにすると次の行に進むかもしれません・・・
Re: VC++6で、デバッグ出来ない ( No.3 )
名前:ぺたぽん 日時:2009/07/13 01:24

ウィンドウをアクティブにしたところ、次のステップに正常に移行しました。 プログラムの動作検証に集中し過ぎて、イージーミスを犯しておりました・・・。 余計なお手間を取らせてしまい、申し訳ありません。

Page: 1 |