Показать полную графическую версию : [решено] Установка определенной версии Mozilla Thunderbird
mcintosh55
12-06-2016, 05:29
Привет всем!!!
echo off
set VERSION=45.1
if %PROCESSOR_ARCHITECTURE% == x86 (
set REGISTRY_KEY_NAME="HKLM\SOFTWARE\Mozilla\Mozilla Thunderbird"
) else (
set REGISTRY_KEY_NAME="HKLM\SOFTWARE\Wow6432Node\Mozilla\Mozilla Thunderbird"
)
reg query %REGISTRY_KEY_NAME% /v CurrentVersion | find "%VERSION% (ru)"
if ERRORLEVEL 1 "\\soft\Thunderbird Setup 45.1.0.exe" -ms
В set VERSION=45.1 пишем какую версию хотим установить, при следующей перезагрузки и запуска скрипта из авто запуска скрипт устанавливает по новой приложение. Что Я делаю не так.
Что Я делаю не так. »
Для начала хотелось бы понять, что Вы хотите сделать.
mcintosh55
12-06-2016, 08:45
Для начала хотелось бы понять, что Вы хотите сделать. »
стоит приложение Thunderbird Setup 44 - этот скрипт должен посмотреть в реестре установленную версию и если она не соответствует той которая в переменной set VERSION=45.1 инсталлировать приложение, а если версия в реестре 45.1 то ни чего не делать.
Попробуйте так:
reg query %REGISTRY_KEY_NAME% /v CurrentVersion /s | find "%VERSION% (ru)" && exit/b || "\\soft\Thunderbird Setup 45.1.0.exe" -ms
mcintosh55
12-06-2016, 10:43
Попробуйте так: »
все равно инсталлируется
Я пробую вот эту строку переделать if %PROCESSOR_ARCHITECTURE% == x86
а то выходит фигня какая.
"AMD64" не является внутренней или внешней
командой, исполняемой программой или пакетным файлом.
Во-первых, Вы некорректно определяете разрядность системы (хоть в данном случае это и не влияет на конечный результат). Во-вторых, Вы забыли, что значения параметров, содержащих любые «пробельные» символы, должны быть обрамлены кавычками (а в данном случае — именно так и есть). В-третьих, Вы некорректно производите сравнение: например, при установленной (и уже, кстати, присутствующей на сайте) версии 45.1.1 Ваше сравнение окажется истинным, и будет запущена установка старой версии поверх более новой. Ровно то же произойдёт и при любой более высокой установленной версии — 46.x, 47.x и т.д.
Где Вы хотите, в каких сценариях работы, использовать данный пакетный файл?
mcintosh55
12-06-2016, 11:20
распространения и обновление программы средствами GPO, если просто написать скрипт установка с ключем тихой установки то каждый раз будет инсталлироваться поверх а так хотел решить вопрос, что бы не инсталлировалась только когда новая появиться. Естественно с поправкой скрипта.
set VERSION= пишем новую версию которые скачали с сайта и заменили на шаре exe новым.
mcintosh55
12-06-2016, 11:37
Вы некорректно определяете разрядность системы » - брал с примера http://forum.oszone.net/post-1388293.html
echo off
set VERSION=45.1.1
if "%PROCESSOR_ARCHITECTURE%"=="x86" (
set REGISTRY_KEY_NAME="HKLM\SOFTWARE\Mozilla\Mozilla Thunderbird"
) else (
set REGISTRY_KEY_NAME="HKLM\SOFTWARE\Wow6432Node\Mozilla\Mozilla Thunderbird"
)
reg query %REGISTRY_KEY_NAME% /v CurrentVersion | find "%VERSION% (ru)"
if ERRORLEVEL 1 "\\soft\Thunderbird Setup 45.1.1.exe" -ms
Вот так вроде корректно заработала, главное корректно вносить номер версии установщика (set VERSION) и не забывать заменять файл на шаре.
- брал с примера http://forum.oszone.net/post-1388293.html »
Вы хотите сказать, «хотел взять». Но не взял. Но в данном случае, как я уже писал, сие не важно, поскольку x64-версии приложения всё равно нет.
© OSzone.net 2001-2012
vBulletin v3.6.4, Copyright ©2000-2025, Jelsoft Enterprises Ltd.