local $objAsyncContext
$objWMIService = ObjGet("winmgmts:" & "!\\" & @ComputerName & "\root\cimv2")
$Sink = ObjCreate( "WbemScripting.SWbemSink")
ObjEvent($Sink , "SINK_")
$objContext = ObjCreate("WbemScripting.SWbemNamedValueSet")
$objWMIservice.ExecNotificationQueryAsync ($Sink, "SELECT * FROM Win32_PowerManagementEvent",Default, Default, Default, $objContext)
While 1
Sleep(1000)
Wend
Func SINK_OnObjectReady($objObject, $objAsyncContext)
If $objObject.EventType = 7 Then
Run("notepad.exe")
EndIf
EndFunc