I understand the registry very well. How various items use the registry is a different story! I'm not really quite sure if you answered my question with your last comment. Was that a Yes or a No to my question.

Ok... I think I follow you here... what your'e saying is that anything placed within this hive should technically run active setup... I don't need to have a product code here... See, I thought that a product code was required here but I think you're saying that it can be anything because it's not really associated with anything. Now that I think about it, Active Setup is not part of Windows Installer so I think what you're saying makes sense.

So my problem is that the items placed in this hive are not executing for some reason. I thought they were not executing because my product is not installed. That doesn't matter though... Active setup doesn't care what you put in there... Must be a problem with the machine I'm trying this on. Hmmmmm... We making sense now? :)

The reason that most people use a product's ProductCode is that, being a GUID, it is (hopefully) unique. You're quite welcome to use whatever name that you like for the key but there is a chance that another, identically-named key will overwrite it at some point.

Hi folks,
interesting discussion.
We use the MSI's productcode for active setup so far.
Had an exchange with one of our packaging guys today about this.
And there was another thought: Maybe it's better to use the UpgradeCode for this.
With this, one could substantially reduce the leftovers in the user profiles.
Typically, the productcode changes with each major release, but the upgrade code stays the same for a long time.
Thoughts?
Regards, Nick

...and, quite sensibly, Nick has opened it out into a more generalised discussion. That is allowed, you know! :)

My point - for which I thought most packagers wouldn't need an explanation - was that GUIDs (of which MSI Product Codes are a good example) are a handy way to provide unique keys to use for the purpose.

Typically, the productcode changes with each major release, but the upgrade code stays the same for a long time.

I'd say it all depends on what you want to do in the Active Setup action. When doing an upgrade of a product, do you want the action to run again or not?
I do suppose that you could use the UpgradeCode and control the triggering by playing with the Version value, but I have the habit of putting the ProductVersion in there, so if I don't want the action to run, I'd have to change that habit...

SO, good point Nick [:D] I'll have to break this down in my head abit more