2016-07-10 29 views
0

Ich erstelle ein Skript, um die Benutzeraktivität im Ordner Downloads zu überwachen. Ich habe mich entschieden, das FileSystemWatcher-Ereignis zum Auslösen und Alarmen zu verwenden.Fortsetzung Ereignis Subskription, nach Skriptausführung Powershell

Dieses Skript erledigt die Aufgabe, funktioniert aber nur, wenn die Instanz der Powershell ausgeführt wird. Sie möchten nicht, dass ein Powershell-Prozess die ganze Zeit ausgeführt wird.

Es gibt eine Möglichkeit, diese Ereignissubskription beizubehalten, nachdem der Prozess geschlossen wurde.

$watcher = New-Object System.IO.FileSystemWatcher 
$watcher.Path = "C:\" 
$watcher.IncludeSubdirectories = $true 
$watcher.EnableRaisingEvents = $true 
Register-ObjectEvent $watcher "Created" -Action { 
[System.Windows.Forms.MessageBox]::Show($eventArgs.FullPath) 
} 
+1

Einführung 'powershell.exe' als eine geplante Aufgabe mit dem' -NoExit' Schalter –

Antwort

0

Marthias hat Recht, Sie können eine Zeitplanaufgabe haben, um Powershell-Prozess immer lebendig zu halten, indem Sie hinzufügen.

auf ein Programm starten PowerShell.exe und fügen Argumente -noexit -noprofile