シャットダウン: プログラムの終了を待機中

シャットダウン: プログラムの終了を待機中

シャットダウン ボタンを押すと、Windows は、もっと時間を要求する些細なプログラムやタスクであっても、喜んでシャットダウンを拒否します。物理的なシャットダウン ボタンを押すと、ドライブの再暗号化、メモリからのキーのクリア、終了時のその他の処理に十分な時間を必要とする Veracrypt を除き、どのような場合でも Windows をシャットダウンするようにします。

これは達成可能でしょうか?

(Veracrypt は適切なシャットダウンを必要とするため、グローバル強制シャットダウンは明らかにオプションではありません)

答え1

上記で、使用している Windows のバージョンについて質問した理由は、「シャットダウン ボタンを押すと、Windows は、さらに時間を要求する些細なプログラムやタスクに関係なく、シャットダウンを喜んで拒否します」というあなたの主張が、XP以降のどのバージョンにも当てはまらないからです。

レイモンド・チェンが語るようにWindows Vista の電源管理の変更そしてWindows ではプログラムがシャットダウンをブロックすることが難しくなったので、シャットダウンをブロックするにはどうすればよいでしょうか?Vista以降では、 シャットダウンブロックの理由の作成()この機能により、シャットダウン プロセスが開始されると、そのプロセスをブロックできます。その場合でも、ユーザーはいつでも強制的にシャットダウンを選択できます。これは、ユーザー (特にラップトップ ユーザー) がシャットダウンを開始した後、何らかのアプリが原因でシステムが停止し、熱くなったりバッテリーが消耗したりして、システムがずっとオンのままになっていることに気付くという古い問題を防ぐために行われました。

これは簡単にテストできます。保存されていない変更がある場合に閉じることができないアプリをいくつか開いてください。たとえば、メモ帳、ペイント、Wordなど、「保存しますか?」というダイアログが表示されるアプリです。電源ボタンをシャットダウンに設定して押すと、開いているすべてのアプリを表示するウィンドウが表示され、意思作業をすぐに保存したかどうかに関係なく、強制終了される可能性があります。

これまでのところ、ShutdownBlockReasonCreate() を悪用して Windows のシャットダウンを阻止するコンシューマー アプリには出会ったことがありません。そのような不正な動作をするアプリが存在しないというわけではありませんが、どんな些細なプログラムでも Windows のシャットダウンをブロックできるというあなたの主張はもはや真実ではありません。実際にこの現象が発生している場合は、明らかにあなたの側に何か問題があります。なぜなら、Vista 以降の Windows はそのような動作をすべきではないからです (実際にそうなっています)。

関連情報