Auf dieser Seite

QSerialPortInfo Class

Liefert Informationen zu vorhandenen seriellen Schnittstellen. Mehr...

Überschrift: #include <QSerialPortInfo>
CMake: find_package(Qt6 REQUIRED COMPONENTS SerialPort)
target_link_libraries(mytarget PRIVATE Qt6::SerialPort)
qmake: QT += serialport

Öffentliche Funktionen

QSerialPortInfo()
QSerialPortInfo(const QSerialPort &port)
QSerialPortInfo(const QString &name)
QSerialPortInfo(const QSerialPortInfo &other)
~QSerialPortInfo()
QString description() const
bool hasProductIdentifier() const
bool hasVendorIdentifier() const
bool isNull() const
QString manufacturer() const
QString portName() const
quint16 productIdentifier() const
QString serialNumber() const
void swap(QSerialPortInfo &other)
QString systemLocation() const
quint16 vendorIdentifier() const
QSerialPortInfo &operator=(const QSerialPortInfo &other)

Statische öffentliche Mitglieder

QList<QSerialPortInfo> availablePorts()
QList<qint32> standardBaudRates()

Ausführliche Beschreibung

Verwenden Sie die statische Funktion ` availablePorts()` zur Erzeugung einer Liste von `QSerialPortInfo`-Objekten. Jedes `QSerialPortInfo`-Objekt in der Liste repräsentiert einen einzelnen seriellen Anschluss und kann nach ` port name`, ` system location`, ` description`, ` manufacturer` sowie einigen weiteren Hardware-Parametern abgefragt werden. Die Klasse `QSerialPortInfo` kann zudem als Eingabeparameter für die Methode ` setPort()` der Klasse ` QSerialPort ` verwendet werden.

Anwendungsbeispiel

Der Beispielcode listet alle verfügbaren seriellen Schnittstellen auf und gibt deren Parameter auf der Konsole aus:

   const auto serialPortInfos = QSerialPortInfo::availablePorts();
    for (const QSerialPortInfo&portInfo: serialPortInfos) {
        qDebug() << "\n"
                <<  „Anschluss:“ << portInfo.portName() <<  „ \ n “
                <<  „Standort:“ << portInfo.systemLocation() <<  „\n“
                 <<  „Beschreibung:“ << portInfo.description()<<  „\n“
                <<  „Hersteller:“ << portInfo.manufacturer() <<  „\n“
                 <<  „Seriennummer:“ << portInfo.serialNumber() <<  „\n“
                 <<  „Herstellerkennung:“
                << (portInfo.hasVendorIdentifier()
                     ? QByteArray::number(portInfo.vendorIdentifier(), 16)
                     : QByteArray()) << "\n"
                 << "Produktkennung:"
                 << (portInfo.hasProductIdentifier()
                     ? QByteArray::number(portInfo.productIdentifier(), 16)
                     : QByteArray());
    }

Port-Aufzählung unter Linux

Standardmäßig verwendet Linux ` libudev `, um die verfügbaren seriellen Schnittstellen aufzulisten. Ist die Bibliothek nicht verfügbar, greift das Programm auf das Lesen von Dateien im Verzeichnis ` /sys/class/tty ` zurück.

Es ist bekannt, dass einige Versionen von „ libudev “ einen Fehler aufweisen und fälschlicherweise die VID und PID eines USB-Hubs anstelle des tatsächlichen Geräts melden. In solchen Fällen definieren Sie die Umgebungsvariable „ QT_SERIALPORT_SKIP_UDEV_LOOKUP “, um die Suche in „ libudev “ zu überspringen und ausschließlich die Informationen aus dem Verzeichnis „ /sys/class/tty “ zu verwenden.

Siehe auch QSerialPort.

Dokumentation zu Mitgliedsfunktionen

QSerialPortInfo::QSerialPortInfo()

Erstellt ein leeres QSerialPortInfo-Objekt.

Siehe auch ` isNull()`.

[explicit] QSerialPortInfo::QSerialPortInfo(const QSerialPort &port)

Erstellt ein QSerialPortInfo-Objekt aus dem seriellen port.

[explicit] QSerialPortInfo::QSerialPortInfo(const QString &name)

Erstellt ein QSerialPortInfo-Objekt anhand des seriellen Anschlusses „ name “.

Dieser Konstruktor ermittelt anhand des Portnamens „ name “ den entsprechenden seriellen Port unter den verfügbaren Ports und erstellt die Instanz der seriellen Port-Informationen für diesen Port.

QSerialPortInfo::QSerialPortInfo(const QSerialPortInfo &other)

Erstellt eine Kopie von „ other “.

[noexcept] QSerialPortInfo::~QSerialPortInfo()

Löscht das Objekt „ QSerialPortInfo “. Verweise auf die Werte in diesem Objekt werden ungültig.

[static] QList<QSerialPortInfo> QSerialPortInfo::availablePorts()

Gibt eine Liste der auf dem System verfügbaren seriellen Schnittstellen zurück.

Siehe auch Port enumeration on Linux.

QString QSerialPortInfo::description() const

Gibt die Beschreibungszeichenfolge der seriellen Schnittstelle zurück, sofern verfügbar; andernfalls wird eine leere Zeichenfolge zurückgegeben.

Siehe auch manufacturer() und serialNumber().

bool QSerialPortInfo::hasProductIdentifier() const

Gibt „ true “ zurück, wenn eine gültige Produktnummer unter 16-bit vorhanden ist; andernfalls wird „ false “ zurückgegeben.

Siehe auch productIdentifier(), vendorIdentifier() und hasVendorIdentifier().

bool QSerialPortInfo::hasVendorIdentifier() const

Gibt „ true “ zurück, wenn eine gültige Anbieternummer von 16-bit vorhanden ist; andernfalls wird „ false “ zurückgegeben.

Siehe auch vendorIdentifier(), productIdentifier() und hasProductIdentifier().

bool QSerialPortInfo::isNull() const

Gibt zurück, ob dieses „ QSerialPortInfo “-Objekt eine Definition für eine serielle Schnittstelle enthält.

QString QSerialPortInfo::manufacturer() const

Gibt die Herstellerangabe des seriellen Anschlusses zurück, sofern verfügbar; andernfalls wird eine leere Zeichenkette zurückgegeben.

Siehe auch „ description()“ und „ serialNumber()“.

QString QSerialPortInfo::portName() const

Gibt den Namen des seriellen Anschlusses zurück.

Siehe auch „ systemLocation()“.

quint16 QSerialPortInfo::productIdentifier() const

Gibt die 16-Bit-Produktnummer für die serielle Schnittstelle zurück, sofern verfügbar; andernfalls wird Null zurückgegeben.

Siehe auch hasProductIdentifier(), vendorIdentifier() und hasVendorIdentifier().

QString QSerialPortInfo::serialNumber() const

Gibt die Seriennummer des seriellen Anschlusses als Zeichenkette zurück, sofern verfügbar; andernfalls wird eine leere Zeichenkette zurückgegeben.

Hinweis: Die Seriennummer kann Buchstaben enthalten.

Siehe auch „ description()“ und „ manufacturer()“.

[static] QList<qint32> QSerialPortInfo::standardBaudRates()

Gibt eine Liste der verfügbaren Standard-Baudraten zurück, die von der Zielplattform unterstützt werden.

void QSerialPortInfo::swap(QSerialPortInfo &other)

Ersetzt QSerialPortInfo other durch QSerialPortInfo. Dieser Vorgang ist sehr schnell und schlägt niemals fehl.

QString QSerialPortInfo::systemLocation() const

Gibt den Systempfad des seriellen Anschlusses zurück.

Siehe auch „ portName()“.

quint16 QSerialPortInfo::vendorIdentifier() const

Gibt die 16-Bit-Herstellernummer für die serielle Schnittstelle zurück, sofern verfügbar; andernfalls wird Null zurückgegeben.

Siehe auch hasVendorIdentifier(), productIdentifier() und hasProductIdentifier().

QSerialPortInfo &QSerialPortInfo::operator=(const QSerialPortInfo &other)

Setzt das Objekt „ QSerialPortInfo “ so, dass es mit „ other “ übereinstimmt.

© 2026 The Qt Company Ltd. Documentation contributions included herein are the copyrights of their respective owners. The documentation provided herein is licensed under the terms of the GNU Free Documentation License version 1.3 as published by the Free Software Foundation. Qt and respective logos are trademarks of The Qt Company Ltd. in Finland and/or other countries worldwide. All other trademarks are property of their respective owners.