使用 JNA 来 CreateObject 我没有 .class 的 COM 对象
Use JNA to CreateObject of a COM object I have no .class for
我见过这样的例子
MsWordApp comObj = this.factory.createObject(MsWordApp.class);
其他问题在这里on SO。
我的问题是我需要像在 vbscript 示例中那样创建一个对象:
Set tdc = CreateObject("TDApiOle80.TDConnection")
在此场景中,createObject 需要处理字符串,而不是 class。我怎样才能将这个 vbscript 翻译成 Java / JNA ?
VBScript 的 CreateObject
本质上是 CLSIDFromProgID
后跟 CoCreateInstance
,带有错误处理。
VBScript 始终使用后期绑定,因此您对 IDispatch
支持感兴趣。
JNA 似乎通过 COMBindingBaseObject
:
提供了这个
new COMBindingBaseObject("TDApiOle80.TDConnection", false)
然后,使用提供的 IDispatch
调用方法并获取或设置属性。
我见过这样的例子
MsWordApp comObj = this.factory.createObject(MsWordApp.class);
其他问题在这里on SO。
我的问题是我需要像在 vbscript 示例中那样创建一个对象:
Set tdc = CreateObject("TDApiOle80.TDConnection")
在此场景中,createObject 需要处理字符串,而不是 class。我怎样才能将这个 vbscript 翻译成 Java / JNA ?
VBScript 的 CreateObject
本质上是 CLSIDFromProgID
后跟 CoCreateInstance
,带有错误处理。
VBScript 始终使用后期绑定,因此您对 IDispatch
支持感兴趣。
JNA 似乎通过 COMBindingBaseObject
:
new COMBindingBaseObject("TDApiOle80.TDConnection", false)
然后,使用提供的 IDispatch
调用方法并获取或设置属性。