DELPHI7でプログラム実行後、必ずデバッグのCPUモニタが表示されてしまうので表示されないようにしたいのですが、どなたかご教授お願いします。
配列やクラスへのアクセスで、メモリ領域を破壊をしている場合、おかしなエラーが出る事があります。
同じソースで別のPCで実行するとCPUモニタは表示されないので
自分のPCで何らかの設定が効いているのではないかと推測しているのですが・・・。
画面を見ると、毎回同じ所で止まっていました。
ntdll.DbgBreakPoint:
アドレス CC
→アドレス C3
アドレス 8BFF
アセンブラのデバッグモードになっているのかスキップ実行ができます。
ここで画面を閉じてもプログラムは終了しません。
再度実行を行うと終了します。
プログラム終了ボタンなどのイベントに何かコードを書いて、デバガーでステップトレースされたらいかがですか。
ステップ実行してみたところ
組み込んであるコンポーネントの終了の辺りから
CPUモニターに飛んでいるようです。
何らかのエラーが起きているんでしょうね。
コンポーネントと自機環境(OS?)の相性が
悪いのかもしれませんのであきらめます。
いろいろありがとうございました。
環境が記載されていないので,よくわかりませんが,
Delphi7の場合,WindowsXPでSP1を導入していない環境で,
CPUモニターが現れてしまうことがあったようです.
環境はWinXPのSP1でした。
現在はとりあえずCPUモニタが表示されたら
プログラムの終了を行っています。
ツイート | ![]() |