Is it possible to invoke a static method on a .NET Object, via COM interop?
I know I could write a wrapper class. What if I don't wanna do that?
No you cannot do this. COM interop communicates via objects, not types.
Work arounds I know of ...
- The best work around is to create a wrapper method on an instance to do the call on the type. Yes this still requires an instance so it defeats the purpose but it's you're best option.
- Reverse PInvoke: Still requires you to pass a function pointer down to the C++ layer
来源:https://stackoverflow.com/questions/1395897/how-can-i-invoke-a-static-method-on-a-net-object-over-com-interop