Изящное закрытие процесса в удаленном сеансе
В настоящее время я работаю над небольшим скриптом PowerShell для сброса профиля пользователя Outlook на удаленной машине.
Прежде чем можно будет выполнить необходимые действия по профилю, я хочу проверить, работает ли Outlook на удаленной машине, и, если это так, остановить его. Я неНе хочу останавливать процесс, чтобы он мог выполнять необходимую очистку и синхронизацию.
Когда я подключаюсь к машине с правами администратора и выполняю следующие команды:
Enter-PSSession $remoteMachine
$outlookProcess = Get-Process outlook
$outlookProcess.CloseMainWindow()
Я только получаю
False
как "Возвращаемое значение
Убить процесс с помощью:
Stop-Process $outlookProcess
работает.
Процесс, который я пытался закрыть, не был запущен Административным пользователем, с которым я соединяюсь, поэтому сначала я подумал, может быть, яМне не разрешено манипулировать в контексте этого пользователя, но если я делаю то же самое на моем локальном компьютере (запуск процесса с "нормальный" пользователь, а затем с помощью CloseMainWindow () с правами администратора) закрывает процесс без каких-либо проблем.
Итак, мой вопрос: как бы я изящно закрыл этот удаленный процесс?