$filewatcher = New-Object System.IO.FileSystemWatcher $filewatcher.Path = "C:\Users\Thomas\Documents\Lightburn\" $filewatcher.Filter = "*.*" $filewatcher.IncludeSubdirectories = $false $filewatcher.EnableRaisingEvents = $true $writeaction = { $path = $Event.SourceEventArgs.FullPath $changeType = $Event.SourceEventArgs.ChangeType $size = (Get-Item $path).length/1KB #$logline = "$(Get-Date), $changeType, $path, $size" #Add-content "C:\Users\Thomas\Documents\Lightburn\FileWatcher_log.txt" -value $logline if($size -le 30){ [System.Reflection.Assembly]::LoadWithPartialName('System.Windows.Forms') [System.Windows.Forms.MessageBox]::Show("Attention! Lightburn Save-File changed to $size kb",'WARNING') }else{ #[System.Reflection.Assembly]::LoadWithPartialName('System.Windows.Forms') #[System.Windows.Forms.MessageBox]::Show("Attention! File changed to $size kb",'WARNING') } } Register-ObjectEvent $filewatcher "Created" -Action $writeaction Register-ObjectEvent $filewatcher "Changed" -Action $writeaction Register-ObjectEvent $filewatcher "Deleted" -Action $writeaction Register-ObjectEvent $filewatcher "Renamed" -Action $writeaction while ($true) {sleep 5}