何故かglobal変数を増やすとMessageBoxを通るとハング

[戻る]
Mt 2002/02/20(水) 17:59:13
Main外のGLOBAL変数を今までの2倍程度増やしてみたんですが、
            id = MessageBox(hWnd,
                                   (LPCTSTR)"OK?",
                                   (LPCTSTR)"確認。",
                                   MB_YESNOCANCEL | MB_ICONEXCLAMATION);
と言うコマンドのところで、ちゃんとWindows画面で肝心のMessageBOXが表示されず
(横にちょろっと出ています。EnterKeyが押せない)、DEBUGコマンドで走らせても
以降の
if (id == IDYES)
   :::::::
と言うコマンドまでたどり着いておらず、WildBranchしているのです
(何処を走っているかは不明。ステップオーバーしてもステップインしても
 ひたすら実行モードになっているのです)。
前前から少し変数を増やすと、TEXOUTで作った文字がWindows画面で
表示されなかったりするトラブルはありましたが、
このMessageBox非通過問題(ここまで来ているのには違いない)
どうやって解決すればいいのでしょうか?

Mt 2002/02/20(水) 19:30:47
困ったなあ。
今Cut&Tryしてみたら、
ビルド → アクティブな構成の設定 → ここをDebugモードでなくて、Releaseモードに
すると通ります。
メモリの負荷が軽くなったせいだと思いますが、
これだと、ステップ単位でデバッグ出来ないし、
変数もドラスティックに減らせられない。

Mt 2002/02/20(水) 20:01:15
何と復活!

試しにパソコンそのものを立ち上げなおしてみました。
そうすると、DebugモードでもMessageBox表示が可能になり
以降もStep by Stepでちゃんと走るようになりました。

どうやら、使えるメモリが完全にFreeになり復活したようです。
お騒がせしました。

古いスレッドには追加発言できません。