The role of the ProductGuid with AutoCAD OEM Installer Wizard

I have been building and deploying AutoCAD OEM based applications since 2015. Early on, I
discovered an important rule for the deployment: Each OEM installer build done with the OEM
Installer Wizard should have a unique ProductGuid. The ProductGuid is an identifier that is
used by the installer mechanism to identify the distinct version of the application.

Usually, the OEM Install wizard creates the unique ProductId for you, BUT only under special circumstances:

  • You use the user interface of the OEM Installer Wizard to enter the installer data manually and to build the installer, without using a saved installer xml file from a previous build.
  • You use a previously saved installer xml file where the <ProductGuid> node has been removed.

As soon as there is a <ProductGuid> node in a saved installer xml file, the OEM Wizard will NOT create a new and unique ProductGuid. Instead, it will use the ProductGuid provided in the installer xml file.

Therefore, when using an existing installer xml file, you have to either

  • remove the <ProductGuid> node
  • change the ProductGuid in the <ProductGuid> node

Let’s say you are building and deploying your AutoCAD OEM application called xTest to your
customers. A couple of month later, you need to build and deploy the application again to fix
some software bug that has come up. You build the updated application and create the installer
using the AutoCAD OEM Installer Wizard with the previous saved installer xml file.

When using the same ProductGuid as the first initial build, the updated OEM product will not
be installed properly on the user client machine. While you used the same ProductGuid like the
first installer build, the product thinks it is already installed on the machine, the installation
process of the updated application (with the same ProductGuid) will fail.

When using a new and unique ProductGuid for the updated application, the new installer will
be able to overwrite the already installed older version of the application on the user client

Before building the OEM installer with the OEM Installer Wizard, open the installer xml file
and change the ProductGuid to a new value:

or just delete the <ProductGuid> node:

In Visual Studio, there is a handy tool to create a new Guid:

You can do this from C# code with Guid.NewGuid().ToString()

Starting with AutoCAD OEM 2023, this needs to be Guid.NewGuid().ToString().toUpper()
(see here)