Приложение VB падает, но процесс продолжает выполняться
У меня есть проблема в среде Citrix, когда на сервере публикуется устаревшее приложение VB. Проблема, с которой я сталкиваюсь, заключается в том, что иногда происходит сбой, но процесс для приложения продолжает выполняться. Основная проблема здесь в том, что мошеннический процесс начинает загружать много процессора.
Могу ли я что-нибудь сделать для мониторинга / очистки этих процессов в автоматическом режиме?
1 ответ
foreach($_ in Get-Process)
{
if($_.ProcessName -eq "notepad" -and $_.Responding -eq $false)
{
Stop-Process $_
}
}
Замените блокнот на имя вашего плохо написанного процесса.
Сохраните этот однострочник в файл *.ps1.
Пусть планировщик заданий запускается каждые несколько минут.
Я не могу точно предсказать, как ведет себя ваш мошеннический процесс. Возможно, свойство Responding процессов все еще может иметь значение true, даже если главное окно исчезло, хотя сам процесс все еще выполняется. Так что вам, возможно, придется поиграть с этим. Возможно, свойство MainWindowTitle изменилось, когда процесс "завис", но все еще работает. Суть в том, что вам нужно выяснить, какое поведение эта вещь отображает, когда она действует, и как вы можете ее обнаружить.