10

我有一个串口转 USB 设备,其中一个以上可以连接到计算机。我需要查询和检索设备连接到的 COM 端口列表。在 Windows 设备管理器中,您可以获得当前连接的设备的 COM 端口 + 友好名称。此列表是动态的。

从注册表读取不起作用,因为存储的信息是陈旧的和静态的,而不是动态的。

Devcon(来自 Microsoft)确实列出了设备连接到的端口,但它不能在我的应用程序中使用,因为它不可重新分发。

任何想法或最好的解决方案?

4

4 回答 4

3

几周前我不得不解决一个类似的问题。我遇到了Jawin-Project,它提供了使用 WMI 查询所需的一切。它已经很老了,但如果你遵循文档,它就像一个魅力。可以在codegods 博客中找到一个不错的德语演练。

对我来说,它并没有解决所有问题(我有一些关于目标设备的非常具体的事情要找出来),我最终用 C 语言创建了一个自己的JNI(Java 本地接口)类和 DLL,并结合了 windows API。

我希望这是您搜索的内容。

于 2013-03-19T06:26:04.060 回答
1

你试过这个jUSB API还是这个例子

我希望这能帮到您。

于 2013-03-15T09:46:08.603 回答
1

使用 JNA ( https://github.com/twall/jna ) 并查看以下页面。这可能是一个有用的起点。

http://www.digitalinferno.com/wiki/Wiki.jsp?page=JNAPrintDevices

于 2014-08-19T10:26:16.823 回答
0

我正在研究Java Native Access,因为它提供了从纯 Java 代码访问 Windows API 的权限——无需处理 JNI。我担心 LGPL 许可证;它是否可以包含在商业产品中,但根据新闻组中的一些帖子所说,它可以。在接下来的几周内尝试后,我将回到这里。

于 2013-03-21T14:47:41.133 回答