2013-12-23 51 views
1

我有以下维克斯刻录引导程序代码:启动的InstallShield 7从维克斯EXE刻录引导程序

<?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代码使用WIX 3.7编译良好。当运行安装程序,可再发行VS安装罚款,但install.exe程序启动,并试图复制的第一个文件时,它给了我:

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

任何想法,我可以从维克斯推出这款基于InstallShield安装刻录引导程序?

编辑:原来问题是在第二个ExePackage中的Name =“Pack”属性。简单地删除该属性使安装程序工作。我觉得很奇怪,这个属性会有这样的副作用。

回答

0

原来问题出在第二个ExePackage中的Name =“Pack”属性。简单地删除该属性使安装程序工作。我觉得很奇怪,这个属性会有这样的副作用。