Имя пользователя:
Пароль:
 

Показать сообщение отдельно

Ветеран


Сообщения: 508
Благодарности: 140

Профиль | Отправить PM | Цитировать


Немного оффтопика: теперь я плавно перехожу на установку софта через WSUS Package Publisher (бесплатная утилита для распространения ПО через функционал WSUS, крайне рекомендую), поэтому в установщике можно перед установкой msi-пакета "ввернуть" нужный код, который и будет удалять предыдущие версии:

Код: Выделить весь код
@ECHO OFF
REM Закрыть все процессы, которые могут помешать обновлению
taskkill /F /IM 7z.exe /T
taskkill /F /IM 7zFM.exe /T
taskkill /F /IM 7zG.exe /T

REM ============ Удаление 7-zip ============
REM Сохранение в файл идентификаторов (GUID) установленных пакетов 7-zip в формате установщика Windows Installer
SET Query=name like '7-zip 9%%' OR name like '7-zip 4%%'
wmic product where "%Query%" get IdentifyingNumber > "%TEMP%\del7zip_1.txt"

REM Сохранение только GUID пакетов во второй файл
TYPE "%TEMP%\del7zip_1.txt" | FINDSTR {........-....-....-....-............} > "%TEMP%\del7zip_2.txt"

REM Цикл удаления пакетов
FOR /f "tokens=*" %%a IN (%TEMP%\del7zip_2.txt) DO (msiexec /x %%a /norestart /qn)

REM Удаление временных файлов
IF EXIST "%TEMP%\del7zip_1.txt" DEL "%TEMP%\del7zip_1.txt"
IF EXIST "%TEMP%\del7zip_2.txt" DEL "%TEMP%\del7zip_2.txt"

msiexec.exe /i 7z1514-x64.msi TRANSFORMS=7z.mst /qn

Отправлено: 11:16, 25-04-2016 | #13