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