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
    or
  • 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
machine.

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)

2 Likes

I tried this with AutoCAD OEM 2024 and the new installation leaves the previous program entry, it does not see the install as an upgrade. Is there a way to specify a fixed upgrade code?

1 Like

Hello Anthony,

welcome to the forum!

I have not tried it yet with AutoCAD OEM 2024 , so I can’t comment on this right now. I will come back to this when I had the opportunity to try it myself.

But having a fixed upgrade guid would not solve the problem, because the installer needs some way to distinguish the installer versions. The “new” installer needs to know that it is another (newer) version than the already existing installed version of the application. The AutoCAD OEM Installer has been doing this in the past with the ProductGuid, which is (or should be) unique for each installer version to make the distinction.

1 Like