Installshield Product: Code

If you inherit an old project or need to troubleshoot a client's machine, here is how to find the Product Code of an installed application.

The InstallShield Product Code is far more than a random string of characters. It is the identity of your product version in the eyes of the Windows operating system. Mastering its use separates professional setup developers from amateurs who cause support nightmares.

Key Takeaways:

By following the best practices outlined in this guide, you will avoid the common pitfalls of double installations, failed patches, and irremovable software entries. Treat your Product Code with the same rigor as your source code—store it in version control, document its changes, and audit it before every build.

Now go forth and build flawless InstallShield setups.


Further Reading:

Last updated: October 2023. This guide applies to InstallShield 2020 and later.

In the early 2000s, at a mid-sized software firm called Vortex Systems, the most powerful man in the building wasn't the CEO. It was , the Senior Deployment Engineer. installshield product code

lived in a world of registry hives, MSI tables, and the arcane rituals of InstallShield.

The product they sold was "Vortex-Sync," a massive enterprise tool that touched every corner of a client's server. And at the heart of Vortex-Sync lay a ghost: the Product Code. The Incident

It started on a Tuesday. A major client, a global logistics firm, reported that they couldn't upgrade to Version 4.2. Every time they ran the installer, InstallShield threw a cryptic error: “Another version of this product is already installed.”

knew the drill. He checked the version numbers. He checked the Upgrade Codes. Everything looked perfect. But the installer was adamant. It saw a phantom. The Investigation

stayed late, the office humming with the sound of server fans. He cracked open the .ism project file. To the uninitiated, an InstallShield project is a labyrinth. To , it was a map.

He navigated to the Product Properties. There it was—the Product Code, a 38-character GUID: E4B2.... This unique string was the software’s social security number. It told Windows, "I am this specific version of this specific thing."

Then he found the error. Six months ago, a junior dev had "cleaned up" the build script. They had accidentally hard-coded the Product Code from Version 4.1 into the 4.2 build. If you inherit an old project or need

In the eyes of the Windows Installer, 4.2 was 4.1. But because the file versions were different, the installer didn't know whether to perform a "Small Update," a "Minor Upgrade," or a "Major Upgrade." It simply panicked and locked the doors.

didn't just change the code. He had to perform a "Digital Exorcism."

Generating the New GUID: With a click, he generated a brand new Product Code. The old one was tainted.

The Major Upgrade Table: He carefully configured the Upgrade Table to recognize the old Product Code as a target for removal.

The Clean-Up Script: He wrote a specialized VBScript to hunt down orphaned registry keys tied to the duplicated GUID.

By 3:00 AM, he ran a test. The progress bar moved. No errors. No phantoms. The new Product Code had claimed its territory. The Legacy

left a note on the junior developer's desk the next morning. It wasn't a reprimand; it was a printed copy of the InstallShield Best Practices guide. On the front, he circled the section on Product Codes in red ink and wrote: By following the best practices outlined in this

"In deployment, your code is your identity. Change it too often, and you’re a stranger. Never change it, and you’re a ghost. Get it just right, and nobody will ever know you were here."

The upgrade went live that afternoon. Thousands of servers updated silently, and not a single user noticed the 38 characters that had nearly brought the company to a standstill.

In the context of InstallShield (now part of Revenera), the Product Code is a unique GUID (e.g., B9E6F1E9-AB78-4C8D-9F3A-1E4C8D9A2B3C) that identifies your product for Windows Installer (MSI) or InstallScript MSI projects.

The Product Code is a GUID (Globally Unique Identifier) that serves as the primary identifier for a specific software product on a user's machine.

  • For InstallScript and other project types, behavior differs:
  • InstallShield offers a “Generate new Product Code on build” option for Major Upgrade builds; use carefully.
  • For MSI-based installs:

    HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\ProductCode
    

    For 64-bit applications on 64-bit Windows, check:

    HKEY_LOCAL_MACHINE\SOFTWARE\WOW6432Node\Microsoft\Windows\CurrentVersion\Uninstall\
    

    Version 1.0 (Product Code A) is installed. You develop Version 2.0. You generate a new Product Code (B), keep the same Upgrade Code, and configure an "Upgrade" table. Windows Installer automatically detects A, removes it silently, and installs B. The user sees only one entry in Control Panel. This is the gold standard.