MSDN section on major upgrades http://msdn.microsoft.com/en-us/library/windows/desktop/aa369786%28v=vs.85%29 .aspx
Wix help file How to Guides -> Product upgrades -> Implement a major upgrade in your installer Wix Tutorial http://wix.tramontana.co.hu/tutorial/upgrades-and-modularization Alex Shevchuk's series on Wix http://blogs.technet.com/b/alexshev/archive/2008/02/15/from-msi-to-wix-part-8 -major-upgrade.aspx Bob's blog http://www.joyofsetup.com/2008/12/30/paying-for-upgrades/ There are many more sources of information including this mailing list and blogs of some of the people who contribute to it. It's important to understand the MSI concepts in the MSDN to start with though. -----Original Message----- From: Justin Hull [mailto:justin.h...@assetpoint.com] Sent: 08 November 2011 16:38 To: General discussion for Windows Installer XML toolset. Subject: Re: [WiX-users] Fragments and Patch generation You have a number of options depending on what your constraints are. The easiest upgrade type to write is a major upgrade with an early scheduling of RemoveExistingProducts. It's much more tolerant of mistakes. Could you point me in the right direction for this? I have both Phil Wilson's Windows Installer book and the Wix developer guide, but the section on upgrades is what I'm stuck on. To get past this point in my project is what I am looking for so we can revamp the whole process going forward (I inherited this project). We may look at one file per component, but this is not feasible for this install/upgrade. ----------------------------------------------------------------------------- ------------------- Moving to 1 file per component is another option. That way, the keypath of each component is the file that changes. You can't do this if you've already released because of the rules in what you can do in an upgrade. If you must keep using 1 component per directory then always bump the version number of the component's keypath of the component when changing anything in the component. I believe that's what you meant by changing the initial file in the basedata folder. You would have to do that for each component (and therefore directory) that changes. Adding keypath=yes isn't going to help because its already implicitly set to the default. Also you must not change a component keypath, once set. -----Original Message----- From: justin hull [mailto:justin.h...@assetpoint.com] Sent: 08 November 2011 16:13 To: wix-users@lists.sourceforge.net Subject: Re: [WiX-users] Fragments and Patch generation Thanks for the input. It got me looking in different directions. I found this link which is interesting for it both advocates the need to break MS rules on one file per component while stating it is the preferred method (sigh). http://makemsi-manual.dennisbareis.com/component_keypath.htm In looking at my wxi files, these are build via paraffin and with the amount of files involved I had paraffin group the files under directory components. Given what you said, could I solve this by just changing the initial file in the basedata folder? Would I have to do that for each sub directory? Would adding keypath='yes' work instead? I will try these options with the remaining wisps of hair I still have on my head. I did see that the base component does not have keypath yet does allow updates of files. <Directory Id="TARGETDIR" Name="SourceDir"> <Component Id="TabWareInstall" Guid="3220C16B-055A-4DD5-9896-31DD7D726D11"> My other plan will be to manually integrate the fragment files into the main project (not what I want to do in the future) to see if that will work. Justin Hull [cid:image003.jpg@01CC9E07.564C9180] Office: 864-679-3500 (3413) From: Peter Shirtcliffe [via Windows Installer XML (WiX) toolset] [mailto:ml-node+s687559n6974692...@n2.nabble.com] Sent: Tuesday, November 08, 2011 10:24 AM To: Justin Hull Subject: Re: Fragments and Patch generation I did a quick diff of the 2 wxs files. The changes appear to be in a component whose keypath doesn't change. I think, by default, in Wix v3+ the first file/registry key in a component is taken to be the keypath unless one is specified explicitly. Unless the component's keypath changes, the component won't be reinstalled. This is one reason 1 file per component is recommended - you don't need to bump the version of unchanged files to get your changed files updated. -----Original Message----- From: justin hull [mailto:[hidden email]</user/SendEmail.jtp?type=node&node=6974692&i=0>] Sent: 08 November 2011 14:01 To: [hidden email]</user/SendEmail.jtp?type=node&node=6974692&i=1> Subject: Re: [WiX-users] Fragments and Patch generation That makes sense. The files are large so I will upload them. Original base install http://windows-installer-xml-wix-toolset.687559.n2.nabble.com/file/n6974348/T abWareXiTools8200.wxs TabWareXiTools8200.wxs project for full install for patch (upgrade) http://windows-installer-xml-wix-toolset.687559.n2.nabble.com/file/n6974348/T abWareXiTools8201.wxs TabWareXiTools8201.wxs Patch project 8200 > 8201 http://windows-installer-xml-wix-toolset.687559.n2.nabble.com/file/n6974348/P atch.wxs Patch.wxs Database fragment http://windows-installer-xml-wix-toolset.687559.n2.nabble.com/file/n6974348/d atabasefiles.wxi databasefiles.wxi The wixmst differences file is over 2mg so I wont upload it all, but what is happening is that I am getting the files in the main directory updated, but I am not getting the files in the sub folders like Database \Tabware {Files here are updated} \Databases \BaseData {These fiels are not even touched} An example is this one database file. I find it in the diff file in various locations, but it does not update even when I "force" an update: ... -<row sourceLineNumber="C:\dev\TabwareInstalls\databasefiles.wxi*47" sectionId="wix.section.3/wix.section.3" op="modify"><field>file_twdatabase_11</field><field>comp_twdatabase_0</field> <field>zzwinact.txt</field><field modified="yes">146866</field><field/><field/><field>512</field><field>48</fie ld></row> ... -<row sourceLineNumber="C:\dev\TabwareInstalls\databasefiles.wxi*47" sectionId="wix.section.3/wix.section.3"><field>file_twdatabase_11</field><fie ld/><field/><field/><field>dir_DATABASE_basedata_1</field><field>1</field><fi eld previousData="c:\8.2.0.x\Pro00\DATABASE\basedata\zzwinact.txt">c:\8.2.0.x\Pro 01\DATABASE\basedata\zzwinact.txt</field><field/><field>-1</field><field>0</f ield><field>0</field><field/><field/><field/><field/></row> ... The database files are added to the proejct via the fragment. This is why I am wondering if the fragment, built by paraffin, is not being recognized in the pyro process. -- View this message in context: http://windows-installer-xml-wix-toolset.687559.n2.nabble.com/Fragments-and-P atch-generation-tp6972320p6974348.html Sent from the wix-users mailing list archive at Nabble.com. ----------------------------------------------------------------------------- - RSA(R) Conference 2012 Save $700 by Nov 18 Register now http://p.sf.net/sfu/rsa-sfdev2dev1 _______________________________________________ WiX-users mailing list [hidden email]</user/SendEmail.jtp?type=node&node=6974692&i=2> https://lists.sourceforge.net/lists/listinfo/wix-users SDL PLC confidential, all rights reserved. If you are not the intended recipient of this mail SDL requests and requires that you delete it without acting upon or copying any of its contents, and we further request that you advise us. SDL PLC is a public limited company registered in England and Wales. Registered number: 02675207. Registered address: Globe House, Clivemont Road, Maidenhead, Berkshire SL6 7DY, UK. ----------------------------------------------------------------------------- - RSA(R) Conference 2012 Save $700 by Nov 18 Register now http://p.sf.net/sfu/rsa-sfdev2dev1 _______________________________________________ WiX-users mailing list [hidden email]</user/SendEmail.jtp?type=node&node=6974692&i=3> https://lists.sourceforge.net/lists/listinfo/wix-users ________________________________ If you reply to this email, your message will be added to the discussion below: http://windows-installer-xml-wix-toolset.687559.n2.nabble.com/Fragments-and-P atch-generation-tp6972320p6974692.html To unsubscribe from Fragments and Patch generation, click here<http://windows-installer-xml-wix-toolset.687559.n2.nabble.com/template/N amlServlet.jtp?macro=unsubscribe_by_code&node=6972320&code=anVzdGluLmh1bGxAYX NzZXRwb2ludC5jb218Njk3MjMyMHwtMTI4MTg0Nzg4NQ==>. -- View this message in context: http://windows-installer-xml-wix-toolset.687559.n2.nabble.com/Fragments-and-P atch-generation-tp6972320p6974879.html Sent from the wix-users mailing list archive at Nabble.com. ----------------------------------------------------------------------------- - RSA(R) Conference 2012 Save $700 by Nov 18 Register now http://p.sf.net/sfu/rsa-sfdev2dev1 _______________________________________________ WiX-users mailing list WiX-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/wix-users ----------------------------------------------------------------------------- - RSA(R) Conference 2012 Save $700 by Nov 18 Register now http://p.sf.net/sfu/rsa-sfdev2dev1 _______________________________________________ WiX-users mailing list WiX-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/wix-users ----------------------------------------------------------------------------- - RSA(R) Conference 2012 Save $700 by Nov 18 Register now http://p.sf.net/sfu/rsa-sfdev2dev1 _______________________________________________ WiX-users mailing list WiX-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/wix-users ------------------------------------------------------------------------------ RSA(R) Conference 2012 Save $700 by Nov 18 Register now http://p.sf.net/sfu/rsa-sfdev2dev1 _______________________________________________ WiX-users mailing list WiX-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/wix-users