スリープ解除の原因

意図しないスリープ解除 (wake) の原因を調べる方法を考えます。

イベント ビューアーによる調査

イベント ビューアーの[コンソール ツリー]から【Windows ログ → システム】を選択し、[操作ウィンドウ]の[現在のログをフィルター]をクリックします。フィルタ設定のダイアログが表示されるので、[イベント ソース]で[Power-Trobleshooter]にチェックを入れ[OK]をクリックします。このように設定することで、イベントの一覧にスリープからの復帰に関与したものだけを表示できます。Windows Vistaマシンがスリープ状態から勝手に復帰するのを防止する - @IT 小林章彦 (2008/12/26)

スリープ解除の原因として、

  • 電源ボタン
  • 休止までの S4 スリープ
  • タイマー - タスク スケジューラは、'**' タスクを実行します。
  • デバイス - USB Root Hub
  • 不明

のようなものがあります。

タイマーが原因の場合

Windowsの電源の設定で[スリープ解除タイマーの許可]を無効とすることで、タイマーによって解除されなくなります。ただし必要なタスクも実行されなくなる恐れがあるため、設定には注意が必要です。

VBoxSVC.exe

スリープ状態の解除元として「タイマー - VBoxSVC.exe」が記録されることがあります。これはVirtualBoxが原因です。#14789 (VirtualBox wakes Windows 10 from sleep) – Oracle VM VirtualBox

デバイスが原因の場合

デバイス マネージャで対象のデバイスのプロパティを表示し、[電源の管理]タブを開きます。そして[このデバイスで、コンピュータのスタンバイ状態を解除できるようにする]のチェックを外すことで、スリープが解除されなくなります。[電源の管理]タブが表示されないときは、そのデバイスが電源管理に対応していないか、デバイスによるスリープ解除がBIOSで無効にされている可能性があります。Windows 10のデスクトップパソコンでキーボードのキー操作やマウス操作を行いスリープ状態から復帰できるようにする方法 - NEC LAVIE公式サイト

※ロジクール (Logitech) のUnifyingレシーバー (Unifying Receiver) では、使用しているのがマウスだけの場合であっても、キーボード デバイスの設定も変更する必要があります。そのとき両者のVIDは0x46D (046D) で、PIDは0xC52B、0xC52F、0xC532、0xC534のような値であり、その値はマウスとキーボードで共通です。USB\VID_046D&PID_C52B - Unifying Receiver | Device Hunt

スリープがモダンスタンバイである場合は、スタンバイの解除を無効にできません。FMV Q&A - スリープに移行してもロック画面が表示されます。 - FMVサポート : 富士通パソコン

Powercfgによる調査

直近のスリープ解除の原因を知りたいだけならば、Powercfg

c:\>powercfg /lastwake

とするのが簡単です。【ハウツー】レッツ! Windows 7 - 電源管理編(4) | パソコン | マイナビニュース 阿久津良和 (2010/07/20)

スリープ状態の解除履歴 [0]
  スリープ状態の解除元カウント - 1
  スリープ状態の解除元 [0]
    種類: デバイス
    インスタンス パス: USB\ROOT_HUB20\4&*********&0
    フレンドリ名:
    説明: USB Root Hub
    製造元: (標準 USB ホスト コントローラー)

種類がデバイスならば、デバイス マネージャでその原因のデバイスを確認できます。それには適当なデバイスのプロパティを開き、その[詳細]タブの[デバイス インスタント パス]がpowercfgの[インスタンス パス]と一致するデバイスを探します。ただし問題のデバイスがUSBハブを介して接続されていると、ハブから先の情報は特定できません。

スリープを解除できるデバイス

スリープ解除の原因となり得るデバイスは、

c:\>powercfg /devicequery wake_armed
HID キーボード デバイス

のように確認できます。

解決できない場合

スリープさせることを断念し、休止状態 (S4) にします。

コンピュータの情報サイトから、まとめて検索