views:

74

answers:

1

I need to determine the COM component(unmanaged code) type and invoke the exposed interface's methods using reflection in C# at runtime.

  1. First What member of "Type" tells that type is COM component and we can take CLSID at runtime? Is Type.COMObject?
  2. I need to call methods of exposed interfaces as they called in unmanaged code using CoCreateInstance by passing CLSID and REFID ... I am using InvokeMember but it returns null or 0 as out parameter.

How to pass out parameter in this case.? Is there any need to pass out parameter? As all my COM unmanaged code suppose to take last parameter as an OUT parameter and after executing it puts the result into that out param. But I've converted all my unmanaged COM code to .NET managed assemblies using tlbimp.exe.

A: 

@Usman - please accept some of the answers given to your previous questions. Some of them are good and do answer your questions.

agsamek