掲示板システム
ホーム
アクセス解析
カテゴリ
ログアウト
「アプリケーションが応答していません」を回避するには? (ID:17124)
名前
ホームページ(ブログ、Twitterなど)のURL (省略可)
本文
ふむふむふむの助 さん、 anone さん、 deldel さん 本当にありがとうございます。 明確な原因が特定できそうにない質問で申し訳ないです。 みなさんの意見していただいたことを参考に試してみたいと思います。 1.タスクトレイにアイコンを表示するコンポーネントの調査(anone さん指摘) 2.Windowsの終了を検知するルーチン追加(deldel さん指摘) 3.ある程度まとまったコードやコンポーネントを削除して実行してみる(deldel さん指摘) ******************** いったん、これらの点をおいておきまして、 調べているうちに怪しそうなものを再度あげてみます。 アプリが終了するときに、 本当に終了するかの確認処理があるのを忘れていました。 これはどうなのでしょうか? //”メインメニューの終了”によるアプリの終了 procedure TMainForm.MainMenuFileExitClick(Sender: TObject); begin //終了 Close; end; //”タスクトレイ ポップアップメニューの終了”によるアプリの終了 procedure TMainForm.TrayIconPopupMenuExitClick(Sender: TObject); begin //終了 Close; end; //いきなりアプリの終了をさせないために、確認を行っている //(ここにくるのは、”メインメニューの終了”、 // ”タスクトレイ ポップアップメニューの終了”、 // ”Alt + F4 での終了”のはず) procedure TMainForm.FormCloseQuery(Sender: TObject; var CanClose: Boolean); var //確認メッセージボックスの回答 AnswerWord: Word; begin AnswerWord := MessageDlg('本当に終了しますか?', mtConfirmation, [mbOK, mbCancel], 0); if (AnswerWord <> mrOk) then begin CanClose := false; end; end; ******************** (これは上記にも関連し、質問の最初あたりに訂正・記述しておくべきことでした) 現時点で確認している動作です。 ※詳細に確認できていないところもあり、異なるかもしれません 通常の再起動 アプリ自体の”終了するか確認”が出る。 (終了しないを選択するとWindows”すぐに終了”のメッセージが出る) 通常の終了 何も出ない。 他アプリによる再起動(ドライバインストール時など) Windows”アプリケーションが応答していません”のメッセージ(強制終了するかどうか)が出る。
←解決時は質問者本人がここをチェックしてください。
更新する
戻る
掲示板システム
Copyright 2021 Takeshi Okamoto All Rights Reserved.