ウィモバの日々

Windowsをモバイルする…それがウィモバ(仮)。手のひら端末が好きです

スリープ挙動検出アプリを作ってみたけど何故かGPD Pocketでは検出できない

どうにもGPD Pocketのスリープの挙動が怪しいので、スリープの挙動検出アプリっぽいものを作ってみた。
http://island.geocities.jp/flcl_ride_on_shooting_star/soft/SleepChecker.zip

仕組み自体は簡単なもので、.NetアプリでPowerModeChangedイベントを登録して検出時にログ表示しているだけ。
Windows10の複数のデスクトップPCや、同じくWin10のレッツノート(CF-N10)では
スリープした際とレジュームした際、電源↔バッテリ変更時(ノートのみ)に状態を検出してログが取れた。

少なくとも、一般的なPCでは問題なく取得出来ているようにみえる。


ただ、このアプリをGPD Pocketで動かしてみると、一番最初の起動ログしか取れず
手動スリープでも放置でのスリープでも、状態変化を検出出来なかった。
ちなみに、スリープから復帰後にコマンドプロンプト(要管理者権限)で確認してみたら下記のような状態だった。


powercfg /requests・・・スリープを妨げる要因は無し
powercfg /lastwake・・・スリープ状態の解除履歴カウント - 0
powercfg /sleepstudy・・・出力したログファイルを見るとActiveからStandbyに状態遷移しているようには見えるが・・・

さらに管理ツールのシステムログを見ると、こちらもスリープを認識しているようにはみえる。
しかし、lastwakeカウントが0でUSB Composite Deviceなり電源ボタンといった要因が上がってきていないのが妙に感じる。
他のPCと何が違うんだろう(困惑)