Если вы назначаете статический тип переменной, вы можете подписаться на статические события.
Например:
$MyStaticType = [MyStaticNamespace.MyStaticClass]
Register-ObjectEvent -InputObject $MyStaticType -EventName MyStaticEvent -Action {Write-Host "Caught a static event"}
Чтобы найти любые статические события, которые может иметь тип, вы можете использовать Get-Member с ключом -Static
[MyStaticNamespace.MyStaticClass] | get-member -static -membertype event
EDIT:
Я заметил, когда пытался получить доступ к событиям [Microsoft.Win32.SystemEvents], что для доступа к сообщениям мне нужно было работать с повышенными привилегиями (в Vista и выше).