Yes. Very sensible. Just keep an eye on the GUIDs for a while until you 
are sure it all works.

John Aldridge wrote:
> I asked...
>
>   
>> From: John Aldridge [mailto:j...@jjdash.demon.co.uk]
>>
>> Are there any guidelines for how best to create both a 32 and a 64 bit 
>> installer from a single WiX
>> source file? I can use variable substitution to set the Platform attribute 
>> and pick up the right
>> versions of the various executable files, but I'm puzzled about how to 
>> manage Component GUIDs. Do they
>> need to be different for the 32 & 64 bit installers, and if so does 
>> WiX/Votive provide me any tools
>> which can be used to manage this difference? It is possible that both the 32 
>> and 64 bit versions will
>> need to be installed at once, if that matters.
>>
>> A separate but perhaps related question is how to manage a new product 
>> version which can be installed
>> side-by-side with the current version. My understanding is that I need to 
>> allocate new Component GUIDs,
>> but I'd rather not spend hours with GUIDGEN copy & pasting hundreds of new 
>> entries! I guess I could
>> write a utility to process a WiX source file and replace every GUID in it, 
>> but is there a better way?
>>     
>
> Replies pointed me at
>
> <http://blogs.msdn.com/heaths/archive/2005/10/24/windows-installer-on-64-bit-platforms.aspx>
>
> which includes the advice
>
>   
>> If a 32-bit component is contained in both a 32-bit installation package
>> and a 64-bit installation package it may have the same component ID but
>> 32- and 64-bit components should have different component IDs, just as
>> 32- and 64-bit products should have different product codes.
>>     
>
> which seems clear enough. In addition, labour saving ways of replacing GUIDs 
> were suggested. Thank you all for the help so far.
>
> I do need to support patching, so automatic GUID replacement as part of the 
> build process won't do. My tentative plan is to use
>
>    Guid="*"
>
> rather than explicit GUIDs, and to rely on the autogeneration mechanism to 
> keep the GUIDs stable but different for things installed to ProgramFiles and 
> those installed to Program64Files.
>
> This seems to work nicely for the installer itself, but I'm also generating 
> 32 & 64 bit versions of a merge module. The 64 bit installer includes both 
> versions of the msm, the 32 bit installer just the 32 bit msm). I plan to 
> have the Votive project define, for each target platform, a different GUID as 
> the value of the 'Seed' preprocessor variable, and then to code the merge 
> module like the following:
>
> <Module Id="SomeModule" ... >
>    <Package Id="$(var.Seed)" Platform="$(var.Platform)" ... />
>    <Directory Id="TARGETDIR" Name="SourceDir" ... >
>       <Directory Id="MergeRedirectFolder" 
> ComponentGuidGenerationSeed="$(var.Seed)" ... >
>          <Component Id="SomeFile.dll" Guid="*" ... >
>          :
>
> Does this all seem sensible?
>
> --
> Cheers,
> John
>
>
> ------------------------------------------------------------------------------
> _______________________________________________
> WiX-users mailing list
> WiX-users@lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/wix-users
>   

------------------------------------------------------------------------------
_______________________________________________
WiX-users mailing list
WiX-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/wix-users

Reply via email to