1

我得到所有 COM 端口的列表,并使用以下代码将它们的名称添加到 QComboBox:

QList<QSerialPortInfo> com_ports = QSerialPortInfo::availablePorts();
QSerialPortInfo port;

foreach(port, com_ports)
{
    ui->comboBox_com_ports->addItem(port.portName());
}

我只有 COM3,但availablePorts()函数返回两个成员,如下所示:在此处输入图像描述

我的代码有什么问题?

注意:我使用“MSVC2012 OpenGL 32bit”作为编译器。

4

1 回答 1

4

QtSerialPort 模块应该返回 Windows 上的所有端口;这意味着它还将返回伪端口,而不仅仅是真正的本机端口。

这是不久前在图书馆做出的深思熟虑的决定。虽然 Unix 上的情况略有不同,但我可以向您保证,这是意料之中的。

但是,这是您面临的一个稍微不同的问题。这是 5.3 系列中报告的回归。您可以在此处关注相应的报告:

QSerialPortInfo::availablePorts() 有问题...

于 2014-07-20T20:28:59.847 回答