【问题标题】:How can I invoke a static method on a .NET object over COM interop?如何通过 COM 互操作在 .NET 对象上调用静态方法?
【发布时间】:2010-11-26 14:58:03
【问题描述】:

是否可以通过 COM 互操作在 .NET 对象上调用静态方法?

我知道我可以编写一个包装类。如果我不想这样做呢?

【问题讨论】:

    标签: .net com interop com-interop


    【解决方案1】:

    不,你不能这样做。 COM 互操作通过对象而不是类型进行通信。

    我知道的解决方法...

    • 最好的解决方法是在实例上创建一个包装器方法来对类型进行调用。是的,这仍然需要一个实例,因此它无法达到目的,但这是您的最佳选择。
    • 反向 PInvoke:仍然需要将函数指针向下传递到 C++ 层

    【讨论】:

    • 我可以很简单地使用 .NET 4.0 和 DLR 魔法来做到这一点,嗯?
    • @Cheeso,不是真的。根据您的问题陈述,您似乎正在尝试找到从本机-> 托管代码调用的解决方案。 DLR 只会帮助您从托管代码开始的情况。
    • 啊,我必须了解更多。我以为会有一些神奇的 Javascript-to-CLR 集成即将到来。
    猜你喜欢
    • 2012-06-09
    • 1970-01-01
    • 2011-02-25
    • 2017-04-28
    • 1970-01-01
    • 1970-01-01
    • 2017-10-05
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多