-1

我有一个作为“COM8”连接到计算机的设备。我想知道它是什么时候从电脑上拔下来的,所以我用下面的代码来检测:

m_receiverCom->isWritable();
m_receiverCom->isOpen();  

但是,在我拔下设备后它们仍然返回 true 。如何检测设备是否已插入?

4

2 回答 2

0

您查询的是端口,而不是设备。向将产生响应消息的设备发送某种查询消息。

于 2013-06-10T03:05:20.337 回答
0

虽然是旧线程,但防止人们被卡住。我刚刚遇到了这个问题,我成功地使用 qextserialport 来检测串口断开/连接使用:

QextSerialPort *serial_monitor;
serial_monitor = new QextSerialEnumerator();
serial_monitor->setUpNotifications();

connect(serial_monitor, SIGNAL(deviceRemoved(QextPortInfo)), this, SLOT(_handleUSBError(QextPortInfo)));
于 2018-04-25T13:54:30.433 回答