Sur cette page

QDBusError Class

La classe QDBusError représente une erreur reçue du bus D-Bus ou d'applications distantes trouvées dans le bus. Plus d'informations...

En-tête : #include <QDBusError>
CMake : find_package(Qt6 REQUIRED COMPONENTS DBus)
target_link_libraries(mytarget PRIVATE Qt6::DBus)
qmake : QT += dbus

Types publics

enum ErrorType { NoError, Other, Failed, NoMemory, ServiceUnknown, …, InvalidInterface }

Fonctions publiques

bool isValid() const
QString message() const
QString name() const
void swap(QDBusError &other)
QDBusError::ErrorType type() const

Membres publics statiques

QString errorString(QDBusError::ErrorType error)

Description détaillée

Lorsque l'on traite avec le service de bus D-Bus ou avec des applications distantes via D-Bus, un certain nombre de conditions d'erreur peuvent se produire. Ces conditions d'erreur sont parfois signalées par une valeur d'erreur renvoyée ou par un QDBusError.

Les exceptions C++ et Java sont une analogie valable pour les erreurs D-Bus : au lieu de retourner normalement avec une valeur de retour, les applications distantes et le bus peuvent décider de lancer une condition d'erreur. Cependant, l'implémentation de Qt D-Bus n'utilise pas le mécanisme d'exception C++, vous recevrez donc des QDBusErrors dans la réponse de retour (voir QDBusReply::error()).

Les objets QDBusError sont utilisés pour inspecter le nom et le message d'erreur tels qu'ils sont reçus du bus et des applications distantes. Vous ne devez pas créer ces objets vous-même pour signaler des conditions d'erreur lors d'un appel à partir de D-Bus : utilisez plutôt QDBusMessage::createError() et QDBusConnection::send().

Voir également QDBusConnection::send(), QDBusMessage, et QDBusReply.

Documentation sur les types de membres

enum QDBusError::ErrorType

Afin de faciliter la vérification des erreurs D-Bus les plus courantes générées par l'implémentation D-Bus et par le démon de bus lui-même, QDBusError peut être comparé à un ensemble de valeurs prédéfinies :

ConstanteValeurValeur Constante Description
QDBusError::NoError0QDBusError est invalide (c'est-à-dire que l'appel a réussi)
QDBusError::Other1QDBusError contient une erreur qui n'est pas l'une des erreurs bien connues
QDBusError::Failed2L'appel a échoué (org.freedesktop.DBus.Error.Failed)
QDBusError::NoMemory3Mémoire insuffisante (org.freedesktop.DBus.Error.NoMemory)
QDBusError::ServiceUnknown4Le service appelé n'est pas connu (org.freedesktop.DBus.Error.ServiceUnknown)
QDBusError::NoReply5La méthode appelée n'a pas répondu dans le délai spécifié (org.freedesktop.DBus.Error.NoReply)
QDBusError::BadAddress6L'adresse donnée n'est pas valide (org.freedesktop.DBus.Error.BadAddress)
QDBusError::NotSupported7L'appel/opération n'est pas pris en charge (org.freedesktop.DBus.Error.NotSupported)
QDBusError::LimitsExceeded8Les limites allouées à ce processus/appel/connexion ont dépassé les valeurs prédéfinies (org.freedesktop.DBus.Error.LimitsExceeded)
QDBusError::AccessDenied9L'appel/opération a essayé d'accéder à une ressource à laquelle il n'est pas autorisé (org.freedesktop.DBus.Error.AccessDenied)
QDBusError::NoServer10La documentation ne dit pas à quoi cela sert (org.freedesktop.DBus.Error.NoServer)
QDBusError::Timeout11La documentation ne dit pas à quoi cela sert ni comment c'est utilisé (org.freedesktop.DBus.Error.Timeout)
QDBusError::NoNetwork12La documentation ne dit pas à quoi cela sert (org.freedesktop.DBus.Error.NoNetwork)
QDBusError::AddressInUse13QDBusServer a essayé de se lier à une adresse qui est déjà utilisée (org.freedesktop.DBus.Error.AddressInUse)
QDBusError::Disconnected14L'appel/le processus/le message a été envoyé après la déconnexion de QDBusConnection (org.freedesktop.DBus.Error.Disconnected)
QDBusError::InvalidArgs15Les arguments passés à cet appel/opération ne sont pas valides (org.freedesktop.DBus.Error.InvalidArgs)
QDBusError::UnknownMethod16La méthode appelée n'a pas été trouvée dans cet objet/interface avec les paramètres donnés (org.freedesktop.DBus.Error.UnknownMethod)
QDBusError::TimedOut17La documentation ne dit pas... (org.freedesktop.DBus.Error.TimedOut)
QDBusError::InvalidSignature18La signature du type n'est pas valide ou compatible (org.freedesktop.DBus.Error.InvalidSignature)
QDBusError::UnknownInterface19L'interface n'est pas connue dans cet objet (org.freedesktop.DBus.Error.UnknownInterface)
QDBusError::UnknownObject20Le chemin de l'objet pointe vers un objet qui n'existe pas (org.freedesktop.DBus.Error.UnknownObject)
QDBusError::UnknownProperty21La propriété n'existe pas dans cette interface (org.freedesktop.DBus.Error.UnknownProperty)
QDBusError::PropertyReadOnly22Le jeu de propriétés a échoué car la propriété est en lecture seule (org.freedesktop.DBus.Error.PropertyReadOnly)
QDBusError::InternalError23Une erreur interne s'est produite
QDBusError::InvalidObjectPath25Le chemin d'accès à l'objet fourni n'est pas valide.
QDBusError::InvalidService24Le service demandé n'est pas valide.
QDBusError::InvalidMember27Le membre n'est pas valide.
QDBusError::InvalidInterface26L'interface n'est pas valide.

Documentation des fonctions membres

[static] QString QDBusError::errorString(QDBusError::ErrorType error)

Renvoie le nom de l'erreur associée à la condition d'erreur error.

bool QDBusError::isValid() const

Renvoie true s'il s'agit d'une condition d'erreur valide (c'est-à-dire s'il y a eu une erreur), sinon false.

QString QDBusError::message() const

Renvoie le message que l'appelant a associé à cette erreur. Les messages d'erreur sont définis par l'implémentation et contiennent généralement un code d'erreur lisible par l'homme, ce qui ne signifie pas pour autant qu'ils conviennent à vos utilisateurs finaux.

QString QDBusError::name() const

Renvoie le nom de cette erreur. Les noms des erreurs sont similaires aux noms des interfaces D-Bus, comme org.freedesktop.DBus.InvalidArgs.

Voir aussi type().

[noexcept] void QDBusError::swap(QDBusError &other)

Remplace cette erreur par other. Cette opération est très rapide et n'échoue jamais.

QDBusError::ErrorType QDBusError::type() const

Renvoie l'erreur ErrorType.

Voir aussi ErrorType.

© 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.