Hi all,

Here is a quick question. Is the MSI GUID used in any way, outside the msi installer itself? Is it a standard or is it possible for any other application to use, look or fetch anything regarding the original MSI GUID of a specific app?

If I "HAVE" to change the original GUID of ActiveSync 4.5 for any reason (hypothetical example), can that hurt any other app?

0 Comments   [ - ] Hide Comments


Please log in to comment

Rating comments in this legacy AppDeploy message board thread won't reorder them,
so that the conversation will remain readable.
Answer this question or Comment on this question for clarity


Which GUID are you changing within the MSI? There are 3 main GUID's within an MSI that are cause for concern, the ProductCode, UpgradeCode and PackageCode. I'm assuming that it's the ProductCode that you are thinking of changing ?

The ProductCode and PackageCode must both be unique to any other application. If they are the same as another application, then you may come across problems down the road as both applications will think that they are the same. E.g. You won't be able to install both applications as one will think that it's already installed. You will probably just need to only change the ProductCode.

The UpgradeCode is used only when it comes to upgrades (funny eh, given it's name), this is referenced by other MSI's, when they want to remove the application is question.

It's highly unsual that you will run into a problem down the road if you change the ProductCode/PackageCode.

The scenario that you may come across would be if you needto patch or upgrade to a newer version of the app (only with a minor upgrade, keeping a similar version number e.g. 7.1 to 7.2).

After all that I should just point out that the general rule of thumb is that you should never modify a vendor MSI.

If you have any mroe questions, just ask.
Answered 05/21/2009 by: michaelnowell
Second Degree Blue Belt

Please log in to comment
you can edit the msi and repository using the API. But this particular example would be a very stupid thing to do. I would highly recommend against it as it is asking for trouble.

In saying that and answering your question can it be done. Yes it can. Should it be done the answer to that is rather obvious. Will it hurt another application probably not.
Answered 05/21/2009 by: jmcfadyen
Fifth Degree Black Belt

Please log in to comment
Thanks both for your input.

I am referring to the product code. The reason why I want to change the GUID is that for an unknown reason, our ActiveSync Package is defect. It is not installing the USB drivers at all. No matter how I try, I just cant patch or change the original package. I have to uninstall it then install the Vendor MSI.

Why I want to change the GUID is only if the uninstall of the previous is failing, when the new package installs (msiexec /i path/msi /qb) It will fail thinking it has to repair the previous one (which is still installed because of failure) and will be looking for the previous msi version in the new install location.

This happens to me once with a home package and I want to avoid this scenario to happen again.

Is my thinking right?

Answered 05/22/2009 by: unreal2me
Orange Senior Belt

Please log in to comment
It sounds like you may have modified the vendor MSI rather than created an MST and it's broken. Now that you try to run the vendor MSI again, since your modified version has the same product code, it detects it installed already and thus your problem.

Rather than start changing GUIDs and potential further damage your environment, I would recommend you look at cleaning up your current setups instead. Just wrap your MSI into an "uninstall/reinstall" script to ensure everytime it's deployed, it removes the older bad version and that's it.

- J
Answered 05/22/2009 by: jcarri06
Senior Purple Belt

Please log in to comment