タスクマネージャから「終了タスク」によってアプリケーションのデータが失われるのを防ぐため、WM_CLOSEイベントの関数ハンドラにデータを保存しようとしています。タスクマネージャを使用してアプリケーションを強制終了したときにデータを保存するにはどうすればいいですか?
アプリは、Alt + F4または「閉じる」ボタンを使用してアプリを終了した場合に備えて、データを正常に保存します。しかし、私はタスクマネージャーを介してそれを殺したとき、保存データの処理を正しく行うことができませんでした。貯蓄の進捗は途中で終了したようです。
私はVS2015 IDEでデバッグしようとしましたが、デバッガはWM_CLOSEハンドラのブレークポイントを正常に傍受しましたが、F10でステップオーバーするとアプリケーションがすぐに終了しました。
私のアプリケーションがデータを完全に保存するまで、終了の進行を遅らせる方法はありますか?
私は以下の2つのリンクを見つけましたが、助けにはなりませんでした。
How to handle "End Task" from Windows Task Manager on a background process?
How does task manager kill my program?
アプリケーションをデバッグしたとき、タスクマネージャは応答していないと判断し、それを強制終了しました。ログファイルを作成しようとしましたか?保存プロセスはどのくらいの期間かかりますか? – Dutow
@Dutwo通常は500ms以下です。私はファイルへのログを試みましたが、ログに記録されることはありません。 –
タスクマネージャでアプリケーションを終了したいのであれば、なぜ何かを保存したいのですか?私が望むのは、すぐに終了するプロセスだけです。ユーザーフレンドリー。 –