#Load Assembly and Library Add-Type -AssemblyName PresentationFramework #Check server is reachable and get winevent function Get-RestartEventLogs { param ( $ComputerName = $ComputerNameBox.Text ) if (Test-Connection $ComputerName -Quiet -Count 2) { try { $Logs = Get-EventLog -LogName System -Source user32 -ComputerName $ComputerName -Newest 10 -ErrorAction Stop foreach ($event in $logs) { $TempFileName = [System.IO.Path]::GetTempFileName() $event.Message | Out-File -FilePath $TempFileName $event | Select-Object UserName, TimeWritten, MachineName, @{N='Message'; E={(Get-Content -Path $TempFileName)[0]}} } } catch { [System.Windows.MessageBox]::Show("Cannot retrive event logs from server $ComputerName. Check permissions.", "Server unreachable") } } else { [System.Windows.MessageBox]::Show("Provided Server is not reachable.", "Server unreachable") } } #XAML form designed using Vistual Studio [xml]$Form = @"