从WIX Burn引导程序启动InstallShield 7 EXE

时间:2013-12-23 10:39:52

标签: wix installshield burn

我有以下WIX Burn 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 Name="Test" Version="1.0.0.0" Manufacturer="Test" UpgradeCode="cc44096e-23a6-48ab-a1f1-c75648358049">
    <BootstrapperApplicationRef Id="WixStandardBootstrapperApplication.HyperlinkLicense">
        <bal:WixStandardBootstrapperApplication SuppressOptionsUI="yes" LicenseUrl="" LogoFile="Logo.bmp"/>
    </BootstrapperApplicationRef>

    <Variable Name="InstallParameter" bal:Overridable="yes" Type="string" Value="" />

    <Chain>
        <ExePackage Name="VS2012_Redist_x86_exe" SourceFile="..\vcredist_x86_2012.exe" DetectCondition="ExeDetectedVariable" Permanent="yes" InstallCommand='/Q' />
        <ExePackage Name="Pack" SourceFile="..\Install.exe" DetectCondition="ExeDetectedVariable" Permanent="no" InstallCommand='[InstallParameter]' />
    </Chain>
</Bundle>
</Wix>

因此,它首先启动Visual Studio 2012可再发行组件,然后是Install.exe。 Install.exe是使用InstallShield 7(不是基于MSI的)的安装版本。 使用WIX 3.7编译WIX代码。运行安装程序时,VS可再发行组件安装正常,但Install.exe启动,当尝试复制第一个文件时,它给了我:

---------------------------
Component transfer error
---------------------------
Component:  Component1.
File Group: 
File:       
Error:      Catastrophic failure

知道如何从WIX Burn引导程序启动这个基于InstallShield的安装程序吗?

编辑:结果问题是第二个ExePackage中的Name =“Pack”属性。只需删除该属性即可使安装程序正常工作我发现这个属性会产生这样的副作用很奇怪。

1 个答案:

答案 0 :(得分:0)

原来问题在于第二个ExePackage中的Name =“Pack”属性。只需删除该属性即可使安装程序正常工作我发现这个属性会产生这样的副作用很奇怪。