まだログインせずにスリープモードまたは休止状態モードからWindows10ラップトップの電源を入れたときに、自動的に実行したいプログラムがあります。プログラムを実行すると、コマンドプロンプトが表示されます。プログラムをWindowsスタートアップフォルダに入れてみましたが、ラップトップをシャットダウンモードからオンにしたときにのみプログラムが自動的に実行されます。また、タスクスケジューラでタスクを作成して、「イベント時(ログ:システム、ソース:Microsoft-Windows-Power-Troubleshooter、イベントID:1)」や「ワークステーションのロック解除時」などのトリガーを使用してタスクを実行しようとしました。 、ただし、ラップトップをスリープモードまたは休止状態モードからオンにしたときにプログラムが起動しません(プログラムがオンになっているかどうかを確認するためにログインしましたが、オンになりませんでした)。 「OnWake」という名前のトリガーなどはないようです。これを機能させる方法について誰かが何か提案があれば、私はこれを大いに感謝します!
Set colMonitoredEvents = GetObject("winmgmts:")._
ExecNotificationQuery("SELECT * FROM Win32_PowerManagementEvent")
Do
Set strLatestEvent = colMonitoredEvents.NextEvent
If strLatestEvent.EventType = 4 Then
Set objWMIService = GetObject("winmgmts:\\.\root\cimv2")
Set colItems = objWMIService.ExecQuery("Select * From Win32_Process")
For Each objItem in colItems
If objItem.name = "Calculator.exe" then objItem.terminate
Next
ElseIf strLatestEvent.EventType = 7 Then
wscript.sleep 2000
Set WshShell = WScript.CreateObject("WScript.Shell")
WshShell.Run "calc.exe", 1, false
End If
Loop
このスクリプトは、システムが一時停止するのを待ち、実行中の場合は電卓を終了します。再開すると、電卓を再起動します。
スクリプトにsomething.vbsという名前を付けます。ダブルクリックして実行します。見えない。タスクマネージャーでは、wscript.exeと呼ばれます。
ドキュメントについては、 https://docs.Microsoft.com/en-us/windows/win32/cimwin32prov/win32-powermanagementevent を参照してください。