Do you have any duplicate GUIDs in your installer? Also, is the
installation path changing when you do the upgrade? (by which I mean, do
those files end up in a different folder on the target machine?)


On 23 May 2013 15:37, Dave Moss <davidm...@omprompt.com> wrote:

> Just for a bit of extra information if I run the bootstrapper install and
> then run just the application msi for the upgrade it works fine so it seems
> to be an issue from running the upgrade through the bootstrapper.
>
> Jacob, the keypaths and component id's remain the same.
>
>
> Dave Moss
> Tactical Team Lead
> OmPrompt
> +44 (0)1235 436014 Direct
> davidm...@omprompt.com
> www.omprompt.com
>
> OmPrompt Limited is registered in England & Wales, registration No.
> 4452522, with registered offices at 67 Innovation Drive, Milton Park,
> Abingdon, Oxfordshire. OX14 4RQ. UK. VAT No. 821339546.
>
> -----Original Message-----
> From: Hoover, Jacob [mailto:jacob.hoo...@greenheck.com]
> Sent: 23 May 2013 15:32
> To: General discussion for Windows Installer XML toolset.
> Subject: Re: [WiX-users] Major upgrade using bootstrapper issue -HELP!!
>
> Is your key path and/or component ids changing with each new installer?
> Open up two versions of your installer in Orca, and for any given file that
> isn't there after the major upgrade compare the component ID's.
>
> -----Original Message-----
> From: Dave Moss [mailto:davidm...@omprompt.com]
> Sent: Thursday, May 23, 2013 4:21 AM
> To: wix-users@lists.sourceforge.net
> Subject: [WiX-users] Major upgrade using bootstrapper issue -HELP!!
>
> Hi,
>
> I am pretty new to the world of WiX but have found it to be a very useful
> tool. I am having the following issue however and after 2 days of googling
> it is driving me nuts.
>
> I have a bootstrapper that install .net 4.0 if required and then installs
> my msipackage.
>
> I opted for the major upgrade everytime when making changes to the files
> installed.  Each of my executable files have their version number updated
> to the current revision number in SVN.  When I install my application the
> first time it installs fine and all the services are started and installed
> and all the required files are there.  When I run the next version of the
> installer (so a major upgrade) it seems to be installing the new msi and
> then uninstalling the old one. At this point all that is left on my machine
> is the service executables and nothing else, all the other files have been
> removed including the .exe.config files rendering the application useless.
>  Any ideas what I am doing wrong, its driving me crazy!!!
>
> Here is my bundle.wxs
> <?xml version="1.0" encoding="UTF-8"?>
> <Wix xmlns="http://schemas.microsoft.com/wix/2006/wi";>
>   <Bundle Name="Document Converters" Version="$(var.Version)"
> Manufacturer="company name" UpgradeCode="UPGRADE-GUID"
> Condition="((VersionNT >= v5.1) AND (ServicePackLevel >= 3)) OR ((VersionNT
> >= v5.2) AND (ServicePackLevel >= 2)) OR (VersionNT >= v6.0)">
>
>
>     <BootstrapperApplicationRef
> Id="WixStandardBootstrapperApplication.HyperlinkLicense" />
>     <WixVariable Id="WixStdbaLogo" Value="Resource\logo.png" />
>     <WixVariable Id="WixStdbaLicenseUrl" Value="" />
>     <Variable Name="InstallFolder" Type="string"
> Value="[WindowsVolume]company name\application" />
>     <Variable Name="LaunchTarget" Value="[InstallFolder]\application.exe"/>
>
>     <Chain>
>       <PackageGroupRef Id="NetFx40Redist" />
>
>       <RollbackBoundary />
>
>       <MsiPackage
>         Id="WIXConverterInstaller"
>         Compressed="yes"
>         SourceFile="$(var.WIXConverterInstaller.TargetPath)"
>         Vital="yes">
>         <MsiProperty Name="INSTALLFOLDER" Value="[InstallFolder]" />
>       </MsiPackage>
>     </Chain>
>   </Bundle>
> </Wix>
>
> Here is my bootstrapper project file.
>
> <?xml version="1.0" encoding="utf-8"?>
> <Project ToolsVersion="4.0" DefaultTargets="Build" xmlns="
> http://schemas.microsoft.com/developer/msbuild/2003";>
>   <PropertyGroup>
>     <Configuration Condition=" '$(Configuration)' == ''
> ">Debug</Configuration>
>     <Platform Condition=" '$(Platform)' == '' ">x86</Platform>
>     <ProductVersion>3.7</ProductVersion>
>     <ProjectGuid>{7ae67f4b-d014-4008-9373-35cb5aeffb36}</ProjectGuid>
>     <SchemaVersion>2.0</SchemaVersion>
>     <OutputName>DocumentConverterInstallerV2.8-B$(BuildNo)</OutputName>
>     <OutputType>Bundle</OutputType>
>     <WixTargetsPath Condition=" '$(WixTargetsPath)' == '' AND
> '$(MSBuildExtensionsPath32)' != ''
> ">$(MSBuildExtensionsPath32)\Microsoft\WiX\v3.x\Wix.targets</WixTargetsPath>
>     <WixTargetsPath Condition=" '$(WixTargetsPath)' == ''
> ">$(MSBuildExtensionsPath)\Microsoft\WiX\v3.x\Wix.targets</WixTargetsPath>
>     <Name>DocumentConverterInstaller</Name>
>     <Version>
>     </Version>
>     <BuildNo Condition=" '$(BuildNo)' == ''">1</BuildNo>
>   </PropertyGroup>
>   <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|x86'
> ">
>     <OutputPath>bin\$(Configuration)\</OutputPath>
>     <IntermediateOutputPath>obj\$(Configuration)\</IntermediateOutputPath>
>     <DefineConstants>Debug</DefineConstants>
>   </PropertyGroup>
>   <PropertyGroup Condition=" '$(Configuration)|$(Platform)' ==
> 'Release|x86' ">
>     <OutputPath>bin\$(Configuration)\</OutputPath>
>     <IntermediateOutputPath>obj\$(Configuration)\</IntermediateOutputPath>
>   </PropertyGroup>
>   <ItemGroup>
>     <Compile Include="Bundle.wxs" />
>   </ItemGroup>
>   <ItemGroup>
>     <WixExtension Include="WixUtilExtension">
>       <HintPath>$(WixExtDir)\WixUtilExtension.dll</HintPath>
>       <Name>WixUtilExtension</Name>
>     </WixExtension>
>     <WixExtension Include="WixNetFxExtension">
>       <HintPath>$(WixExtDir)\WixNetFxExtension.dll</HintPath>
>       <Name>WixNetFxExtension</Name>
>     </WixExtension>
>     <WixExtension Include="WixBalExtension">
>       <HintPath>$(WixExtDir)\WixBalExtension.dll</HintPath>
>       <Name>WixBalExtension</Name>
>     </WixExtension>
>   </ItemGroup>
>   <ItemGroup>
>     <ProjectReference
> Include="..\WIXConverterInstaller\WIXConverterInstaller.wixproj">
>       <Name>WIXConverterInstaller</Name>
>       <Project>{a4305231-d2e0-4e1c-9516-a252cd697195}</Project>
>       <Private>True</Private>
>       <DoNotHarvest>True</DoNotHarvest>
>
> <RefProjectOutputGroups>Binaries;Content;Satellites</RefProjectOutputGroups>
>       <RefTargetDir>INSTALLFOLDER</RefTargetDir>
>     </ProjectReference>
>   </ItemGroup>
>   <ItemGroup>
>     <Folder Include="Resource" />
>   </ItemGroup>
>   <ItemGroup>
>     <Content Include="Resource\logo.png" />
>   </ItemGroup>
>   <Import Project="$(WixTargetsPath)" />
>   <Target Name="BeforeBuild">
>     <PropertyGroup>
>       <DefineConstants>Version=2.8.$(BuildNo).0</DefineConstants>
>     </PropertyGroup>
>   </Target>
>   <!--
>        <Target Name="BeforeBuild">
>        </Target>
>   <Target Name="AfterBuild">
>        </Target>
>        -->
> </Project>
>
> Here is my product.wxs (there is also and appfiles.wxs which is
> autogenerated by heat and referenced in the product.wxs)
>
> <?xml version="1.0" encoding="UTF-8"?>
> <Wix xmlns="http://schemas.microsoft.com/wix/2006/wi";>
>        <Product Id="*" Name="Document Converters" Language="1033"
> Version="$(var.Version)" Manufacturer="OmPrompt"
> UpgradeCode="C50A2027-E77A-43AE-B891-7F0B7FB6389F">
>              <Package Id="*" InstallerVersion="301" Compressed="yes"
> InstallScope="perMachine" Keywords="Installer" Description="Document
> Converter installer" />
>
>              <MajorUpgrade Schedule='afterInstallInitialize'
> DowngradeErrorMessage="A newer version of [ProductName] is already
> installed. Setup will now exit." />
>              <MediaTemplate EmbedCab="yes" />
>
>     <Feature Id="ProductFeature" Title="WIXConverterInstaller" Level="1">
>                     <ComponentGroupRef Id="ServicesExecutables" />
>       <ComponentGroupRef Id="AppFiles" />
>       <ComponentRef Id="ApplicationShortcutDesktop"/>
>       <ComponentRef Id="AppMenuShortcutComponent" />
>              </Feature>
>        </Product>
>
>        <Fragment>
>              <Directory Id="TARGETDIR" Name="SourceDir">
>       <Directory Id="DesktopFolder" Name="Desktop">
>         <Component Id="ApplicationShortcutDesktop"
> Guid="814088EA-67DE-4204-BA61-4468834A6514">
>           <Shortcut Id="ApplicationDesktopShortcut"
>              Name="Converter Controller"
>              Description="Starts the converter controller application"
>              Target="[INSTALLFOLDER]ConverterController.exe"
>              WorkingDirectory="INSTALLFOLDER"/>
>           <RemoveFolder Id="DesktopFolder" On="uninstall"/>
>           <RegistryValue
>             Root="HKCU"
>             Key="Software/OmPrompt/DocumentConverters"
>             Name="installed"
>             Type="integer"
>             Value="1"
>             KeyPath="yes"/>
>         </Component>
>       </Directory>
>       <Directory Id="ProgramMenuFolder">
>         <Directory Id="ShortcutFolder"
>                    Name="Document Converters">
>           <Component Id="AppMenuShortcutComponent"
> Guid="CF36B368-D225-40A4-8AA0-A6248DE86029">
>             <RegistryValue Name="installed"
>                           Type="integer"
>                           Value="1"
>                           KeyPath="yes"
>                           Root="HKCU"
>
> Key="Software/OmPrompt/DocumentConverters/menushortcut"/>
>
>             <Shortcut Id="AppMenuShortcut"
>                          Name="Converter Controller"
>                          Description="Starts the converter controller
> application"
>                          Target="[INSTALLFOLDER]ConverterController.exe"
>                          WorkingDirectory="INSTALLFOLDER"/>
>
>             <RemoveFolder Id="RemoveShorcutFolder"
>                           On="uninstall" />
>           </Component>
>         </Directory>
>       </Directory>
>       <Directory Id="INSTALLFOLDER" Name="Document Converters" />
>     </Directory>
>        </Fragment>
>
>        <Fragment>
>              <ComponentGroup Id="ServicesExecutables"
> Directory="INSTALLFOLDER">
>       <Component Id="OmpMessageServerService"
> Guid="{68C84145-94FD-4150-823A-E24BF4B24565}">
>         <CreateFolder />
>         <File Id="OmpMessageServerExecutable" KeyPath="yes"
>           Source="$(var.BasePath)\OmpMessageServer.exe" />
>         <ServiceInstall Id="OmpMessageServerServiceInstaller"
>           Type="ownProcess"
>           Vital="yes"
>           Name="OmpMessageServerService"
>           DisplayName="OmpMessageServer"
>           Description="Service to control the message flows between
> ConverterController and the converters."
>           Start="auto"
>           Account="LocalSystem"
>           ErrorControl="ignore"
>           Interactive="yes" />
>         <ServiceControl Id="StartOmpMessageServerService"
>           Start="install"
>           Stop="both"
>           Remove="uninstall"
>           Name="OmpMessageServerService"
>           Wait="yes" />
>       </Component>
>       <Component Id="OmpCSVtoDOCService"
> Guid="{B3036364-D4B0-406F-8D75-B2C932589C5E}">
>         <CreateFolder />
>         <File Id="OmpCSVtoDOCExecutable" KeyPath="yes"
>           Source="$(var.BasePath)\OmpCSVtoDOC.exe" />
>         <ServiceInstall Id="OmpCSVtoDOCServiceInstaller"
>           Type="ownProcess"
>           Vital="yes"
>           Name="OmpCSVtoDOCService"
>           DisplayName="OmpCSVtoDOC"
>           Description="The CSV to DOC Converter."
>           Start="auto"
>           Account="LocalSystem"
>           ErrorControl="ignore"
>           Interactive="yes" />
>         <ServiceControl Id="StartOmpCSVtoDOCService"
>           Start="install"
>           Stop="both"
>           Remove="uninstall"
>           Name="OmpCSVtoDOCService"
>           Wait="yes" />
>       </Component>
>       <Component Id="OmpCSVtoXLSService"
> Guid="{F7F435DA-413B-474A-B1AB-9D662E5F6E6B}">
>         <CreateFolder />
>         <File Id="OmpCSVtoXLSExecutable" KeyPath="yes"
>           Source="$(var.BasePath)\OmpCSVtoXLS.exe" />
>         <ServiceInstall Id="OmpCSVtoXLSServiceInstaller"
>           Type="ownProcess"
>           Vital="yes"
>           Name="OmpCSVtoXLSService"
>           DisplayName="OmpCSVtoXLS"
>           Description="The CSV to XLS converter."
>           Start="auto"
>           Account="LocalSystem"
>           ErrorControl="ignore"
>           Interactive="yes" />
>         <ServiceControl Id="StartOmpCSVtoXLSService"
>           Start="install"
>           Stop="both"
>           Remove="uninstall"
>           Name="OmpCSVtoXLSService"
>           Wait="yes" />
>       </Component>
>       <Component Id="OmpDOCtoTXTService"
> Guid="{F5F87BF3-0F29-40F2-A135-E77AEC887CE6}">
>         <CreateFolder />
>         <File Id="OmpDOCtoTXTExecutable" KeyPath="yes"
>           Source="$(var.BasePath)\OmpDOCtoTXT.exe" />
>         <ServiceInstall Id="OmpDOCtoTXTServiceInstaller"
>           Type="ownProcess"
>           Vital="yes"
>           Name="OmpDOCtoTXTService"
>           DisplayName="OmpDOCtoTXT"
>           Description="The DOC to TXT converter."
>           Start="auto"
>           Account="LocalSystem"
>           ErrorControl="ignore"
>           Interactive="yes" />
>         <ServiceControl Id="StartOmpDOCtoTXTService"
>           Start="install"
>           Stop="both"
>           Remove="uninstall"
>           Name="OmpDOCtoTXTService"
>           Wait="yes" />
>       </Component>
>       <Component Id="OmpPDFtoTXTService"
> Guid="{4A41D81B-19EA-4646-A926-EB4037CB080B}">
>         <CreateFolder />
>         <File Id="OmpPDFtoTXTExecutable" KeyPath="yes"
>           Source="$(var.BasePath)\OmpPDFtoTXT.exe" />
>         <ServiceInstall Id="OmpPDFtoTXTServiceInstaller"
>           Type="ownProcess"
>           Vital="yes"
>           Name="OmpPDFtoTXTService"
>           DisplayName="OmpPDFtoTXT"
>           Description="The PDF to TXT converter."
>           Start="auto"
>           Account="LocalSystem"
>           ErrorControl="ignore"
>           Interactive="yes" />
>         <ServiceControl Id="StartOmpPDFtoTXTService"
>           Start="install"
>           Stop="both"
>           Remove="uninstall"
>           Name="OmpPDFtoTXTService"
>           Wait="yes" />
>       </Component>
>       <Component Id="OmpPrintService"
> Guid="{BAA3F918-4F3D-49F4-9DB3-D5547E5E29F1}">
>         <CreateFolder />
>         <File Id="OmpPrintExecutable" KeyPath="yes"
>           Source="$(var.BasePath)\OmpPrint.exe" />
>         <ServiceInstall Id="OmpPrintServiceInstaller"
>           Type="ownProcess"
>           Vital="yes"
>           Name="OmpPrintService"
>           DisplayName="OmpPrint"
>           Description="The print converter."
>           Start="auto"
>           Account="LocalSystem"
>           ErrorControl="ignore"
>           Interactive="yes" />
>         <ServiceControl Id="StartOmpPrintService"
>           Start="install"
>           Stop="both"
>           Remove="uninstall"
>           Name="OmpPrintService"
>           Wait="yes" />
>       </Component>
>       <Component Id="OmpXLStoCSVService"
> Guid="{AA0CC97B-3A3C-4A8A-A132-348BC8AE474A}">
>         <CreateFolder />
>         <File Id="OmpXLStoCSVExecutable" KeyPath="yes"
>           Source="$(var.BasePath)\OmpXLStoCSV.exe" />
>         <ServiceInstall Id="OmpXLStoCSVServiceInstaller"
>           Type="ownProcess"
>           Vital="yes"
>           Name="OmpXLStoCSVService"
>           DisplayName="OmpXLStoCSV"
>           Description="The XLS to CSV converter."
>           Start="auto"
>           Account="LocalSystem"
>           ErrorControl="ignore"
>           Interactive="yes" />
>         <ServiceControl Id="StartOmpXLStoCSVService"
>           Start="install"
>           Stop="both"
>           Remove="uninstall"
>           Name="OmpXLStoCSVService"
>           Wait="yes" />
>       </Component>
>       <Component Id="OmpXMLtoPDFService"
> Guid="{AE5B5080-C149-4C6C-BCE5-AC4A8283D0BA}">
>         <CreateFolder />
>         <File Id="OmpXMLtoPDFExecutable" KeyPath="yes"
>           Source="$(var.BasePath)\OmpXMLtoPDF.exe" />
>         <ServiceInstall Id="OmpXMLtoPDFServiceInstaller"
>           Type="ownProcess"
>           Vital="yes"
>           Name="OmpXMLtoPDFService"
>           DisplayName="OmpXMLtoPDF"
>           Description="The XML to PDF converter."
>           Start="auto"
>           Account="LocalSystem"
>           ErrorControl="ignore"
>           Interactive="yes" />
>         <ServiceControl Id="StartOmpXMLtoPDFService"
>           Start="install"
>           Stop="both"
>           Remove="uninstall"
>           Name="OmpXMLtoPDFService"
>           Wait="yes" />
>       </Component>
>     </ComponentGroup>
>        </Fragment>
> </Wix>
>
> Here is my application WiX project
>
> <?xml version="1.0" encoding="utf-8"?>
> <Project ToolsVersion="4.0" DefaultTargets="Build" xmlns="
> http://schemas.microsoft.com/developer/msbuild/2003";>
>   <PropertyGroup>
>     <Configuration Condition=" '$(Configuration)' == ''
> ">Debug</Configuration>
>     <Platform Condition=" '$(Platform)' == '' ">x86</Platform>
>     <ProductVersion>3.7</ProductVersion>
>     <ProjectGuid>{a4305231-d2e0-4e1c-9516-a252cd697195}</ProjectGuid>
>     <SchemaVersion>2.0</SchemaVersion>
>     <OutputName>WIXConverterInstaller</OutputName>
>     <OutputType>Package</OutputType>
>     <WixTargetsPath Condition=" '$(WixTargetsPath)' == '' AND
> '$(MSBuildExtensionsPath32)' != ''
> ">$(MSBuildExtensionsPath32)\Microsoft\WiX\v3.x\Wix.targets</WixTargetsPath>
>     <WixTargetsPath Condition=" '$(WixTargetsPath)' == ''
> ">$(MSBuildExtensionsPath)\Microsoft\WiX\v3.x\Wix.targets</WixTargetsPath>
>     <SccProjectName>Svn</SccProjectName>
>     <SccProvider>SubversionScc</SccProvider>
>     <SccAuxPath>Svn</SccAuxPath>
>     <SccLocalPath>Svn</SccLocalPath>
>     <Version>
>     </Version>
>     <BuildNo Condition=" '$(BuildNo)' == ''">1</BuildNo>
>   </PropertyGroup>
>   <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|x86'
> ">
>     <OutputPath>bin\$(Configuration)\</OutputPath>
>     <IntermediateOutputPath>obj\$(Configuration)\</IntermediateOutputPath>
>     <DefineConstants>Debug</DefineConstants>
>     <WixVariables>
>     </WixVariables>
>   </PropertyGroup>
>   <PropertyGroup Condition=" '$(Configuration)|$(Platform)' ==
> 'Release|x86' ">
>     <OutputPath>bin\$(Configuration)\</OutputPath>
>     <IntermediateOutputPath>obj\$(Configuration)\</IntermediateOutputPath>
>   </PropertyGroup>
>   <ItemGroup>
>     <Compile Include="Product.wxs" />
>     <Compile Include="AppFiles.wxs" />
>   </ItemGroup>
>   <ItemGroup>
>     <Content Include="AppFilesTransform.xslt" />
>   </ItemGroup>
>   <Import Project="$(WixTargetsPath)" />
>   <Target Name="BeforeBuild">
>     <PropertyGroup>
>
> <DefineConstants>BasePath=$(SolutionDir)BuildFiles\;Version=2.8.$(BuildNo).0</DefineConstants>
>     </PropertyGroup>
>     <HeatDirectory OutputFile="AppFiles-temp.xml"
> Directory="$(SolutionDir)BuildFiles\" DirectoryRefId="INSTALLFOLDER"
> ComponentGroupName="AppFiles" SuppressCom="true" SuppressFragments="true"
> SuppressRegistry="true" SuppressRootDirectory="true"
> AutoGenerateGuids="false" GenerateGuidsNow="true" ToolPath="$(WixToolPath)"
> PreprocessorVariable="var.BasePath" />
>     <XslTransformation XmlInputPaths="AppFiles-temp.xml"
> XslInputPath="AppFilesTransform.xslt" OutputPaths="AppFiles.wxs" />
>   </Target>
>   <Target Name="AfterBuild">
>   </Target>
>   <PropertyGroup>
>     <PreBuildEvent />
>   </PropertyGroup>
> </Project>
>
> I use a transform on the heat generated file to remove my service
> executables as they are defined in the product.wxs
>
> If anyone can help me resolve this I will be eternally grateful, if you
> need to see logs from the upgrade install just let me know.
>
> Thanks in advance
>
> Dave Moss
>
>
> ------------------------------------------------------------------------------
> Try New Relic Now & We'll Send You this Cool Shirt New Relic is the only
> SaaS-based application performance monitoring service that delivers
> powerful full stack analytics. Optimize and monitor your browser, app, &
> servers with just a few lines of code. Try New Relic and get this awesome
> Nerd Life shirt! http://p.sf.net/sfu/newrelic_d2d_may
> _______________________________________________
> WiX-users mailing list
> WiX-users@lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/wix-users
>
>
> ------------------------------------------------------------------------------
> Try New Relic Now & We'll Send You this Cool Shirt New Relic is the only
> SaaS-based application performance monitoring service that delivers
> powerful full stack analytics. Optimize and monitor your browser, app, &
> servers with just a few lines of code. Try New Relic and get this awesome
> Nerd Life shirt! http://p.sf.net/sfu/newrelic_d2d_may
> _______________________________________________
> WiX-users mailing list
> WiX-users@lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/wix-users
>
>
> ------------------------------------------------------------------------------
> Try New Relic Now & We'll Send You this Cool Shirt
> New Relic is the only SaaS-based application performance monitoring service
> that delivers powerful full stack analytics. Optimize and monitor your
> browser, app, & servers with just a few lines of code. Try New Relic
> and get this awesome Nerd Life shirt! http://p.sf.net/sfu/newrelic_d2d_may
> _______________________________________________
> WiX-users mailing list
> WiX-users@lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/wix-users
>
------------------------------------------------------------------------------
Try New Relic Now & We'll Send You this Cool Shirt
New Relic is the only SaaS-based application performance monitoring service 
that delivers powerful full stack analytics. Optimize and monitor your
browser, app, & servers with just a few lines of code. Try New Relic
and get this awesome Nerd Life shirt! http://p.sf.net/sfu/newrelic_d2d_may
_______________________________________________
WiX-users mailing list
WiX-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/wix-users

Reply via email to