プログラマブル深海魚

目立たないけど華やかに

USO Worker によるスリープ阻害の対処

Windows 10 Version 2004からWindows UpdateのプロセスUSO Workerによりスリープが阻害する不具合があり、powercfgで強制回避しようとしたところ少しハマったのでメモ。
不具合の詳細は以下に。
www.softantenna.com

問題発生時に"powercfg -requests"を実行するとUSO Workerのプロセスが表示されます。

実行:
[PROCESS] \Device\HarddiskVolume4\Windows\System32\MoUsoCoreWorker.exe  
USO Worker  

これを"powercfg -requestsoverride"で無視するようにしたいのですが、カテゴリ名がなぜか和訳されていて("実行")そのまま以下のようにコマンドを打っても反応しない……。

powercfg -requestsoverride PROCESS "\Device\HarddiskVolume4\Windows\System32\MoUsoCoreWorker.exe" 実行  

レジストリ"HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Power\PowerRequestOverride"に情報が保存されるらしいので、他のカテゴリで登録して直接値を書き換えてみることに。
("DISPLAY"は"1"、"SYSTEMは"2"、"AWAYMODE"は"4"らしいので"8"に変更する。) news.mynavi.jp

あらためて"powercfg -requestsoverride"で設定を確認すると、カテゴリ"EXECUTION"で登録されていました。

[PROCESS]  
\Device\HarddiskVolume4\Windows\System32\MoUsoCoreWorker.exe EXECUTION  

ということで、以下のコマンドで登録できるようです。

powercfg -requestsoverride PROCESS "\Device\HarddiskVolume4\Windows\System32\MoUsoCoreWorker.exe" EXECUTION