检测.NET应用程序中的COM设备插入

时间:2014-09-03 15:11:47

标签: c# .net windows serial-port

我正在寻找一种方法来检测COM设备何时插入PC。我不限于.NET,但最终的应用程序是用.NET编写的。

最佳选择是连接某个事件(如果存在)。 但实际上我甚至可以循环列出所有设备。

在循环中检查新设备是可以接受的,因为几秒钟的延迟不是真正的问题,应用程序在整个生命周期中只执行一次。

1 个答案:

答案 0 :(得分:1)

我可以通过两种不同的方式阅读这个问题:

1。如何检测何时插入了USB->串行适配器。

在这种情况下,您可以在循环中执行SerialPort.GetPortNames并查看何时更改

2。如何检测我何时通过串口连接到设备。

没有确定的方法可以确定何时连接到COM端口而不发送数据。有一些额外的引脚用于这种方式,但它实际上取决于所涉及的布线。 See this post了解有关电缆类型,优点和缺点的更多详细信息。 如果您可以保证电缆的引脚排列以及您所连接的设备将DTR设置为高电平,那么这可能是一种可行的方法。

如果没有,那么您可能需要轮询每个COM端口并发送一些数据,看看是否有任何响应。