The MajorUpgrade tag is probably the easiest way to support upgrades. -----Original Message----- From: nkshirsagar [mailto:nkshirsa...@gmail.com] Sent: September 24, 2013 08:34 To: wix-users@lists.sourceforge.net Subject: [WiX-users] Need some help with upgrade support in first version of MSI
I'm releasing a version 1.0 MSI this week and need to support upgrades since the next version should recognise the earlier installation, and retain one of the files installed in this msi without overwriting it. What changes would I need at the minimum in this version so that the future upgrades are possible with the requirement of retaining the one file ? I'm pasting my wxs file below for reference .. I need to retain the clusterinfo.bin file in the future upgrade .. Help !! <?xml version="1.0" encoding="UTF-8"?> <Wix xmlns="http://schemas.microsoft.com/wix/2006/wi"> <Product Id="*" Name="SolidFire Hardware Provider" Language="1033" Version="1.0.0.0" Manufacturer="SolidFire" UpgradeCode="0c60967f-f184-4b8b-a96a-b1caa4a8879e"> <Package InstallerVersion="405" Compressed="yes" InstallScope="perMachine" /> <Condition Message= "You need to be an administrator to install this product."> Privileged </Condition> <MajorUpgrade DowngradeErrorMessage="A newer version of [ProductName] is already installed." /> <MediaTemplate EmbedCab='yes'/> <PropertyRef Id="NETFRAMEWORK45"/> <Condition Message ="This application installs only on Windows Server 2012 and Windows Server 2008 R2"> </Condition> <Feature Id="ProductFeature" Title="InstallProvider" Level="1"> <ComponentGroupRef Id="ProductComponents" /> </Feature> <Feature Id="VCRedistcrt" Title="Visual C++ Runtime" AllowAdvertise="no" Display="hidden" Level="1"> <MergeRef Id="VCRedistcrt"/> </Feature> <Feature Id="VCRedist" Title="Visual C++ Runtime" AllowAdvertise="no" Display="hidden" Level="1"> <MergeRef Id="VCRedistatl"/> </Feature> <UI> <Publish Dialog="ExitDialog" Control="Finish" Event="DoAction" Value="LaunchApplication">WIXUI_EXITDIALOGOPTIONALCHECKBOX = 1 and NOT Installed</Publish> </UI> <Property Id="WIXUI_INSTALLDIR" Value="INSTALLFOLDER" ></Property> <Property Id="WIXUI_EXITDIALOGOPTIONALCHECKBOXTEXT" Value="Launch Config Utility" /> <Property Id="WixShellExecTarget" Value="[#configutility]" /> <CustomAction Id="LaunchApplication" BinaryKey="WixCA" DllEntry="WixShellExec" Impersonate="yes" /> <UIRef Id="WixUI_InstallDir"/> <InstallExecuteSequence> <Custom Action="RunInstallScript" After="InstallFiles" >NOT Installed</Custom> </InstallExecuteSequence> <InstallExecuteSequence> <Custom Action='BeforeUninstall' Before='InstallValidate'>Installed AND (NOT REINSTALL)</Custom> </InstallExecuteSequence> <CustomAction Id="RunInstallScript" ExeCommand="cmd /c install-solidfireprovider.cmd > install.log" Directory="INSTALLFOLDER" Execute="deferred" Return="check"/> <CustomAction Id="BeforeUninstall" ExeCommand="cmd /c uninstall-solidfireprovider.cmd > install.log" Directory="INSTALLFOLDER" Execute="immediate" Return="check"/> </Product> <Fragment> <DirectoryRef Id="TARGETDIR"> <Merge Id="VCRedistatl" SourceFile="$(env.CommonProgramFiles)\Merge Modules\Microsoft_VC90_ATL_x86_x64.msm" DiskId="1" Language="0"/> </DirectoryRef> </Fragment> <Fragment> <DirectoryRef Id="TARGETDIR"> <Merge Id="VCRedistcrt" SourceFile="$(env.CommonProgramFiles)\Merge Modules\Microsoft_VC90_CRT_x86_x64.msm" DiskId="1" Language="0"/> </DirectoryRef> </Fragment> <Fragment> <Directory Id="TARGETDIR" Name="SourceDir"> <Directory Id="ProgramFiles64Folder"> <Directory Id="INSTALLFOLDER" Name="SolidFireVSS" /> </Directory> </Directory> </Fragment> <Fragment> <ComponentGroup Id="ProductComponents" Directory="INSTALLFOLDER"> <Component Id="ProductComponent"> <File Id="restinterfacedll.dll" Source="..\x64\$(var.build)\RESTInterfacelib.dll"></File> </Component> <Component Id="vssdll"> <File Id="vsssolidfireprovider.dll" Source="..\x64\$(var.build)\vsssolidfireprovider.dll" ></File> </Component> <Component Id="installscript"> <File Id="installscript" Source="install-solidfireprovider.cmd"></File> </Component> <Component Id="uninstallscript"> <File Id="uninstallscript" Source="uninstall-solidfireprovider.cmd"></File> </Component> <Component Id="registerprovider"> <File Id="registerprovider" Source="register_app.vbs"></File> </Component> <Component Id="vshadow"> <File Id="vshadow" Source="vshadow.exe"></File> </Component> <Component Id="clusterinfo"> <File Id="clusterinfo" Source="clusterinfo.bin"></File> </Component> <Component Id="installlog"> <File Id="install.log" Source="install.log"></File> </Component> <Component Id="configutility"> <File Id="configutility" Source="..\configutility\bin\x64\Release\SolidFireConfigUtility.exe"></File> </Component> </ComponentGroup> </Fragment> </Wix> -- View this message in context: http://windows-installer-xml-wix-toolset.687559.n2.nabble.com/Need-some-help-with-upgrade-support-in-first-version-of-MSI-tp7589170.html Sent from the wix-users mailing list archive at Nabble.com. ------------------------------------------------------------------------------ October Webinars: Code for Performance Free Intel webinars can help you accelerate application performance. Explore tips for MPI, OpenMP, advanced profiling, and more. Get the most from the latest Intel processors and coprocessors. See abstracts and register > http://pubads.g.doubleclick.net/gampad/clk?id=60133471&iu=/4140/ostg.clktrk _______________________________________________ WiX-users mailing list WiX-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/wix-users ------------------------------------------------------------------------------ October Webinars: Code for Performance Free Intel webinars can help you accelerate application performance. Explore tips for MPI, OpenMP, advanced profiling, and more. Get the most from the latest Intel processors and coprocessors. See abstracts and register > http://pubads.g.doubleclick.net/gampad/clk?id=60133471&iu=/4140/ostg.clktrk _______________________________________________ WiX-users mailing list WiX-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/wix-users