Я пытаюсь создать скрипт powershell, который удалит все версии программы в нашей студии.
Я посмотрел реестр и увидел, что у нас установлено 3 строки программы. наши студийные компьютеры
{D4BE10F2-3E2D-4120-863A-765623D53264}
{77067FD9-800C-48B4-803D-569642ADABC5}
{1DB1AEB7-EDBD-4BB1-87DB-26C72576DA42}
Я создал тестовый сценарий:
msiexec.exe /x{D4BE10F2-3E2D-4120-863A-765623D53264} /q
и использовал его на компьютере, это сработало, и эта версия программы была удалена.
Я хочу создать сценарий, который будет циклически повторять все 3 строки и «Успех» на правильной, поскольку я не знаю, какая машина имеет какую версию без сканирования.
, поэтому я создал `сценарий powershell:
foreach ($guid in '{D4BE10F2-3E2D-4120-863A-765623D53264}',
'{77067FD9-800C-48B4-803D-569642ADABC5}',
'{1DB1AEB7-EDBD-4BB1-87DB-26C72576DA42}') {
$exe = 'C:\Windows\System32\msiexec.exe'
$ps = Start-Process -PassThru -Wait $exe "/x /q"
if ($ps.ExitCode -eq 0) { "Success"; exit 0 }
}
Write-Warning "Uninstallation failed."
exit $ps.ExitCode
Это не работает для меня, так как продолжает возвращаться с ошибкой удаления, я не уверен, что происходит.
Любой совет?