Search code examples
c++comlanguage-interoperability

managed dll in native code (via com) .is it in process or out process com server?


i needed to use a managed dynamic linked library(c#) in my native code(c++).i found the solution here it was. (http://support.microsoft.com/kb/828736).

but the thing that is bothering me is..

1) are managed dynamic linked libraries used in native code through com act as in process com servers ? . if yes how can it be?

2)if no, then how can dynamic linked library act as out process com server without being carried by an executable .


Solution

  • This is an in-proc configuration. It's not much more "impossible" than using P/Invoke mechanism directly. When you run regasm it makes necessary changes to the registry so that when the client calls CoCreateInstance() COM knows that it needs to P/Invoke functions from the corresponding .NET assembly.