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:

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:

libdus-1 headers, version dbus-1.13.12

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.