Blog
What is the Package Code and also explain its use?
The package code is a GUID identifying a particular Windows® Installer package. The package code associates an .msi file with an application or product and can also be used for the verification of sources.
How we can change the package Code?
The product and package codes are not interchangeable. No two non identical .msi files should ever have the same package code. It is important to change the package code because it is the primary identifier used by the installer to search for and validate the correct package for a given installation. If a package is changed without changing the package code, the installer may not use the newer package if both are still accessible to the installer. The package code is stored in the Revision Number Summary Property of the Summary Information Stream. Note that letters in product code and package code GUIDs must be uppercase. Utilities such as GUIDGEN generate GUIDs containing lowercase letters. The lowercase letters in these GUIDs must be changed to uppercase to be used as a product code or package code.
Using ORCA the Package Code can be changed as follows:
- Open the package with ORCA
- Under the View Menu Open the Edit Summary Information
- Click on New GUID for generating the new package code.

Although it is common to ship an application that has the same package code and product code, the two values can diverge as the application is updated. For example, including a new file with the application would require updating the installation database to install the file. If the changes are minor a developer may choose not to change the product code, however, a different .msi file is needed to install the new file and so the package code must be incremented. Conversely, a single package can be used to install more than one product.
For example, the installation of a package without a language transform could install the English version of the application and the installation of the same package with a language transform could install the French version. The transform is distinct from the .msi file that determines the package code. The English and French versions could have different product codes and the same package code because they are both installed with the same .msi file.
Product Codes
What is the product code?
The ProductCode property is a unique identifier for the particular product release, represented as a string GUID, for example “{12345678-1234-1234-1234-123456789012}”. Letters used in this GUID must be uppercase. This ID must vary for different versions and languages.
When we can change the product code?
A product upgrade that updates a product into an entirely new product must also change the product code. The 32-bit and 64-bit versions of an application’s package must be assigned different product codes. The ProductCode is advertised as a product property, and is the primary method of specifying the product. This property is REQUIRED.
What is the difference between Product code and Package code?
The package code is a GUID identifying a particular Windows® Installer package. The package code associates an .msi file with an application or product and can also be used for the verification of sources. The product and package codes are not interchangeable. No two nonidentical .msi files should ever have the same package code. Although it is common to ship an application that has the same package code and product code, the two values can diverge as the application is updated.