Скрипт Powershell для поиска и удаления 7-Zip со всех жестких дисков - PullRequest
0 голосов
/ 03 июля 2019

Я пытаюсь удалить программное обеспечение 7-Zip со всех компьютеров Windows, но если я использую стандартный процесс, использующий его утилиту удаления, выполняющую свою работу, но большинство людей установили его на разные диски и скопировали папку в нескольких местах, что не разрешить стандартному процессу удалить его, и теперь есть несколько уязвимостей, связанных с ними.

Следовательно, ищем какой-нибудь скрипт prowershell, который может искать все фиксированные диски по папке 7-Zip & run, что-то вроде% found path% \ 7-Zip \ Uninstall.exe

Буду очень признателен, если вы можете помочь с этим, пожалуйста.

Ответы [ 2 ]

0 голосов
/ 03 июля 2019

Вы можете просто вызвать CimMethod Uninstall, как только вы найдете продукт, используя Get-CimInstance.

Запустите ниже, чтобы найти и удалить любую версию 7-Zip. Не самый быстрый, но запустите его и забудьте.

Get-CimInstance -Class Win32_Product | Where-Object Name -Like '7-zip*' | `
Invoke-CimMethod -MethodName Uninstall
0 голосов
/ 03 июля 2019

Я думаю, что это перевернутый путь к счастью.

Вместо этого найдите, где он установлен, и запустите строку удаления:

Get-ChildItem -Path "HKLM:SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall" 
-Recurse  |  Where {$_.GetValue("DisplayName") -like "*7*zip*"   }
 | ForEach-Object {
 $_.GetValue("DisplayName"); $_.GetValue("UninstallString") ;
 ; Start-Process $uninstall;
}

Это все еще гонка вооружений для уничтожения новых установок, но, по крайней мере, она динамична для каждой машины.

...