Run a script when Windows resumes from suspend/hibernate state?
Solution 1
In windows 7, you can do this with a scheduled task. Setup a batch script to do the actions you want and then create a task with one of the following triggers:
- On workstation unlock - Ignores first log on, but will start after unlock.
- On connection to user session - Every log on, can be local or remote connection.
- On an event - In the system log, the "Power-Troubleshooter" Source will log an event code of 1 when you wake up from a sleep state.
I have not tested these to make sure that they work as expected, but I have used "On workstation lock" with high amount of success. From what I remember of scheduled tasks in XP, it only has "When I log on".
Hope this helps
Solution 2
Using Win32_PowerManagementEvent? I just googled it and found the following script (no warranty;).
Set oShell = CreateObject("WScript.Shell")
Set colMonitoredEvents = GetObject("winmgmts:")._
ExecNotificationQuery("Select * from Win32_PowerManagementEvent")
Do
Set objLatestEvent = colMonitoredEvents.NextEvent
Select Case objLatestEvent.EventType
Case 4
oShell.Run "Calc.exe", 1, False
MsgBox "Entering suspend, Calc started", _
vbInformation + vbSystemModal, "Suspend"
Case 7
oShell.Run "Notepad.exe", 1, False
MsgBox "Resuming from suspend, notepad started", _
vbInformation + vbSystemModal, "Suspend"
Case 11
MsgBox "OEM Event happened, OEMEventCode = " _
& strLatestEvent.OEMEventCode
Case 18
MsgBox "Resume Automatic happened"
End Select
Loop
Solution 3
Add a scheduled task with trigger: on workstation unlock. It works, I run it after wake up from sleep. Om my Windows 2008R2 box the audio service needs to be restarted, otherwise sometimes it uses 100% of 1 cpu.
Related videos on Youtube
StackHub
Updated on September 18, 2022Comments
-
StackHub almost 2 years
Is there a way to have Windows (XP, Vista and 7) run a script when a machine returns from hibernate/suspend mode? It would be okay with me if the script runs after the user unlocks a locked session after their machine resumes.
I have a service that needs to be kicked when I a machine resumes in order to get it to run properly on resume.
-
rymo about 12 yearsNote that "On workstation lock/unlock" trigger options are only shown for "Create Task..." and not "Create Basic Task..."
-
slhck over 11 yearsWhile having a link is nice, could you maybe post the important parts (even the script) here, on-site? This way users won't have to go somewhere else, and in case the blog ever goes down we have a backup.
-
Herb about 7 yearsThe "Power-Troubleshooter" source works also with Win 8.1.
-
e-cloud about 6 yearsThe Power-Troubleshooter doesn't work for me in win 10 pro. The workstation unlock works anyway
-
sms247 over 5 years"On workstation unlock" works for me
-
Alex78191 over 5 yearsEvent code 107 works for me in win 10 pro