Installshield Product Code May 2026
Mastering InstallShield: The Ultimate Guide to Product Codes, Upgrades, and Patch Management
Introduction
In the world of Windows software deployment, few identifiers are as critical—or as frequently misunderstood—as the InstallShield Product Code. Whether you are a seasoned setup developer or a beginner packaging your first application, understanding the Product Code is not just a technical necessity; it is the foundation of reliable installations, seamless upgrades, and clean uninstalls.
When it’s used
- Upgrade detection and versioning (Major/Minor upgrades).
- Add/Remove Programs (Apps & Features) identification.
- Repair, modify, uninstall operations.
- Registry entries under Uninstall and installer database tables (Property table: ProductCode).
- Windows Installer components such as Windows Installer caching and reference counting.
- Patch (MSP) targeting and patch sequencing.
When you run a command like msiexec /x ProductCode, Windows looks up that specific GUID in its registry to find the cached .msi file and execute the removal. Without the correct code, you cannot programmatically uninstall or repair a specific build. 2. Preventing "Double Installations" installshield product code
: If you change the Product Code, Windows treats the new installer as a different product. This is essential for performing a Major Upgrade Upgrade detection and versioning (Major/Minor upgrades)
Manual Steps to Change the Code
- Open your InstallShield project.
- Navigate to the Installation Designer tab.
- Select General Information (usually the first item under Organization).
- Look for Product Properties.
- Find the Product Code row.
- Click the value (the GUID string). You will see a
...button. - Click the
...button or press the "Generate GUID" icon to create a new unique ID.
Step 5: Configure the Upgrade Path
Go to Upgrade Paths (under Organization). Right-click > New Upgrade Path. Point it to the previous version's .MSI file or manually enter the old Product Code. Set the action to "Uninstall the previous version." When you run a command like msiexec /x
APIs and programmatic access
- Windows Installer API calls reference ProductCode for operations:
Method 1: InstallShield Registry Locations
For MSI-based installs: