Передайте переменные командной строки в MSI установщика Windows на основе WiXx - PullRequest
14 голосов
/ 10 июня 2011

Я создаю установщик MSI с WiX и использую WixUI_Advanced. Определение моего ApplicationFolder выглядит следующим образом, следуя совету в другом ответе SO ( Трюки и советы WiX ).

  <Directory Id="TARGETDIR" Name="SourceDir">
     <Directory Id="$(var.PlatformProgramFilesFolder)">
        <Directory Id="APPLICATIONFOLDER" Name="$(var.InstallName)">

Теперь я хочу дать пользователю возможность выполнить установку без вывода сообщений и передать имя ApplicationFolder в пути, либо относительно соответствующей папки с программными файлами, либо абсолютной.

Я знаю, что могу передавать значения общедоступных свойств в командной строке msiexec,, но как мне использовать это в качестве значения для ApplicationFolder и как мне установить его для абсолютных и относительных путей.

1 Ответ

17 голосов
/ 11 июня 2011

Вы просто определяете свойство в командной строке при запуске msiexec:

msiexec /i product.msi APPLICATIONFOLDER="C:\Program Files\Company\Product\"

Файлы будут установлены в каталог "C: \ Program Files \ Company \ Product".

Я бы посоветовал использовать абсолютный путь здесь. Относительный путь может привести к неожиданным результатам.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...