Как стать автором
Обновить

Как с помощью командой строки удалить приложение из системы

Время на прочтение1 мин
Количество просмотров6.2K
Автор оригинала: Bill Lin's
Допустим у вас есть приложение, которое было установлено через MSI. И вы знаете только имя приложения (в данном случае, только первую часть названия). Для использования команды MSIEXEC требуется, чтобы вы знали GUID, но все программы имеют разные GUID, более того, даже разные версии программы могут иметь различный GUID. И вот решение, которое придумал Bill Lin's: он перебирает ключи реестра, чтобы получить этот самый GUID, у которого DisplayName начинается с определенного имени.



Ниже приведен пример, который удаляет все установленные приложения, названия которых начинается с «Windows Live ID Sign-in Assistant»
for /f "tokens=7 delims=\" %%i in ('reg query HKLM\Software\Microsoft\Windows\CurrentVersion\Uninstall ^| FIND "{"') do 
(
  for /f "tokens=2,*" %%j in ('reg query HKLM\Software\Microsoft\Windows\CurrentVersion\Uninstall\%%i /v DisplayName') do 
  (
    set dn=%%k
    if "!dn:~0,33!"=="Windows Live ID Sign-in Assistant" 
    (
      echo Uninstalling Windows Live ID Sign-in Assistant
      msiexec /promptrestart /qb /x %%i /L+*v %TEMP%\wlidsvc.log
      if %ERRORLEVEL% NEQ 0 echo Uninstallation failed. Check the log %TEMP%\wlidsvc.log
    )
  )
)
Теги:
Хабы:
Всего голосов 14: ↑7 и ↓70
Комментарии4

Публикации

Истории

Работа

Ближайшие события