QDBusError Class
QDBusErrorクラスは、D-Busバスまたはバス内で見つかったリモート・アプリケーションから受信したエラーを表します。詳細...
ヘッダー | #include <QDBusError> |
CMake: | find_package(Qt6 REQUIRED COMPONENTS DBus) target_link_libraries(mytarget PRIVATE Qt6::DBus) |
qmake: | QT += dbus |
パブリックな型
enum | ErrorType { NoError, Other, Failed, NoMemory, ServiceUnknown, …, InvalidInterface } |
パブリック関数
bool | isValid() const |
QString | message() const |
QString | name() const |
void | swap(QDBusError &other) |
QDBusError::ErrorType | type() const |
静的パブリックメンバ
QString | errorString(QDBusError::ErrorType error) |
詳細説明
D-Busバス・サービスやD-Busを介したリモート・アプリケーションを扱う場合、多くのエラー状態が発生する可能性があります。このエラー状態は、返されるエラー値や QDBusError によって通知されることがあります。
C++ や Java の例外は、D-Bus エラーの有効なアナロジーです。リモー ト・アプリケーションとバスは、戻り値で正常に戻る代わりに、エラー状 態をスローすることにします。しかし、Qt D-Bus の実装では C++ の例外スロー・メカニズムを使用していないため、リターン・リプライで QDBusError を受け取ることになります(QDBusReply::error() を参照)。
QDBusError オブジェクトは、バスおよびリモート・アプリケーションから受信したエ ラー名とメッセージを検査するために使用されます。D-Bus から呼び出されたときにエラー状態を通知するために、このようなオブジェクトを自 分で作成しないでください。代わりに、QDBusMessage::createError() とQDBusConnection::send() を使用してください。
QDBusConnection::send()、QDBusMessage 、QDBusReplyも参照の こと。
メンバ型ドキュメント
enum QDBusError::ErrorType
D-Bus実装とバスデーモン自身によって生成される最も一般的なD-Busエラーの検証を容易にするために、QDBusError 、事前に定義された値のセットと比較することができます:
定数 | 値 | 説明 |
---|---|---|
QDBusError::NoError | 0 | QDBusError は無効です(すなわち、呼び出しは成功しました)。 |
QDBusError::Other | 1 | QDBusError よく知られているエラー以外のエラーが含まれています。 |
QDBusError::Failed | 2 | 呼び出しに失敗しました (org.freedesktop.DBus.Error.Failed ) |
QDBusError::NoMemory | 3 | メモリ不足 (org.freedesktop.DBus.Error.NoMemory ) |
QDBusError::ServiceUnknown | 4 | 呼び出されたサービスが不明 (org.freedesktop.DBus.Error.ServiceUnknown ) |
QDBusError::NoReply | 5 | 呼び出されたメソッドが指定されたタイムアウト内に応答しなかった (org.freedesktop.DBus.Error.NoReply ) |
QDBusError::BadAddress | 6 | 指定されたアドレスが有効でない (org.freedesktop.DBus.Error.BadAddress ) |
QDBusError::NotSupported | 7 | その呼び出し/操作はサポートされていません (org.freedesktop.DBus.Error.NotSupported ) |
QDBusError::LimitsExceeded | 8 | このプロセス/コール/接続に割り当てられた制限が、事前に定義された値を超えている (org.freedesktop.DBus.Error.LimitsExceeded ) |
QDBusError::AccessDenied | 9 | コール/操作は許可されていないリソースにアクセスしようとしました (org.freedesktop.DBus.Error.AccessDenied ) |
QDBusError::NoServer | 10 | ドキュメントに何のための処理か記載されていない(org.freedesktop.DBus.Error.NoServer ) |
QDBusError::Timeout | 11 | ドキュメントには、これが何に使用されるのか、どのように使用されるのかが書かれていない(org.freedesktop.DBus.Error.Timeout ) |
QDBusError::NoNetwork | 12 | ドキュメントにはこれが何のためにあるのか書かれていない(org.freedesktop.DBus.Error.NoNetwork ) |
QDBusError::AddressInUse | 13 | QDBusServer すでに使用されているアドレスにバインドしようとした ( )org.freedesktop.DBus.Error.AddressInUse |
QDBusError::Disconnected | 14 | コール/プロセス/メッセージは、QDBusConnection が切断された後に送信された (org.freedesktop.DBus.Error.Disconnected ) |
QDBusError::InvalidArgs | 15 | このコール/操作に渡された引数が有効でない (org.freedesktop.DBus.Error.InvalidArgs ) |
QDBusError::UnknownMethod | 16 | 呼び出されたメソッドが、指定されたパラメータでこのオブジェクト/インターフェースに見つからなかった (org.freedesktop.DBus.Error.UnknownMethod ) |
QDBusError::TimedOut | 17 | ドキュメントに記述がありません...(org.freedesktop.DBus.Error.TimedOut ) |
QDBusError::InvalidSignature | 18 | 型シグネチャが有効でないか、互換性がない (org.freedesktop.DBus.Error.InvalidSignature ) |
QDBusError::UnknownInterface | 19 | インターフェイスがこのオブジェクトにない (org.freedesktop.DBus.Error.UnknownInterface ) |
QDBusError::UnknownObject | 20 | オブジェクト・パスが存在しないオブジェクトを指している (org.freedesktop.DBus.Error.UnknownObject ) |
QDBusError::UnknownProperty | 21 | プロパティがこのインタフェースに存在しません (org.freedesktop.DBus.Error.UnknownProperty ) |
QDBusError::PropertyReadOnly | 22 | プロパティが読み取り専用であるため、プロパティ・セットに失敗しました (org.freedesktop.DBus.Error.PropertyReadOnly ) |
QDBusError::InternalError | 23 | 内部エラーが発生しました。 |
QDBusError::InvalidObjectPath | 25 | 指定されたオブジェクト・パスが無効です。 |
QDBusError::InvalidService | 24 | 要求されたサービスが無効です。 |
QDBusError::InvalidMember | 27 | メンバが無効です。 |
QDBusError::InvalidInterface | 26 | インタフェースが無効です。 |
メンバ関数のドキュメント
[static]
QString QDBusError::errorString(QDBusError::ErrorType error)
エラー状態error に関連するエラー名を返す。
bool QDBusError::isValid() const
有効なエラー状態であれば(つまりエラーがあれば)true
、そうでなければfalseを返す。
QString QDBusError::message() const
このエラーに関連付けられたメッセージを返します。エラーメッセージは実装で定義されており、通常は人間が読めるエラーコードを含んでいます。
QString QDBusError::name() const
このエラーの名前を返す。エラー名はorg.freedesktop.DBus.InvalidArgs
のような D-Bus Interface の名前に似ている。
type()も参照のこと 。
[noexcept]
void QDBusError::swap(QDBusError &other)
このエラーをother と入れ替える。この操作は非常に速く、失敗することはない。
QDBusError::ErrorType QDBusError::type() const
このエラーのErrorType を返す。
ErrorTypeも参照 。
© 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.