1

In our project , People normally copy paste the WIX files and they will change the product and upgrade code.

Normally this was working fine without any issue.

Recently we faced an issue that while uninstalling an msi some registry keys were not removed and when we verified that the log file recorded some thing like this.

Disallowing uninstallation of component: { GUID } since another client exists.

We were told that the Component guid might be used by another msi in the system.

should Component GUID also be unique across msi?

Samselvaprabu
  • 13,922
  • 28
  • 113
  • 200
  • [Understanding MSI Component Rules - in practical use](https://stackoverflow.com/questions/1405100/change-my-component-guid-in-wix/1422121#1422121). – Stein Åsmul Jan 24 '20 at 14:41
  • View a component GUID and key path as the rough equivalent of a primary key. It should only point to one and only one absolute path. There is a 1-to-1 match. Change one, and you should change the other. – Stein Åsmul Jan 24 '20 at 18:19

2 Answers2

3

Welcome to the world of the "Component Rules". There is much that you need to know. I would start with reading:

What happens if the component rules are broken?

Organizing Applications into Components

Changing the Component Code

Defining Installer Components

Windows Installer Components Introduction.

Component Rules 101

ComponentID GUID Sloppiness Observation

About Shared Components

Mike Rosoft
  • 427
  • 2
  • 9
Christopher Painter
  • 52,390
  • 6
  • 60
  • 97
1

It might be normal - depends on the file. It might be a common Microsoft Dll that is in use by multiple products. Or a shared Dll from any other number of products.

However you imply that there's been some sloppiness in development and there might be duplicate guids in your own separate MSI setups. The short answer is that this is not really a WiX issue because it doesn't matter what tool you use to build MSI files. Component guids must be unique for a particular file or registry key. No duplicates. Actually Component guids need to be unique to a file or registry key across the entire system!!

Chris has given you plenty of reading.

PhilDW
  • 19,260
  • 1
  • 14
  • 23