cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 

Build new .msi but keep existing product code?

We built a custom .msi installer several years ago and it's been working fine.  Now they need a change made to the installer.  The changes were made but when the new .msi is built it generates a different product code which won't work in our environment.  Is there a way to build a new .msi but keep the existing product code?

 

(1) Solution

Hi  @ericdocherty 

As you may know, the Product Code in each MSI is the primary identifier for a particular application.  Different versions/releases of the application would each have a unique MSI but they could share the same Product Code.

If you create a new MSI in AdminStudio, either via Repackaging or using the included InstallShield Editor, the new MSI will have a new unique product code so it is differentiated from other applications, as it is not aware that the new MSI being created is the same application as an existing application, just a new installer.

Within the InstallShield Editor, under the General Information view, under the General section you can see the Product Code is shown (see green arrow below):

 IS Editor - Product and Package Code location.png

 

You may choose to replace the randomly generated GUID with the product code from you previous MSI package (just copy the GUID from the previous MSI and paste into this field on the new MSI, then save the MSI from here).  This will "link" them as the same application as seen by the Windows Installer service on the end point machine. More info on changing the Product Code can be found in the the InstallShield Editor product documentation found here.

The Product Code should not be mistaken for the Package Code found under the Summary Information Stream (see red arrow above), as the Package Code must be unique. All nonidentical MSIs must have different Package Codes.

A good overview of MSI Product Codes are found in Microsoft's online product documentation found here.

Expert Flexeran on AdminStudio, Workflow Manager, and Software Vulnerability Manager / Research
If I've answered your question, please mark my response as "Accept as Solution" to help others find answers. Thanks!

View solution in original post

(2) Replies

Hi  @ericdocherty 

As you may know, the Product Code in each MSI is the primary identifier for a particular application.  Different versions/releases of the application would each have a unique MSI but they could share the same Product Code.

If you create a new MSI in AdminStudio, either via Repackaging or using the included InstallShield Editor, the new MSI will have a new unique product code so it is differentiated from other applications, as it is not aware that the new MSI being created is the same application as an existing application, just a new installer.

Within the InstallShield Editor, under the General Information view, under the General section you can see the Product Code is shown (see green arrow below):

 IS Editor - Product and Package Code location.png

 

You may choose to replace the randomly generated GUID with the product code from you previous MSI package (just copy the GUID from the previous MSI and paste into this field on the new MSI, then save the MSI from here).  This will "link" them as the same application as seen by the Windows Installer service on the end point machine. More info on changing the Product Code can be found in the the InstallShield Editor product documentation found here.

The Product Code should not be mistaken for the Package Code found under the Summary Information Stream (see red arrow above), as the Package Code must be unique. All nonidentical MSIs must have different Package Codes.

A good overview of MSI Product Codes are found in Microsoft's online product documentation found here.

Expert Flexeran on AdminStudio, Workflow Manager, and Software Vulnerability Manager / Research
If I've answered your question, please mark my response as "Accept as Solution" to help others find answers. Thanks!

Thanks!  I figured this was possible but had problems finding it on my own.