Có thể gọi API COM từ Java (cụ thể là API OTA của Trung tâm Chất lượng HP/Mercury) không? Nếu vậy, cách tốt nhất là gì?Có thể gọi API COM từ Java không?
Có giống như JACOB thích hợp không?
mảnh Mã sẽ rất hữu ích cho những điều cơ bản :-)
Có thể gọi API COM từ Java (cụ thể là API OTA của Trung tâm Chất lượng HP/Mercury) không? Nếu vậy, cách tốt nhất là gì?Có thể gọi API COM từ Java không?
Có giống như JACOB thích hợp không?
mảnh Mã sẽ rất hữu ích cho những điều cơ bản :-)
jacob: yes, http://sourceforge.net/projects/jacob-project/ là một dự án hoạt động mà sẽ phù hợp với mục đích của bạn khá tốt.
bạn có thể thấy nhiều ví dụ: http://jacob-project.wiki.sourceforge.net/Event+Callbacks
nhưng nếu bạn muốn một cái gì đó được thử nghiệm nhiều hơn và sẵn sàng trả tiền, sau đó đi cho http://www.nevaobject.com/_docs/_java2com/java2com.htm.
Tôi cũng đã tìm thấy điều này là hữu ích: com4j
Bạn có thể sử dụng Jawin>http://jawinproject.sourceforge.net/
hoặc thử các hướng dẫn http://docs.rinet.ru/ZhPP/ch20.htm
Arun KY arunky
j-Interop là cầu nối Java-COM: j-Interop. Nó được viết bằng Java thuần túy và được cấp phép theo LGPL v3. Nó sử dụng giao thức dây DCOM để gọi các đối tượng COM trái với cách tiếp cận JNI được JACOB sử dụng.
có thể bạn nên xem http://qctools4j.sourceforge.net/ đó là thư viện java được qclylyn sử dụng (http://sourceforge.net/apps/mediawiki/qcmylyn/index.php?title=Main_Page) để truy xuất lỗi từ QC.
tiếc là cầu COM không làm việc cho linux như nó tải jacob dlls
Bạn có thể sử dụng J-Integra cụ COM2JAVA. Công cụ com2java tạo ra các lớp và giao diện Java "proxy" tương ứng với các lớp và các giao diện chứa trong một thư viện kiểu COM. Nó có hiệu quả tạo ra một API Java mà bạn có thể sử dụng để truy cập một thành phần COM từ Java.
sau khi so sánh tất cả những điều trên, không ai hoàn toàn thỏa đáng.
giải pháp hoàn thiện nhất là trong https://github.com/java-native-access/jna
bây giờ.
Nó hỗ trợ,
Ví dụ:
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();