最近になってPCがスリープしなくなることが発生し始めました。症状はスリープに入らずモニターだけ電源が落ちて、PCの電源は入ったままという感じです。昔から悪い噂が絶えないG Hubですが、自分には全く問題がなかったのに今更やってきました。
解決方法がredditに2つ書いてあり、最もシンプルな方法 があったので試してみたら解決しました。
原因はおそらく、G Hubの常駐プロセスlghub_agent.exeが、Windowsに対して「スリープさせないでほしい」というリクエストを出したままになることが問題のようです。
なので、そのリクエストを無視するようにWindows側に設定してあげます。
直し方
キーボードで Win + S を押して検索ボックスを出し、「cmd」と入力します。
検索結果に出てきた「コマンドプロンプト」を右クリックして、「管理者として実行」をクリックします。
開いたコマンドプロンプトに、以下をそのままコピー&ペーストしてEnterキーを押します。
powercfg /requestsoverride process lghub_agent.exe execution awaymodeこのコマンドは、実行しても特に何も表示されないです。次の入力待ちの行 C:\WINDOWS\system32> のような表示が出てくれば成功です。
この設定は一度実行すればPCを再起動しても効き続けるので、毎回コマンドを打ち直す必要はありません。
同じコマンドプロンプトで以下を実行すると現在有効になっている設定の一覧が表示されます。
powercfg /requestsoverride[SERVICE]
[PROCESS]
lghub_agent.exe AWAYMODE EXECUTION
[DRIVER]こんな感じに表示されれば設定は反映されています。
あとは実際に一度スリープさせてみて、正常に復帰せず眠ったままになるか確認してみてください。
直らなかった場合
G Hubが別の種類のリクエストでスリープを妨げているケースがありるようで、その場合は以下のコマンドを実行してみてください。
powercfg /requestsoverride process lghub_agent.exe system display awaymode executionそれでも改善しない場合は、G Hubのプロセスをタスクスケジューラでスリープ時に自動終了・復帰時に自動再起動させる、という少し手間のかかる代替策もあります。
https://www.reddit.com/r/LogitechG/comments/kv94at/comment/gmdot2h/
一応こっちの代替策も試したところ、スリープのイベントIDが異なっていたのでメモしておきます。
スリープ時のID:42
スリープ復帰のID:107
元に戻したい場合
この設定を取り消したくなったら、管理者権限のコマンドプロンプトで以下を実行してください。
powercfg /requestsoverride process lghub_agent.exe私の環境ではこれで直りましたが、全員がこの方法で直るかは分からないので、あくまで一例として参考にしてもらえたらと思います。

コメント
※コメントは管理者が承認するまで表示されません