Пожалуйста, смотрите ниже.По какой-то причине я не могу убить никого при запущенном процессе .exe.Случайно я видел, как работает этот сценарий, поэтому я думаю, что происходит что-то еще.
Все, что я вижу, это то, что весь сценарий работал при тестировании, но затем я продвигаю его, чтобы запустить его, просто запуская часть электронной почты,С электронной почтой все в порядке.
Будет ли этот код гарантировать уничтожение процессов, даже если они зависли.
$process = Get-Process -Name "IVR1","IVR2","IVR3"
$IVR1path = "C:\IVR1"
$IVR2path = "C:\IVR2"
$IVR3path = "C:\IVR3"
Get-Process $process -ErrorAction SilentlyContinue
if ($process) {
Get-Process -Name $process | kill -PassThru
Start-Sleep -s 5
cd $IVR1path
Start-Process ".\IVR1.exe"
cd IVR2path
Start-Process ".\IVR2.exe"
cd IVR3path
Start-Process ".\IVR3.exe"
cd ..
cd ..
$From = "IVR1@example.com.au"
$To = "myemail@example.com.au"
$cc = "myemail@example.com.au"
$Subject = "**TEST** - IVR1 has been recovered"
$Body = "The IVR has been successfully recovered"
$SMTPServer = "mail.example.com.au"
Send-MailMessage -From $From -to $To -cc $cc -Subject $Subject -Body $Body -SmtpServer $SMTPServer
}