Is it possible to use COM visible .NET classes with free COM registration?

We are developing a ClickOnce application with a mixture of .NET components and legacy C ++ COM components.

We are currently adding C ++ COM components to the user machine using MSI (this is a prerequisite for installing our ClickOnce application), which means that we can pre-register COM objects on the user machine.

We can still release updates for the rest of the C # application using ClickOnce, but manual intervention is required to update the components installed by MSI.

However, we are trying to figure out whether it is possible to install C ++ COM components through a free, free COM, i.e. they are all in the same directory, and each component has a manifest file that defines clsid for each COM object and interface. This would mean that we completely get rid of MSI.

This link was a good introduction to this topic.

I managed to get the .NET component to load the C ++ COM object, but not vice versa.

Does anyone know if this is possible?

+6
c ++ c # clickonce com
source share
1 answer

Yes it is possible. You will need to use the <clrClass> element in the manifest. There is a decent located here . SDK docs are otherwise rather miserable, you'll need a Junfeng Zhang blog to get more detailed background information.

+5
source share

All Articles