Qt D-Bus
D-Bus ist ein Inter-Process Communication (IPC) und Remote Procedure Calling (RPC) Mechanismus, der ursprünglich für Linux entwickelt wurde, um bestehende und konkurrierende IPC-Lösungen durch ein einheitliches Protokoll zu ersetzen. Er wurde auch entwickelt, um die Kommunikation zwischen Prozessen auf Systemebene (z. B. Drucker- und Hardwaretreiberdienste) und normalen Benutzerprozessen zu ermöglichen.
Es verwendet ein schnelles, binäres Message-Passing-Protokoll, das aufgrund seiner geringen Latenzzeit und seines geringen Overheads für die Kommunikation zwischen denselben Maschinen geeignet ist. Seine Spezifikation wird derzeit vom Projekt freedesktop.org
definiert und ist für alle Beteiligten verfügbar.
Die Kommunikation erfolgt im Allgemeinen über eine zentrale Serveranwendung, die als "Bus" bezeichnet wird (daher der Name), aber auch eine direkte Kommunikation zwischen den Anwendungen ist möglich. Bei der Kommunikation über einen Bus können die Anwendungen abfragen, welche anderen Anwendungen und Dienste verfügbar sind, und diese bei Bedarf aktivieren.
Verwendung des Moduls
Die Verwendung der C++-API eines Qt-Moduls erfordert eine Verknüpfung mit der Modulbibliothek, entweder direkt oder über andere Abhängigkeiten. Mehrere Build-Tools bieten hierfür spezielle Unterstützung, darunter CMake und qmake.
Verwenden Sie den Befehl find_package()
, um die benötigte Modulkomponente im Paket Qt6
zu finden:
find_package(Qt6 REQUIRED COMPONENTS DBus) target_link_libraries(mytarget PRIVATE Qt6::DBus)
Weitere Einzelheiten finden Sie in der Übersicht Build with CMake.
Artikel und Leitfäden
Die folgenden Dokumente enthalten Informationen über die D-Bus-Integrationsfunktionen von Qt und liefern Details über die Mechanismen, die zum Senden und Empfangen von Typinformationen über den Bus verwendet werden:
- Qt D-Bus Übersicht
- Verwendung von Qt D-Bus Adaptoren
- Das Qt D-Bus Typsystem
- Qt D-Bus XML Compiler (qdbusxml2cpp)
- D-Bus Viewer
Beispiele
Referenz
Modul-Entwicklung
Änderungen an Qt D-Bus listet wichtige Änderungen an der Modul-API und -Funktionalität auf, die für die Qt 6-Serie von Qt vorgenommen wurden.
Lizenzen und Namensnennung
Das Modul Qt D-Bus ist unter kommerziellen Lizenzen von The Qt Company erhältlich. Darüber hinaus ist es unter freien Software-Lizenzen verfügbar: Die GNU Lesser General Public License, Version 3, oder die GNU General Public License, Version 2. Siehe Qt Licensing für weitere Details.
Darüber hinaus kann Qt D-Bus in Qt 6.8.2 Module von Drittanbietern unter den folgenden zulässigen Lizenzen enthalten:
Academic Free License v2.1, oder GNU General Public License v2.0 oder höher |
© 2025 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.