[wix-users] Need some help fixing this Burn script...

Mike Franchitti mfranchitti at redshift-tech.com
Wed Mar 20 08:15:10 PDT 2019


Edwin,

Thanks a lot - I am now using the DetectCondition & InstallCondition
properly.

My script is still trying to execute installers in the chain multiple
times. To be specific - it asks me to install Gazepoint, Consensys, etc...
two times during a single run of the burn installer...



On Wed, Mar 20, 2019 at 10:43 AM Edwin Castro <egcastr at gmail.com> wrote:

> Logs are very helpful in determining what the bundle is doing. Here are
> some general comments instead...
>
> I think you use DetectCondition to determine if a package is installed.
>
> I think you use InstallCondition to decide whether to install a package
> that is not installed.
>
> For example, I use DetectCondition to determine if an ExePackage is
> already installed *but* I use InstallCondition to install the 32-bit
> package on a 32-bit OS and the 64-bit package on a 64-bit OS.
>
> MsiPackage can already determine if an MSI is already is installed so you
> probably do not need the RegistrySearch for it. I use InstallCondition with
> MsiPackage to install the 32-bit package on a 32-bit OS and the 64-bit
> package on a 64-bit OS.
>
> --
> Edwin G. Castro
>
>
>
> On Wed, Mar 20, 2019, 06:49 Mike Franchitti via wix-users <
> wix-users at lists.wixtoolset.org> wrote:
>
>> The following script is not working correctly, and I am not sure how to
>> proceed - if someone could take a look and provide some feedback I'd
>> appreciate it...
>>
>> My target is to get this working on Windows 10.
>>
>> Here are the problems I've seen so far:
>>
>>    - The generated .exe tries to run some of the installers listed in the
>>    chain multiple times.
>>    - The Sparkwave installer (which works on it's own) fails to run if
>> it's
>>    placed AFTER the CDM installer with errors related to verifying it's
>> hash.
>>    (If I place the Sparkwave installer BEFORE the CDM installer in the
>> chain
>>    it works correctly)...
>>    - The CDM installer appears to run all the way through, but upon click
>>    the final "finish" button in that installer the Burn script fails
>>    with Error 0x80070001. I think this is related to it's attempt to run
>> the
>>    same installers multiple times...
>>
>> Here is my script:
>>
>> <?xml version="1.0" encoding="UTF-8"?>
>> <Wix xmlns="http://schemas.microsoft.com/wix/2006/wi" xmlns:util="
>> http://schemas.microsoft.com/wix/UtilExtension">
>>   <Bundle Name="Bootstrap" Version="1.0.0.0" Manufacturer="Bootstrap"
>> UpgradeCode="537641ca-e876-4bcb-8d57-c6cdc8940c84">
>>     <BootstrapperApplicationRef
>> Id="WixStandardBootstrapperApplication.RtfLicense" />
>>
>>     <util:FileSearch
>>       Id="SearchForGazepoint"
>>       Path="[ProgramFilesFolder]Gazepoint\Gazepoint\bin\Gazepoint.exe"
>>       Variable="GazepointFound"
>>       Result="exists" />
>>
>>     <util:FileSearch
>>       Id="SearchForConsensys"
>>
>>
>> Path="[ProgramFilesFolder]Shimmer\ConsensysPRO\Consensys_v1.5.0\Consensys.exe"
>>       Variable="ConsensysFound"
>>       Result="exists" />
>>
>>     <util:RegistrySearch
>>       Id="SearchForFTDI"
>>       Root="HKLM"
>>       Key="SYSTEM\CurrentControlSet\Enum\FTDIBUS"
>>       Result="exists"
>>       Variable="FTDIFound"/>
>>
>>     <util:RegistrySearch
>>       Id="SearchForSparkwave"
>>       Root="HKCU"
>>       Key="Software\Spark Neuro\Sparkwave"
>>       Result="exists"
>>       Variable="SparkwaveFound"/>
>>
>>     <Chain>
>>       <PackageGroupRef Id="NetFx472Redist"/>
>>       <ExePackage Id='GazepointControl'
>> SourceFile="../../ExternalSoftware/Gazepoint_5.3.0.exe" Vital='yes'
>> PerMachine='yes' InstallCondition='NOT GazepointFound'/>
>>       <ExePackage Id='Consensys'
>> SourceFile="../../ExternalSoftware/Setup.exe" Vital='yes' PerMachine='yes'
>> InstallCondition='NOT ConsensysFound'/>
>>       <MsiPackage Id='Sparkwave' SourceFile='Sparkwave.msi' Vital='yes'
>> InstallCondition='NOT SparkwaveFound' Visible='yes'
>> DisplayInternalUI='yes'></MsiPackage>
>>       <ExePackage Id='SerialPortDriver'
>> SourceFile="../../ExternalSoftware/CDM21228_Setup.exe" Vital='yes'
>> PerMachine='yes' InstallCondition='NOT FTDIFound'/>
>>     </Chain>
>>   </Bundle>
>> </Wix>
>>
>> ____________________________________________________________________
>> WiX Toolset Users Mailing List provided by FireGiant
>> http://www.firegiant.com/
>>
>>



More information about the wix-users mailing list