У меня есть скрипт для удаления антивируса McAfee и агента, связанного с ним.
Проблема, с которой я столкнулся, заключается в том, что скрипт предоставляет код выхода слишком рано и не продолжается до конца. Если я запускаю сценарий несколько раз, я получаю желаемый результат, но, поскольку мы пытаемся передать его через PDQ удаленно, нам нужно, чтобы он выполнялся через сценарий и предоставлял код завершения только в конце сценария.
Я новичок в PowerShell, так что, вероятно, есть гораздо лучший и простой способ написания этого сценария, но любой совет будет с благодарностью.
Start-Process -FilePath "msiexec.exe" -ArgumentList "/x {CE15D1B6-19B6-4D4D-8F43-CF5D2C3356FF} REMOVE=ALL REBOOT=R /q"; Write-Host "Uninstalling McAfee VirusScan Enterprise 8.8..."
$version = (Get-WmiObject -class Win32_OperatingSystem).Caption
Write-Host "Detected OS as $version"
if ($version -like '*Windows 7*')
{
Write-Host "Uninstalling McAfee Agent..."
Start-Process -FilePath "C:\Program Files (x86)\McAfee\Common Framework\frminst.exe" -ArgumentList "/forceuninstall"
}
elseif ($version -like '*Windows 10*')
{
Write-Host "Unmanaging McAfee Agent for Uninstall Process.."
Start-Process -FilePath "C:\Program Files\McAfee\Agent\maconfig.exe" -ArgumentList "/provision /unmanaged";
Write-Host "Uninstalling McAfee Agent..."
Start-Process -FilePath "C:\Program Files\McAfee\Agent\x86\frminst.exe" -ArgumentList "/forceuninstall"
}
else
{
exit
}