代码之家  ›  专栏  ›  技术社区  ›  Esti

我如何知道应用程序是否支持OLE2以及哪些方法和属性是公开的?

  •  1
  • Esti  · 技术社区  · 16 年前

    我想从ABAP调用一个ActiveX dll或ole2对象。

    我已经知道如何实例化对象和执行方法的语法:

    data: my_object type ole2_object.
    
    create object my_object <ole2object>.
    
    call method of my_object <objectmethod>.
    

    但是对于特定的应用程序,我如何知道它是否受支持,它的值/名称是什么 OL2对象 对象方法 是?

    Transaction Sole提供了一个OLE应用程序表,其中之一是Excel.Application,我知道它可以被实例化为一个OLE对象,所以看起来您必须先将ole2应用程序添加到该表中,但我在哪里可以读取像clsid&libtype这样的数据?它是作为应用程序的一部分发布的吗?

    2 回复  |  直到 16 年前
        1
  •  1
  •   vwegert    16 年前

    在本例中,您只需使用ole2来访问COM接口。如果要访问Office应用程序,您可能需要查看 KB222101 . 对于其他应用程序和库,您将需要API文档和一些合适的示例(不一定是在ABAP中,VB可以做得很好)。用一根尖棍戳显影剂,或者三个都戳…

    哦,还有一个叫做OLE/COM对象资源管理器的工具,Mitec可以 downloaded for free from their website . 我自己也没用过,不过看起来可能会有帮助。

        2
  •  2
  •   PATRY Guillaume    16 年前

    对象来自表tole。它们的方法和特性存储在表oleload中。

    我一段时间前找到了一些文件( this one this one )其中包含了如何找到属性和方法的指示。

    clsid上的指示很简洁,但它似乎是与指定的应用程序(例如visio.application)一起使用hkey_class_root/clsid的寄存器中的值。如果使用regedit搜索此应用程序值,将找到相应的clsid。

    希望能有所帮助
    纪尧姆

    推荐文章