Tag: com

JAVA – GPS RECEPTOR在控制台中发送奇怪/编码的帧

我有一个GPS接收器,它给我发送了NMEA帧。 我的代码检索这些代码,但forms非常奇怪: 我正在使用PuTTY来查看我的受体接收到的NMEA帧,并且没有问题。 编辑 – 这是我正在使用的代码: public class GPSFrame extends Observable implements Runnable { static Thread myThread=null; static BufferedReader br; static BufferedWriter wr; static PrintWriter out; static InputStreamReader isr; static OutputStreamWriter osw; static java.io.RandomAccessFile port; /** CONSTRUCTOR **/ public GPSFrame() { myThread=new Thread(this); } public void start() { try { port=new java.io.RandomAccessFile(“COM5″,”rwd”); port.writeBytes(“\r\n”); port.writeBytes(“c,31,0,0,5\r\n”); port.writeBytes(“T,1000,1\r\n”); […]

Java中的Com对象可能吗?

抱歉愚蠢的问题,但我没有任何关于java的经验,没有关于jvm,它是内部的,谷歌搜索subj没有给出结果。 问题是,是否可以使用Java编写com对象? 然后从C#运行它? 谢谢。

如何从64位进程使用32位COM对象?

我在64位机器上使用Jacob(JAVA COM桥),并希望从32位DLL加载COM对象。 我怎样才能做到这一点?

使用Com4j或Jacob将64位Java与32位COM dll连接

我有以下配置: 1)Windows 10 64位 2)只有32位版本且可通过COM获得的应用程序。 我使用tlbimb.jar访问32位应用程序的.dll文件以生成所需的接口,然后我成功了。 场景1:我尝试使用Java 8 32位安装来访问32位应用程序。 我可以成功地通过COM调用方法而没有任何问题。 场景2:我尝试使用Java 8 64位安装来访问32位应用程序。 我收到一条错误消息: Exception in thread “main” com4j.ExecutionException: com4j.ComException: 80040154 CoCreateInstance failed : Class not registered : .\com4j.cpp:153 我在Stackoverflow / Google上搜索了exceptin,我做了以下事情: 1)使用Sys64WOW / regsvr32.exe和System32 / regsvr32.exe注册应用程序的dll 2)使用Sys64WOW / regsvr32.exe和System32 / regsvr32.exe注册com4j dll(32位和64位) 3)复制Sys64WOW和System32文件夹中的dll。 我已完成上述所有操作,检查所有可能的组合。 使用64位Java的错误仍然存​​在。 我尝试过使用另一座桥(雅各布)。 在32位Java上它成功,在64位Java上它失败了。 我有一个问题可能有人知道:有没有办法连接一个应用程序,据我所知,只提供Win32 COM dll [1],使用任何可用的Java / COM桥和Java 64位 […]

Windows 64位上的com4j

我已经下载了最新的com4jjar子,我正试图通过他们最简单的例子。 我使用64位Windows 7并使用64位JVM。 当我运行命令时(来自com4j教程): java -jar tlbimp.jar -o wsh -p test.wsh %WINDIR%\system32\wshom.ocx 我明白了: Exception in thread “main” java.lang.UnsatisfiedLinkError: com4j-amd64.dll: %1 is not a valid Win32 application at java.lang.ClassLoader$NativeLibrary.load(Native Method) at java.lang.ClassLoader.loadLibrary0(Unknown Source) at java.lang.ClassLoader.loadLibrary(Unknown Source) at java.lang.Runtime.load0(Unknown Source) at java.lang.System.load(Unknown Source) at com4j.COM4J.loadNativeLibrary(COM4J.java:569) at com4j.COM4J.(COM4J.java:522) at com4j.tlbimp.driver.Lib.getLibid(Lib.java:90) at com4j.tlbimp.driver.Driver.addLib(Driver.java:38) at com4j.tlbimp.driver.Main.doMain(Main.java:123) at com4j.tlbimp.driver.Main.main(Main.java:56) Exception in […]

如何用C#或C ++读取COM TypeLib?

我的公司已经创建了几个COM对象,他们在.NET中愉快地使用它们。 但现在,我们的客户想要改为Java。 我认为使用JACOB或j-interop(我不确定它们中的哪一个)来执行某些任务会很有趣,但结果代码非常难以管理。 所以我想编写一个工具,可以读取COM库的TypeLib,然后生成Java包装类,用于隐藏所有那些无法管理的代码。 我是COM世界的新手,所以我不知道如何获取有关描述COM对象的接口,方法和参数的信息。 我读到了一些名为TypeLib的内容,但我不知道如何阅读它。 我怎样才能从中获取信息?

JACOB不会正确释放对象

我有一个eclipse插件,它使用Jacob连接到COM组件。 但是在我完全关闭插件之后,.exe文件在Windows进程中保持不变。 我使用ComThread.InitMTA(true)进行初始化,并确保在关闭应用程序之前为我创建的每个COM对象调用ComThread.Release() ,并在最后调用ComThread.Release() 。 我是否会遗漏一些东西?

如何选择Java-COM桥?

我必须创建一个自动化Outlook和Word的应用程序,我想使用Java来完成该任务。 (唯一允许的替代方案是VB6,所以…) 经过Google快速调查后,我找到了几个库,但我不确定使用哪个库: J-互操作 SWT JACOB COM4J jacoZoom … 我不知道如何比较这些库并做出明智的决定。 似乎COM4J有点过时,JACOB泄漏内存(据称)和jacoZoom是商业化的。 每个人似乎都需要很多样板代码才能执行简单的方法调用。 (考虑到COM的设计,这可能是不可避免的) 除此之外,我不知道如何在其中一个之间做出选择。 哪一个是最好的?

是否可以从Java调用COM API?

是否可以从Java调用COM API(特别是HP / Mercury Quality Center OTA API)? 如果是这样,最好的方法是什么? 像JACOB这样适合吗? 代码片段对基础知识有帮助:-)