'プログラムを無効にする方法はまだ'メッセージを閉じる必要があります
Windowsで、OSをシャットダウンまたは再起動しようとして、いくつかのアプリを実行しているときに、それらが受信したときに終了しない場合 OSから呼び出すと、Windowsは「Xプログラムはまだ閉じる必要があります」というメッセージを表示します。ここで、Xは実行中の数です。 アプリ。 未保存のデータが残っている可能性があるため、強制的に終了することはありません。 ただし、シャットダウンまたは再起動する前に常に作業内容を保存する経験豊富なユーザーの場合は、この画面を表示する必要はありません。 実際、アプリプロセスがPCで終了するのが遅い場合でも、Windowsはこのメッセージを表示します。 幸い、この機能の動作を変更または微調整できる設定がいくつかあります。
広告
サインアウトするとき、またはPCを再起動/シャットダウンするとき、Windowsは、実行中の各アプリに閉じる必要があることを通知することにより、実行中のアプリを正常に閉じようとします。 Windowsはこれらのアプリを閉じる時間を与えるので、アプリは実行を停止してデータを保存します。 たとえば、あるプログラムがCD / DVDを書き込んでいる場合、OSにシャットダウン/再起動/ログオフを遅らせて、タスクの実行を終了できるようにすることができます。 アプリケーションのプロセスが終了せずに実行されたままの場合、これは以下のスクリーンショットが示すように表示されるメッセージです。
Windowsは、実行中のタスクを終了するか、シャットダウンプロセスをキャンセルして、Windowsセッションに戻るように要求します。 実行中のすべてのアプリを安全に終了できると確信している場合は、[とにかくシャットダウン]ボタンを手動で押すことができます。 ただし、Windowsには、タイムアウト後にこれらのアプリを自動的に終了する追加機能もあります。
この機能を使用すると、このメッセージが表示されないようにして、タスクプロセスを自動的に終了できます。 タスクの自動終了機能を有効にすると、これらの「応答しないアプリ」はタイムアウト時に強制的に閉じられます。
先に進む前に:自動終了タスク機能は潜在的に危険であることを理解する必要があります。 有効にすると、警告なしに未保存のデータの保存を適切に終了する前に、アプリを強制的に閉じることができます。 本当に必要であることが確実な場合にのみ有効にしてください。
- レジストリエディタを開きます(Windowsレジストリエディタに関する詳細なチュートリアルを参照してください)
- 次のレジストリキーに移動します。
HKEY_CURRENT_USER \コントロールパネル\デスクトップ
ヒント:できます ワンクリックで任意のレジストリキーにアクセス.
- 新しいを作成します ストリング 名前付きの値 AutoEndTasks その値を1に設定します。
それでおしまい。 これで、PCを再起動またはシャットダウンすると、実行中のアプリケーションがWindowsによって自動的に終了します。
さらに、Windowsがアプリを強制終了する前に待機するタイムアウト期間を調整することもできます。 このタイムアウト後、Windowsは、状態に関係なくアプリを強制的に閉じます。 バックグラウンドで実行されているアプリケーションとWindowsサービスに対して個別に設定する必要があります。
デスクトップアプリのタイムアウトを設定するには、次の手順を実行します。
- 次のレジストリキーに移動します。
HKEY_CURRENT_USER \コントロールパネル\デスクトップ
- 新しいを作成します ストリング と呼ばれる値 WaitToKillAppTimeout 5000に設定します。 その値データはミリ秒単位で指定する必要があるタイムアウトであるため、5000は5秒に相当します。
2000から20000までの任意の値を指定できますが、プロセスが強制的に終了するのは適切ではないため、これより低い値は避けてください。 5秒が最適値だと思います。
WaitToKillAppTimeoutパラメーターのデフォルト値は12000です。
Windowsサービスのタイムアウトを設定するには、次の手順を実行する必要があります。
- 次のレジストリキーに移動します。
HKEY_LOCAL_MACHINE \ SYSTEM \ CurrentControlSet \ Control
- 新しいを作成します ストリング と呼ばれる値 WaitToKillServiceTimeout もう一度5000に設定します。
OS設定をデフォルトにリセットするには、WaitToKillAppTimeout、WaitToKillServiceTimeout、AutoEndTasksの3つの値をすべて削除します。