我看过这样的例子
MsWordApp comObj = this.factory.createObject(MsWordApp.class);
在其他问题中,请点击on SO。
我的问题是,我需要像在vbscript示例中一样创建一个对象:
Set tdc = CreateObject("TDApiOle80.TDConnection")
在这种情况下,createObject将需要处理一个String而不是一个类。如何将此vbscript转换为Java / JNA?
最佳答案
VBScript的CreateObject
本质上是CLSIDFromProgID
,后跟CoCreateInstance
,带有错误处理。
VBScript始终使用后期绑定,因此您对IDispatch
支持感兴趣。
似乎JNA通过COMBindingBaseObject
提供了此功能:
new COMBindingBaseObject("TDApiOle80.TDConnection", false)
然后,使用提供的
IDispatch
调用方法并获取或设置属性。Reference。
关于java - 使用JNA来创建我没有.class的COM对象的CreateObject,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/46973501/