Компьютерный форум OSzone.net  

Компьютерный форум OSzone.net (http://forum.oszone.net/index.php)
-   Автоматическая установка приложений (http://forum.oszone.net/forumdisplay.php?f=61)
-   -   Удаление и установка msi (http://forum.oszone.net/showthread.php?t=184037)

beata08 27-08-2010 22:37 1483223

Удаление и установка msi
 
Есть старая версия программы, которую нужно снести и новая, которую нужно поставить. В виду большого количества серверов, тратится много времени на удаление через "установку и удаление программ" и потом запуск msi. Существует ли способ оптимизации этого процесса, что-то типа батника, чтобы щелкая его, выполнялись эти две операции?

Boa Soft 28-08-2010 13:41 1483427

Ключь запуска деинсталлятора смотрим в ключе реестра HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\{GUID или имя программы} параметр UninstallString

Например, для установленной у меня версии OpenOffice

Ключь реестра будет
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\{DD533DFE-EB4C-489D-A8F7-45AF68891C82}

А параметр удаления MsiExec.exe /X{DD533DFE-EB4C-489D-A8F7-45AF68891C82}

Можно добавить еще и /QN для полной автоматизации

beata08 18-10-2010 16:04 1521564

А как можно забить в батник предварительный поиск ключа удаления по параметру displayname?
Т.е. вместо DD533DFE-EB4C-489D-A8F7-45AF68891C82 нужно подставить переменную, кот нужно проинициализировать предварительно значением ключа из той папки где displayname имеет нужное значение. Просто по гуиду неудобно производить удаление, поскольку при смене версии он меняется, а название приложения нет.

beata08 20-10-2010 11:11 1522922

неужели никто не знает как это сделать?

cameron 21-10-2010 11:44 1523850

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
)
)
)
(с) хабра

yurgers 11-02-2013 13:05 2087793

Проверка установлено ли уже ПО
 
Все привет.

есть необходимость массово удалить ПО со всех ПК.
хотелось бы, не надоедать тем у кого уже оно удалено.
Подскажите как можно узнать установлено ли ПО по его ID, используя скрипты?
А потом бы я его удалил через msiexec.


Время: 12:08.

Время: 12:08.
© OSzone.net 2001-