是它可能叫COM API从Java?
-
02-07-2019 - |
题
是它可能叫COM API从Java(具体的HP/汞质量中心OTA API)?如果是这样,什么是最好的方式吗?
是喜欢的东西雅各布适当的?
代码碎片将有助于基本:-)
解决方案
jacob:是的, http://sourceforge.net/projects/jacob-project/是一个活跃的项目,可以很好地满足您的目的。
您可以看到多个示例: http://jacob-project.wiki.sourceforge。净/活动+回调
但是如果你想要一些经过更多测试并且愿意付钱的东西,那么请去 http://www.nevaobject.com/_docs/_java2com/java2com.htm 。
其他提示
我也发现这很有用: com4j
你可以使用Jawin> http://jawinproject.sourceforge.net/
或尝试使用 http://docs.rinet.ru/ZhPP/ch20.htm
Arun K.Y arunky
也许你应该看看 http://qctools4j.sourceforge.net/ 它是qclylyn(http://sourceforge.net/apps/mediawiki/qcmylyn/index.php?title=Main_Page)用来从QC检索缺陷的java库。
遗憾的是,COM桥不支持linux,因为它加载了jacob dll
后一个比较的上述所有,没有完全令人满意。
最完整的解决方案是在 https://github.com/java-native-access/jna
现在。
它支持,
- 越来越接到一个运行COM对象
- 开始一个新的对象和返回其接口
- 叫COM方法和返回的结果
- 可选单独COM线处理
- ComEventCallbacks
- RunninObjectTable查询
- 低级COM使用
- 工具/高级别java代理的抽象
E.g。
MsWordApp comObj = this.factory.createObject(MsWordApp.class);
Documents documents = comObj.getDocuments();
_Document myDocument = documents.Add();
String path = new File(".").getAbsolutePath();
myDocument.SaveAs(path + "\\abcdefg", WdSaveFormat.wdFormatPDF);
comObj.Quit();
j-Interop是一个Java-COM桥梁: j-Interop 。它是用纯Java编写的,并在LGPL v3下获得许可。它使用DCOM有线协议来调用COM对象,而不是JACOB使用的JNI方法。
您可以使用J-Integra COM2JAVA 工具。 com2java工具生成Java“代理”工具。与COM类型库中包含的coclasses和接口相对应的类和接口。它有效地生成了一个Java API,您可以使用它从Java访问COM组件。