WIX: Изменить значение переменной уровня пакета из цепочки мсек - PullRequest
0 голосов
/ 27 июня 2019

У меня объявлен пакет, который устанавливает 3 приложения одно за другим.

1) База данных 2) Веб-службы 3) Веб-приложение

На шаге 1 - я вызываю MSI, которыйустанавливает базу данных из сценариев. Здесь я взял Сервер, Имя базы данных, Имя пользователя и Пароль.

Я хочу перенести эти данные в ШАГ 3 (который будет вызван после шага 2), т.е. MSI 3, который являетсячасть комплекта.

Мои вопросы -

Как я могу установить переменную уровня пакета PASSED_DATABASE в STEP1?

Как я могу получить к ней доступ в шаге 3?

<Bundle>    
 <Variable Name="PASSED_DATABASE" Type="string"  bal:Overridable="yes" Value="DefaultDatabase" />
    <Chain>
      <PackageGroupRef Id="myApp.Database"></PackageGroupRef>
      <PackageGroupRef Id="myApp.Service"></PackageGroupRef>
      <PackageGroupRef Id="myApp.ApplicationName"></PackageGroupRef>        
    </Chain>
  </Bundle>

<PackageGroup Id="myApp.Database">
  <MsiPackage
    Id="myApp.Database"
    DisplayName="myApp - Database"
    DisplayInternalUI="yes"
    Visible="yes"
    EnableFeatureSelection="yes"
    SourceFile="$(var.myAppDB.Installer.TargetDir)\myAPPDB.msi">
    <MsiProperty Name="PASSED_DATABASE" Value="[PASSED_DATABASE]"/>
  </MsiPackage>
</PackageGroup>

<PackageGroup Id="myApp.Service">
  <MsiPackage
    Id="myApp.Service"
    DisplayName="myApp Service"
    DisplayInternalUI="yes"
    Visible="yes"
    EnableFeatureSelection="yes"
    SourceFile="$(var.myApp.Service.TargetDir)\myApp.Service.msi">
    <MsiProperty Name="PASSED_DATABASE" Value="[PASSED_DATABASE]"/>
  </MsiPackage>
</PackageGroup>

1 Ответ

0 голосов
/ 18 июля 2019

Я нашел возможность хранить данные в реестре и получать к ним доступ через пакет.Это хорошо сработало в моем случае.

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