Advertisement
Guest User

Untitled

a guest
Nov 26th, 2014
125
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.61 KB | None | 0 0
  1. get-winevent | where {$_.timecreated -ge (get-date) - (new-timespan -hour 1)}
  2.  
  3. <QueryList>
  4. <Query Id="0" Path="System">
  5. <Select Path="System">*[System[Provider[@Name='Service Control Manager'] and (Level=4 or Level=0) and (band(Keywords,36028797018963968)) and (EventID=7036)]]
  6. and
  7. *[EventData[
  8. Data[@Name="param1"]="Portable Device Enumerator Service" and
  9. Data[@Name="param2"]="running"
  10. ]
  11. ]
  12. </Select>
  13. </Query>
  14. </QueryList>
  15.  
  16. #Requires -version 2.0
  17. Register-WmiEvent -Class win32_VolumeChangeEvent -SourceIdentifier volumeChange
  18. write-host (get-date -format s) " Beginning script..."
  19. do{
  20. $newEvent = Wait-Event -SourceIdentifier volumeChange
  21. $eventType = $newEvent.SourceEventArgs.NewEvent.EventType
  22. $eventTypeName = switch($eventType)
  23. {
  24. 1 {"Configuration changed"}
  25. 2 {"Device arrival"}
  26. 3 {"Device removal"}
  27. 4 {"docking"}
  28. }
  29. write-host (get-date -format s) " Event detected = " $eventTypeName
  30. if ($eventType -eq 2)
  31. {
  32. $driveLetter = $newEvent.SourceEventArgs.NewEvent.DriveName
  33. $driveLabel = ([wmi]"Win32_LogicalDisk='$driveLetter'").VolumeName
  34. write-host (get-date -format s) " Drive name = " $driveLetter
  35. write-host (get-date -format s) " Drive label = " $driveLabel
  36. # Execute process if drive matches specified condition(s)
  37. if ($driveLetter -eq 'Z:' -and $driveLabel -eq 'Mirror')
  38. {
  39. write-host (get-date -format s) " Starting task in 3 seconds..."
  40. start-sleep -seconds 3
  41. start-process "Z:sync.bat"
  42. }
  43. }
  44. Remove-Event -SourceIdentifier volumeChange
  45. } while (1-eq1) #Loop until next event
  46. Unregister-Event -SourceIdentifier volumeChange
  47.  
  48. if ($driveLetter -eq 'Z:' -and $driveLabel -eq 'Mirror')
  49.  
  50. start-process "Z:sync.bat"
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement