tags:

views:

38

answers:

0

I have a msm which contains COM DLLs. It works well with VisualStudio's setup project. But recently we tried to use Wix to produce our msi file, so the msm is included into the Wix XML file. It works mostly, except on some machines it failed to register COM objects.

I tried to use Orca to see what's the difference between VS produced msi and Wix produced msi. And I did find something. Some actions was missing in the Wix produced one, so I tried to add the following.

<InstallExecuteSequence>
  <InstallFiles />
  <UnregisterClassInfo />
  <UnregisterExtensionInfo />
  <UnregisterProgIdInfo />
  <RegisterClassInfo />
  <RegisterExtensionInfo />
  <RegisterProgIdInfo />
</InstallExecuteSequence>

It did add those actions and solve some cases. But there're still some cases of failure left unsolved. And I cannot identify the cause. It is really strange that I can see the COM reg info in the registery after install, but my application failed to create those COM objects. And doing a manual regsvr32 can make it work.

Any one can identify why?