Wenn ich einen Powershell-Befehl habe ...
$theEvent=Register-ObjectEvent -InputObject $theWatcher -EventName EventRecordWritten -SourceIdentifier $theId -Action { OnEvent $($args[$ONE]) }
Wenn „OnEvent“ eine definierte Funktion ist, funktioniert das Obige: Wenn das Ereignis ausgelöst wird, ruft die Aktionseinstellung den Rückruf auf und übergibt einen Parameter.
Ich muss jedoch eine Zeichenfolgenvariable mit dem Namen der definierten Funktion übergeben und etwa Folgendes tun ...
$theAction="OnEvent"
$theEvent=Register-ObjectEvent -InputObject $theWatcher -EventName EventRecordWritten -SourceIdentifier $theId -Action { $theAction $($args[$ONE]) }
Wie macht man das? Offensichtlich erstellen die '{' und '}' einen Code-Skriptblock, aber ich bin mir nicht sicher, wie man diesen dazu bringt, die Zeichenfolge '$theAction' auszuwerten und die besagte Variable durch einen Funktionszeiger zu ersetzen? Auf die OnEvent-Funktion zeigen?