C# 如何自动检测并连接到usb设备?
我有一个usb设备(RF徽章读取器),我需要我的应用程序检测设备是否插入了witch COM端口。 我现在做的是这样的:C# 如何自动检测并连接到usb设备?,c#,visual-studio-2012,C#,Visual Studio 2012,我有一个usb设备(RF徽章读取器),我需要我的应用程序检测设备是否插入了witch COM端口。 我现在做的是这样的: SerialPort mySerialPort = new SerialPort("COM3"); mySerialPort.BaudRate = 9600; mySerialPort.Parity = Parity.None; mySerialPort.StopBits = StopBits.One; mySerialPort.Dat
SerialPort mySerialPort = new SerialPort("COM3");
mySerialPort.BaudRate = 9600;
mySerialPort.Parity = Parity.None;
mySerialPort.StopBits = StopBits.One;
mySerialPort.DataBits = 8;
mySerialPort.Handshake = Handshake.None;
mySerialPort.Open();
如果我将设备连接到另一个USB端口,应用程序将崩溃。
知道怎么做吗?对于大多数USB串行设备,如果连接到另一个USB端口,COM端口将发生变化。这就是为什么当你试图打开COM3时它会崩溃 您最好的选择可能是将COM端口(COM3)设置为用户可配置的设置。在使用USB设备时,不应断开/重新连接USB设备,因此实际上不需要自动检测
但是,您可以尝试检测USB更改(例如,打开USB),并自动感知设备(涉及一点通信)。成功与否可能取决于USB设备驱动程序。您是否尝试过stackoverflow或其他任何有关stackoverflow的问题?我尝试过一些,但没有任何帮助。您是否尝试过将其放入
Try Catch
如果我有>1台设备连接到计算机,该怎么办?我怎么知道我要搜索的设备是什么?根据我之前在连接Arduino时查找的信息,你必须发送一个数据,然后在每个端口上进行3路握手,以检查这是否是你想要的设备。但我没有仔细研究。