powercfg についてメモしたページです。
Windows がスリープしない、または勝手にスリープ復帰する、という問題が発生した時にチェックする目的で作成。

今回 参考にしたリンク

Windows 7 用リンクも含まれているけれど、Windows 10 でもだいたい使える。
上記ページから、自分のよく使いそうなトコだけを以下に抜き出し。

powercfgの実行方法

powercfg は、
 管理者権限の コマンドプロンプト
 管理者権限の Windows PowerShell
どちらからでも実行できる。

スリープ復帰の原因を探す

powercfg -lastwake

最後にスリープを解除したアプリ、サービス、デバイスを検出
powercfg -lastwake
▲クリックで拡大
この場合、USBデバイスの何かでスリープ復帰している事が分かる。

powercfg -devicequery wake_armed

スリープ解除ができるデバイスのインスタンス名が (すべて) 表示される
powercfg -devicequery wake_armed
▲クリックで拡大
上図のような結果となった場合、スリープ解除ができるデバイスはマウスとキーボードのみ、という事がわかる。

powercfg -devicequery wake_from_any

スリープ状態を解除できるデバイスのフルネームが (すべて) 表示される。
powercfg -devicequery wake_from_any
▲クリックで拡大
※詳細に表示され過ぎるので実用性に欠ける。

スポンサー リンク

特定デバイスが原因でスリープ復帰してしまう場合

powercfg /devicedisablewake "{デバイス名}"

特定のデバイスからスリープ解除機能を削除する。
powercfg -devicequery wake_from_any
▲クリックで拡大
「powercfg /devicequery wake_armed」で確認したデバイス名をダブルコーテーションで囲って使う。

補足

powercfg /deviceenablewake "{デバイス名}"

上記の逆パターン。
指定したデバイスにスリープ解除機能を付加する。
powercfg /deviceenablewake "{デバイス名}"
▲クリックで拡大

スリープに移行できない場合

powercfg -requests

アプリケーションやサービスなどがスリープの実行を阻止している場合、このコマンドで検出可能。
powercfg -requests
▲クリックで拡大
上図は MPC-HC で動画再生中にコマンドを実行してみたもの。

powercfg -requestsoverride DRIVER "デバイスドライバ名" SYSTEM

デバイスやアプリのスリープ阻止設定よりも、電源管理の要求を優先させる。
※上記は、スリープを阻止しているのが特定のデバイスドライバと特定できた場合、そのデバイスのスリープ阻止設定よりも、電源管理の要求を優先させるもの。

ちょっと難しいので、これを実行する場合は参照元ページを参考にする。

ざっくりメモ

その他

powercfg -energy

「電源効率の診断レポート」を出力してくれるコマンド。
各種スリープの対応や省電力設定の状態をチェックしHTML形式で出力する。powercfg -energy
▲クリックで拡大
※結果が表示されるまでしばらく (2~3分) 時間がかかる。
※結果が出るまでPCには触らないようにする。
※結果は「C:/WINDOWS/system32/energy-report.html」に出力される

補足

このページは以上です。