0
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

Windows 11 Homeでスリープからの復帰時にプログラムを実行する方法(の代替案)

Posted at

概要

Windows 11 Home でスリープ復帰時にプログラムを実行する代わりに、アンロック時のプログラム実行を設定しました

トリガー問題

Windows でスリープ復帰時にコマンドを実行するには、タスクスケジューラを使う方法があります。
トリガーとしては以下のイベントが知られています。

  • タスクの開始: イベント時
  • ログ: システム
  • ソース: Power-Troubleshooter または Microsoft-Windows-Power-Troubleshooter
  • イベント ID: 1

しかし Windows 11 Home の場合、Power-Troubleshooter が標準では使えません。そもそも deprecated だという話もあります。

ほかに以下のイベントが使えるという説もあります。実際イベントビューアを見ると来てはいるようですが、タスクスケジューラでうまく取れませんでした。

  • ソース: Kernel-Power
  • イベント ID: 566

代替案

スリープ復帰時にアンロックする設定なら、アンロックをトリガーにできます。

  • タスクの開始: ワークステーション アンロック時

スリープせずにロックだけかかった場合にも実行されて問題なければ、これで代替できます。

今回の使い道

WSLg で、setxkbmap で設定したレイアウトがスリープ復帰時に書き換わってしまうという問題の回避に使いました。以下を入れたバッチファイルを実行しています。

start /min wsl.exe -u hideki /usr/bin/setxkbmap us

すぐ実行するとうまく動かないようなので、「遅延時間を指定する」で最小の30秒間を指定しています。

0
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?