For Product, the guid is generated anew each time. Perfect for Major Upgrades on every build (see Bob's blogs (Joy of Setup) for why that is a good idea for many projects).
For Component, the guid is a hash of the "full keypath". As such, if the inputs are stable, the guids will also be stable. For file keypaths, the inputs are the following: the directory tree starting with a "well known" directory (such as program files, or a user's appdata folder, etc.) down to the component + the Name of the File element (computed if not expressly supplied). Thus, if the filename is the same, and the directory (including path) is the same, the guid will remain the same. If you change the directory, or the filename, the guid will be different. It was designed to be as compatible as possible with the component rules as we could make it. For registry keypaths, the key and value's name are used as inputs to the hash. Note that if you add (or remove) the switch enabling FIPS mode (I don't remember what it is right now) the hash used changes, which will affect guid generation, so you have to be consistent with that switch. -----Original Message----- From: MikeR [mailto:michael.ru...@gmail.com] Sent: Friday, January 22, 2010 10:40 AM To: wix-users@lists.sourceforge.net Subject: Re: [WiX-users] WiX syntax for GUIDs for 32-bit/64-bit components How exactly does the Guid="*" work? I've seen and read this in the WiX SDK before. The <Component>, <Package>, <Patch>, <Product> elements support auto-generation of GUIDs every time you build your project by specifying a * in place of the GUID. The way it reads to me it sounds like the GUID would get randomly changed every time I build my WiX project. In fact, I have used this on Product elements in some projects and that does change the GUID on every build. If this works differently for Component elemnts and the GUID is determined in a consistent fashion, what does it use to determine the GUID so that I can be assured my component GUIDs won't change without my knowledge? I've worked with Windows Installer long enough to know that following component rules is key, else you get screwed on upgrades and patches down the road. So I'm quite cautious when it comes to these things. BTW, the product I'm working on has not shipped yet. -- View this message in context: http://n2.nabble.com/WiX-syntax-for-GUIDs-for-32-bit-64-bit-components-tp444 0404p4441758.html Sent from the wix-users mailing list archive at Nabble.com. ---------------------------------------------------------------------------- -- Throughout its 18-year history, RSA Conference consistently attracts the world's best and brightest in the field, creating opportunities for Conference attendees to learn about information security's most important issues through interactions with peers, luminaries and emerging and established companies. http://p.sf.net/sfu/rsaconf-dev2dev _______________________________________________ WiX-users mailing list WiX-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/wix-users ------------------------------------------------------------------------------ Throughout its 18-year history, RSA Conference consistently attracts the world's best and brightest in the field, creating opportunities for Conference attendees to learn about information security's most important issues through interactions with peers, luminaries and emerging and established companies. http://p.sf.net/sfu/rsaconf-dev2dev _______________________________________________ WiX-users mailing list WiX-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/wix-users