Настройка версии InstallShield 2009 проекта InstallScript из IsCmdBld.exe - PullRequest
4 голосов
/ 28 января 2010

Я очень новичок в InstallShield и унаследовал проект InstallScript. Я в основном разобрался со своими проблемами и решил большинство проблем. Однако я хочу автоматически строить этот проект на нашем сервере сборки при каждой сборке нашего продукта. У меня это работает нормально. Однако по какой-то причине я не могу увеличить номер версии.

Я использую команду:

IsCmdBld.exe -P <.ism location><br> -L <some_path_variable>=<some_value><br> -L <some_path_variable2>=<some_value2>

Это работает.

Однако добавление -y 1.2.3, -y "1.2.3", -z Version=1.2.3, -z Version="1.2.3", -z "Version=1.2.3", -z ProductVersion=1.2.3, -z ProductVersion="1.2.3" или -z "ProductVersion=1.2.3". не работает.

Когда я говорю, что это не работает, я имею в виду, что использование полученного установщика не пытается выполнить обновление, как если бы я вручную увеличил строку Version в таблице свойств продукта из InstallShield.

Что-то мне не хватает? Я знаю, что не даю многого, просто надеюсь, что кто-то сталкивался с этой проблемой раньше. Также не работает переключатель -c COMP.

Любые мысли приветствуются.

Ответы [ 2 ]

7 голосов
/ 04 февраля 2010

Я полагаю, IsCmdBld поддерживает только передачу ProductVersion свойств для проектов MSI , но не для проектов InstallScript . Я считаю, что вам нужно сделать что-то подобное до звонка IsCmdBld:

set project = CreateObject("ISWiAuto15.ISWiProject") 
project.OpenProject "C:\test.ism"
project.ProductVersion = "2.0.0"
project.CloseProject
set project = nothing

В качестве альтернативы вы можете сохранить тип проекта в формате XML и использовать XPath / XPoke для обновления ProductVersion в таблице Property. Синтаксис немного страшен из-за DTD, но это можно сделать.

4 голосов
/ 16 августа 2012

Это старый вопрос, но я наконец-то смог выяснить, как заставить его работать из командной строки, поэтому я решил поделиться им. Я создал переменную пути (VersionNumber в примере ниже) в проекте и установил версию продукта для этой переменной пути в разделе «Общая информация».

Затем вы можете установить его в командной строке, используя флаг -l.

ISCmdBld.exe -p project.ism -l VersionNumber=1.1.0
...