我声明了一个捆绑包,一个又一个地安装3个应用程序。
1)数据库2)Web服务3)Web应用程序
在步骤1中- 我正在呼叫一个通过脚本安装数据库的MSI。在这里,我已获取服务器,数据库名称,用户名和密码。
我想将这些详细信息转发到STEP 3(将在步骤2之后调用),即MSI 3,它是捆绑软件的一部分。
我的问题是-
如何在STEP1中设置捆绑包级别变量PASSED_DATABASE?
如何在Step3中访问它?
<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>
答案 0 :(得分:0)
我找到了将详细信息存储在注册表中并通过捆绑包进行访问的选项。 就我而言,效果很好。