by Mario Fuchs
17. November 2010 10:46
Eine neue lustige Funktion der PowerShell 2.0 ist das WMI Eventing. Hier können per CmdLet EventConsumer in der WMI Repository erstellt werden. Somit ist eine einfache Überwachung von WMI Instanzen per PowerShell Scripts möglich. Das neue CmdLet Register-WmiEvent ermöglicht die Registrierung von EventConsumern. Das Auslesen der Events bzw. der Target-Instance über
$SourceEvent=$Event.SourceEventArgs.NewEvent
Write-Host " Service : " $SourceEvent.TargetInstance.Service
Write-Host " Device : " $SourceEvent.TargetInstance.Caption
im Action Block als Beispiel der Win32_PnpEntityClass
Die Registrierung erfolgt über
Register-WmiEvent -Query [EventQuery] -Action { ActionBlock }
Als Event-Query kann jede WMI Event-Class verwendet werden (__InstanceCreation|Deletion|ModificationEvent). Ein Code-Snippet ist im Anhang.
usbmon.ps1 (752,00 bytes)
Das Ergebnis wie folgt:
