Windows
通過 PID powershell 殺死(關閉)可靠性監控視窗
我正在嘗試創建 Windows 可靠性監視器的程序並在截屏後將其終止。
我無法獲取程序並在截屏之前自動關閉它,因為沒有標識該視窗的程序 ID。
有什麼方法可以通過 PowerShell 關閉可靠性監視器?
$psi = New-object System.Diagnostics.ProcessStartInfo $psi.CreateNoWindow = $false $psi.UseShellExecute = $true $psi.RedirectStandardOutput = $false $psi.RedirectStandardError = $false $psi.FileName = "Perfmon" $psi.Arguments ="/rel" $process = New-Object System.Diagnostics.Process $process.StartInfo = $psi [void]$process.Start() #$output = $process.StandardOutput.ReadToEnd() $process.id Start-Sleep 5
perfmon /rel
啟動perfmon
但最終在資源管理器程序中打開可靠性監視器,因此沒有可以殺死的程序。根據您自己的評論,可靠性監視器沒有您可以使用的命令行報告,我能想到的就是
- 列舉 shell 的視窗
- 找到可靠性監視器
- 退出視窗
在程式碼中
$shell = New-Object -ComObject Shell.Application $window = $shell.Windows() | Where-Object { $_.LocationName -eq "Reliability Monitor" } $window | ForEach-Object { $_.Quit() }