Как передать «место установки» по умолчанию загрузчику RtfLicense?

Я использую стандартный загрузчик rtflicence для установки dotnet перед моим проектом msi в цепочке.

Я заметил, что есть кнопка «Параметры», которая отображает диалоговое окно установки и позволяет пользователю изменить каталог установки по умолчанию.

Мне нужно либо:

  1. Запретите отображение этой кнопки параметров или
  2. Заполните место установки путем по умолчанию и передайте его обратно установщику, если пользователь изменит его.

Я читал, что можно передавать переменные Burn в msipackages из загрузчика, но я не нашел никаких дополнительных подробностей и был бы признателен за указание в правильном направлении.

Спасибо


person adamonstack    schedule 26.10.2012    source источник


Ответы (3)


Чтобы использовать вариант 1, вам нужно будет свернуть собственное приложение BootstrapperApplication и удалить кнопку параметров из меню.

Второй вариант значительно проще в реализации. Загрузчик использует специальную переменную Burn с именем InstallFolder для получения и установки того, что находится в текстовом блоке в этом представлении, которое вы можете назначить внутри элемента Bundle.

<Variable Name="InstallFolder" Type="string" Value="[ProgramFilesFolder]"/>

Константа ProgramFilesFolder установит значение этого текстового блока при запуске программы, и если пользователь перейдет в другой каталог, оно будет сохранено в той же переменной. Чтобы передать его в MSI, в своей цепочке вы передаете InstallFolder с помощью тега MsiProperty (INSTALLLOCATION — это имя свойства в вашем проекте WiX).

<MsiPackage Vital="yes" DisplayName="Your Name" Id="MsiId" SourceFile="path/to/file.msi">
    <MsiProperty Name="INSTALLLOCATION" Value="[InstallFolder]" />
</MsiPackage>
person levarius    schedule 02.11.2012

Я только что обнаружил параметр SuppressOptionsUI, который относится к вашему варианту 1 без развертывания вашего собственного приложения Bootstrapper:

<?xml version="1.0" encoding="UTF-8"?>

<Wix xmlns="http://schemas.microsoft.com/wix/2006/wi"
 xmlns:bal="http://schemas.microsoft.com/wix/BalExtension">

   <Bundle>
      <BootstrapperApplicationRef Id="WixStandardBootstrapperApplication.RtfLicense">
         <bal:WixStandardBootstrapperApplication LicenseFile="..\eula.rtf" SuppressOptionsUI="yes"/>
      </BootstrapperApplicationRef>

      <Chain>
      </Chain>
    </Bundle>
</Wix>
person Jacob    schedule 28.12.2012

Я думаю, вы можете попробовать удалить кнопку параметров, создав тему. Мне не приходилось использовать темы самому, но вот две связанные ссылки SO, которые могут указать вам в этом направлении:

файл темы загрузчика WiX?

Тема для моего установщика WiX

person BryanJ    schedule 28.12.2012