이 페이지에서

QDBusConnection Class

QDBusConnection 클래스는 D-Bus 버스 데몬과의 연결을 나타냅니다. 더 보기...

헤더: #include <QDBusConnection>
CMake: find_package(Qt6 REQUIRED COMPONENTS DBus)
target_link_libraries(mytarget PRIVATE Qt6::DBus)
qmake: QT += dbus

공개 타입

enum BusType { SessionBus, SystemBus, ActivationBus }
flags ConnectionCapabilities
enum ConnectionCapability { UnixFileDescriptorPassing }
enum RegisterOption { ExportAdaptors, ExportScriptableSlots, ExportScriptableSignals, ExportScriptableProperties, ExportScriptableInvokables, …, ExportChildObjects }
flags RegisterOptions
enum UnregisterMode { UnregisterNode, UnregisterTree }

공개 함수

QDBusConnection(const QString &name)
QDBusConnection(const QDBusConnection &other)
~QDBusConnection()
QDBusPendingCall asyncCall(const QDBusMessage &message, int timeout = -1) const
QString baseService() const
QDBusMessage call(const QDBusMessage &message, QDBus::CallMode mode = QDBus::Block, int timeout = -1) const
bool callWithCallback(const QDBusMessage &message, QObject *receiver, const char *returnMethod, const char *errorMethod, int timeout = -1) const
bool connect(const QString &service, const QString &path, const QString &interface, const QString &name, QObject *receiver, const char *slot)
bool connect(const QString &service, const QString &path, const QString &interface, const QString &name, const QString &signature, QObject *receiver, const char *slot)
bool connect(const QString &service, const QString &path, const QString &interface, const QString &name, const QStringList &argumentMatch, const QString &signature, QObject *receiver, const char *slot)
QDBusConnection::ConnectionCapabilities connectionCapabilities() const
bool disconnect(const QString &service, const QString &path, const QString &interface, const QString &name, QObject *receiver, const char *slot)
bool disconnect(const QString &service, const QString &path, const QString &interface, const QString &name, const QString &signature, QObject *receiver, const char *slot)
bool disconnect(const QString &service, const QString &path, const QString &interface, const QString &name, const QStringList &argumentMatch, const QString &signature, QObject *receiver, const char *slot)
QDBusConnectionInterface *interface() const
bool isConnected() const
QDBusError lastError() const
QString name() const
QObject *objectRegisteredAt(const QString &path) const
bool registerObject(const QString &path, QObject *object, QDBusConnection::RegisterOptions options = ExportAdaptors)
bool registerObject(const QString &path, const QString &interface, QObject *object, QDBusConnection::RegisterOptions options = ExportAdaptors)
bool registerService(const QString &serviceName)
bool send(const QDBusMessage &message) const
void swap(QDBusConnection &other)
void unregisterObject(const QString &path, QDBusConnection::UnregisterMode mode = UnregisterNode)
bool unregisterService(const QString &serviceName)
QDBusConnection &operator=(const QDBusConnection &other)

정적 공용 멤버

QDBusConnection connectToBus(QDBusConnection::BusType type, const QString &name)
QDBusConnection connectToBus(const QString &address, const QString &name)
QDBusConnection connectToPeer(const QString &address, const QString &name)
void disconnectFromBus(const QString &name)
void disconnectFromPeer(const QString &name)
QByteArray localMachineId()
QDBusConnection sessionBus()
QDBusConnection systemBus()

상세 설명

이 클래스는 D-Bus 세션의 시작점입니다. 이를 사용하여 원격 객체 및 인터페이스에 접근하고, 원격 신호를 객체의 슬롯에 연결하며, 객체를 등록하는 등의 작업을 수행할 수 있습니다.

D-Bus 연결은 ` connectToBus()` 함수를 사용하여 생성되며, 이 함수는 서버 데몬에 대한 연결을 열고 초기 핸드셰이킹을 수행하며, 해당 연결을 이름과 연관시킵니다. 이후 동일한 이름을 사용하여 연결을 시도하면 동일한 연결이 반환됩니다.

연결은 disconnectFromBus() 함수를 사용하여 해제됩니다.

일단 연결이 끊어진 후 connectToBus()를 호출해도 연결이 재설정되지 않으므로, 새로운 QDBusConnection 인스턴스를 생성해야 합니다.

가장 일반적인 두 가지 연결 유형을 편리하게 사용할 수 있도록, sessionBus() 함수와 systemBus() 함수는 각각 세션 서버 데몬 및 시스템 서버 데몬에 대한 열린 연결을 반환합니다. 이러한 연결은 처음 사용될 때 열리고, QCoreApplication 소멸자가 실행될 때 닫힙니다.

D-Bus는 버스 서버 데몬 없이도 피어 투 피어(peer-to-peer) 연결을 지원합니다. 이 기능을 사용하면 두 애플리케이션이 서로 통신하며 메시지를 교환할 수 있습니다. 이는 QDBusServer 를 사용하여 다른 D-Bus 애플리케이션이 열어 둔 주소를 connectToBus() 함수에 전달함으로써 구현할 수 있습니다.

멤버 유형 문서

enum QDBusConnection::BusType

버스 연결 유형을 지정합니다. 유효한 버스 유형은 다음과 같습니다:

상수값설명
QDBusConnection::SessionBus0실행 중인 데스크톱 세션과 연결된 세션 버스
QDBusConnection::SystemBus1시스템 전체 프로세스와 통신하는 데 사용되는 시스템 버스
QDBusConnection::ActivationBus2활성화 버스: 서비스를 시작한 버스의 “별칭”

세션 버스에서는 동일한 사용자가 실행 중인, 동일한 데스크톱 세션을 공유하는 다른 애플리케이션들을 찾을 수 있습니다(이름에서 알 수 있듯이). 반면 시스템 버스에서는 대개 시스템 전체에서 공유되는 프로세스들이 발견됩니다.

enum QDBusConnection::ConnectionCapability
flags QDBusConnection::ConnectionCapabilities

이 열거형은 D-Bus 연결에서 사용할 수 있는 기능을 설명합니다.

상수값설명
QDBusConnection::UnixFileDescriptorPassing0x0001다른 프로세스로 Unix 파일 디스크립터를 전달할 수 있게 합니다( QDBusUnixFileDescriptor 참조).

ConnectionCapabilities 유형은 QFlags<ConnectionCapability>에 대한 typedef입니다. 이 유형은 ConnectionCapability 값들의 OR 조합을 저장합니다.

connectionCapabilities()도 참조하십시오 .

enum QDBusConnection::RegisterOption
flags QDBusConnection::RegisterOptions

연결에 객체를 등록하기 위한 옵션을 지정합니다. 가능한 값은 다음과 같습니다:

상수값설명
QDBusConnection::ExportAdaptors0x01이 객체에서 발견된 어댑터의 내용을 내보냅니다
QDBusConnection::ExportScriptableSlots0x10이 객체의 스크립트 가능한 슬롯을 내보냅니다
QDBusConnection::ExportScriptableSignals0x20이 객체의 스크립트 가능한 신호를 내보냅니다
QDBusConnection::ExportScriptableProperties0x40이 객체의 스크립트 가능한 속성을 내보냅니다.
QDBusConnection::ExportScriptableInvokables0x80이 객체의 스크립트 가능한 호출 가능 객체를 내보냅니다
QDBusConnection::ExportScriptableContents0xf0ExportScriptableSlots | ExportScriptableSignals | ExportScriptableProperties의 약식 표기
QDBusConnection::ExportNonScriptableSlots0x100이 객체의 스크립트 처리 불가능한 슬롯 내보내기
QDBusConnection::ExportNonScriptableSignals0x200이 객체의 스크립트 처리 불가능한 신호를 내보내기
QDBusConnection::ExportNonScriptableProperties0x400이 객체의 스크립트 처리 불가능한 속성을 내보내기
QDBusConnection::ExportNonScriptableInvokables0x800이 객체의 스크립트 처리 불가능한 호출 가능 항목을 내보내기
QDBusConnection::ExportNonScriptableContents0xf00ExportNonScriptableSlots | ExportNonScriptableSignals | ExportNonScriptableProperties의 약식 표기법
QDBusConnection::ExportAllSlotsExportScriptableSlots|ExportNonScriptableSlots이 객체의 모든 슬롯을 내보내기
QDBusConnection::ExportAllSignalsExportScriptableSignals|ExportNonScriptableSignals이 객체의 모든 신호를 내보내기
QDBusConnection::ExportAllPropertiesExportScriptableProperties|ExportNonScriptableProperties이 객체의 모든 속성을 내보내기
QDBusConnection::ExportAllInvokablesExportScriptableInvokables|ExportNonScriptableInvokables이 객체의 모든 호출 가능 항목을 내보내기
QDBusConnection::ExportAllContentsExportScriptableContents|ExportNonScriptableContents이 객체의 모든 내용을 내보내기
QDBusConnection::ExportChildObjects0x1000이 객체의 자식 객체들을 내보내기

RegisterOptions 유형은 QFlags<RegisterOption>에 대한 typedef입니다. 이 유형은 RegisterOption 값들의 OR 조합을 저장합니다.

registerObject(), QDBusAbstractAdaptor 및 어댑터 사용을참조하십시오 .

enum QDBusConnection::UnregisterMode

객체 경로를 등록 해제하는 모드:

상수값설명
QDBusConnection::UnregisterNode0이 노드만 등록 해제: 자식 객체는 등록 해제하지 않음
QDBusConnection::UnregisterTree1이 노드와 그 하위 트리 전체의 등록을 해제합니다

단, 이 객체가 ` ExportChildObjects ` 옵션으로 등록된 경우, `UnregisterNode`는 자식 객체들의 등록도 해제합니다.

멤버 함수 문서

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

name 라는 이름의 연결에 연결된 QDBusConnection 객체를 생성합니다.

이 메서드는 연결을 열지 않습니다. 연결을 열려면 connectToBus()을 호출해야 합니다.

QDBusConnection::QDBusConnection(const QDBusConnection &other)

other 연결의 복사본을 생성합니다.

[noexcept] QDBusConnection::~QDBusConnection()

이 객체를 해제합니다. 이 작업만으로는 연결이 닫히지 않으므로, 연결을 닫으려면 ` disconnectFromBus()`을 호출해야 합니다.

QDBusPendingCall QDBusConnection::asyncCall(const QDBusMessage &message, int timeout = -1) const

이 연결을 통해 message 를 전송하고 즉시 반환합니다. 이 함수는 메서드 호출에만 적합합니다. 이 함수는 응답 상태를 추적하는 데 사용할 수 있는 QDBusPendingCall 유형의 객체를 반환합니다.

timeout 밀리초 이내에 응답을 받지 못하면, 호출이 만료되었음을 나타내는 자동 오류가 전달됩니다. 기본 timeout 값은 -1이며, 이는 프로세스 간 통신에 적합한 구현 정의 값(일반적으로 25초)으로 대체됩니다. 이 타임아웃은 QDBusPendingCall::waitForFinished()에서 대기할 수 있는 최대 시간 제한이기도 합니다.

호출을 더 편리하게 수행하는 방법은 QDBusInterface::asyncCall() 함수를 참조하십시오.

참고: 구현상의 제한으로 인해, 애플리케이션 자체에서 등록한 객체에 대한메서드 호출은 절대 비동기적으로 수행되지 않습니다.

QString QDBusConnection::baseService() const

이 ` QDBusConnection ` 객체가 연결된 상태라면 해당 연결에 대한 고유한 연결 이름을 반환하고, 그렇지 않은 경우 빈 ` QString `을 반환합니다.

고유 연결 이름은 ":x.xxx" 형식(여기서 x는 10진수 자릿수)의 문자열로, 연결 시 D-Bus 서버 데몬에 의해 할당됩니다. 이는 버스에서 이 클라이언트를 고유하게 식별합니다.

이 함수는 피어 투 피어(peer-to-peer) 연결의 경우 빈 ` QString `을 반환합니다.

QDBusMessage QDBusConnection::call(const QDBusMessage &message, QDBus::CallMode mode = QDBus::Block, int timeout = -1) const

이 연결을 통해 ` message `을 전송하고, 응답을 기다리며 최대 ` timeout ` 밀리초 동안 대기합니다. 이 함수는 메서드 호출에만 적합합니다. 이 함수는 응답 메시지를 반환 값으로 제공하며, 반환 값의 타입은 ` QDBusMessage::ReplyMessage ` 또는 ` QDBusMessage::ErrorMessage` 중 하나입니다.

timeout 밀리초 이내에 응답을 받지 못하면 호출이 만료되었음을 나타내는 자동 오류가 전달됩니다. 기본값인 timeout 은 -1이며, 이는 프로세스 간 통신에 적합한 구현 정의 값(일반적으로 25초)으로 대체됩니다.

호출을 더 편리하게 수행하는 방법은 QDBusInterface::call() 함수를 참조하십시오.

경고: mode 가 QDBus::BlockWithGui 인경우 , 이 함수는 응답을 기다리기 위해 Qt 이벤트 루프로 재진입합니다. 대기 중에도 애플리케이션에 신호 및 기타 메서드 호출이 전달될 수 있습니다. 따라서 call()을 통해 호출이 이루어질 때마다 재진입을 처리할 준비가 되어 있어야 합니다.

bool QDBusConnection::callWithCallback(const QDBusMessage &message, QObject *receiver, const char *returnMethod, const char *errorMethod, int timeout = -1) const

이 연결을 통해 message 을 전송하고 즉시 반환합니다. 응답을 수신하면 receiver 객체에서 returnMethod 메서드가 호출됩니다. 오류가 발생하면 대신 errorMethod 메서드가 호출됩니다.

timeout 밀리초 이내에 응답을 받지 못하면, 호출이 만료되었음을 나타내는 자동 오류가 전달됩니다. 기본 timeout 는 -1이며, 이는 프로세스 간 통신에 적합한 구현 정의 값(일반적으로 25초)으로 대체됩니다.

이 함수는 메서드 호출에만 적합합니다. 매개변수 유형이 일치하고 오류가 발생하지 않는 한, 슬롯이 응답과 함께 정확히 한 번 호출될 것이 보장됩니다.

메시지가 전송된 경우 ` true `를 반환하고, 메시지를 전송할 수 없는 경우 `false`를 반환합니다.

bool QDBusConnection::connect(const QString &service, const QString &path, const QString &interface, const QString &name, QObject *receiver, const char *slot)

service, path, interface 및 name 매개변수로 지정된 신호를 객체 receiver 의 슬롯 slot 에 연결합니다. 인자 service 및 path 는 비워둘 수 있으며, 이는 임의의 원격 애플리케이션에서 (interface, name) 쌍의 임의의 신호로 연결됨을 의미합니다.

연결에 성공하면 ` true `을 반환합니다.

경고: 매개변수가 일치하는 경우에만신호가 슬롯으로 전달됩니다. 이 검증은 연결 시점이 아닌 신호를 수신할 때만 수행될 수 있습니다.

bool QDBusConnection::connect(const QString &service, const QString &path, const QString &interface, const QString &name, const QString &signature, QObject *receiver, const char *slot)

신호를 객체 ` receiver`의 슬롯 ` slot `에 연결합니다. 이전의 `connect()` 오버로딩과 달리, 이 함수는 ` signature ` 변수를 사용하여 연결할 매개변수 시그니처를 지정할 수 있게 해줍니다. 그런 다음 이 함수는 해당 시그니처가 ` slot `로 지정된 슬롯에 전달될 수 있는지 확인하고, 그렇지 않은 경우 `false`를 반환합니다.

연결에 성공하면 ` true `를 반환합니다.

참고: 이 함수는 신호 시그니처가 슬롯의 매개변수와 일치하는지 확인하지만, 원격 서비스에 주어진 시그니처를 가진 실제 신호가 존재하는지 여부는 확인하지 않습니다.

이 함수는 오버로드된 함수입니다.

bool QDBusConnection::connect(const QString &service, const QString &path, const QString &interface, const QString &name, const QStringList &argumentMatch, const QString &signature, QObject *receiver, const char *slot)

신호를 객체 ` receiver`의 슬롯 ` slot `에 연결합니다. 앞서 설명한 `connect()` 오버로드와 달리, 이 함수는 ` signature ` 변수를 사용하여 연결할 매개변수 시그니처를 지정할 수 있게 해줍니다. 그러면 이 함수는 해당 시그니처가 ` slot `로 지정된 슬롯에 전달될 수 있는지 확인하고, 그렇지 않은 경우 `false`를 반환합니다.

argumentMatch 매개변수는 일치시킬 문자열 매개변수를 순차적인 순서대로 나열합니다. 빈 문자열과 일치시키려면, 비어 있지만 null이 아닌 QString (예: QString(""))를 전달해야 한다는 점에 유의하십시오. null인 QString 은 해당 위치에서의 일치를 건너뜁니다.

연결에 성공하면 ` true `를 반환합니다.

참고: 이 함수는 신호 시그니처가 슬롯의 매개변수와 일치하는지 확인하지만, 원격 서비스에 주어진 시그니처를 가진 실제 신호가 존재하는지 여부는 확인하지 않습니다.

이 함수는 오버로드된 함수입니다.

[static] QDBusConnection QDBusConnection::connectToBus(QDBusConnection::BusType type, const QString &name)

알려진 버스 중 하나에 대해 ` type ` 유형의 연결을 열고, 해당 연결에 ` name`이라는 연결 이름을 할당합니다. 해당 연결과 연관된 ` QDBusConnection ` 객체를 반환합니다.

[static] QDBusConnection QDBusConnection::connectToBus(const QString &address, const QString &name)

address 주소의 전용 버스(private bus)에 대한 연결을 열고, 이 연결에 ‘ name ’라는 연결 이름을 할당합니다. 해당 연결과 연관된 QDBusConnection 객체를 반환합니다.

[static] QDBusConnection QDBusConnection::connectToPeer(const QString &address, const QString &name)

address 주소에서 피어 투 피어 연결을 열고, 이 연결에 name 라는 연결 이름을 할당합니다. 해당 연결과 연결된 QDBusConnection 객체를 반환합니다.

QDBusConnection::ConnectionCapabilities QDBusConnection::connectionCapabilities() const

버스 서버 또는 피어와 협상된 이 연결의 기능을 반환합니다. 이 ` QDBusConnection `가 연결되어 있지 않은 경우, 이 함수는 기능을 반환하지 않습니다.

bool QDBusConnection::disconnect(const QString &service, const QString &path, const QString &interface, const QString &name, QObject *receiver, const char *slot)

service, path, interface 및 name 매개변수로 지정된 신호를 객체 receiver 의 슬롯 slot 에서 분리합니다. 인수는 connect() 함수에 전달된 것과 동일해야 합니다.

연결 해제가 성공하면 ` true `를 반환합니다.

bool QDBusConnection::disconnect(const QString &service, const QString &path, const QString &interface, const QString &name, const QString &signature, QObject *receiver, const char *slot)

receiver 객체의 slot 슬롯에서 service, path, interface, name 및 signature 매개변수로 지정된 신호의 연결을 끊습니다. 인수는 connect() 함수에 전달된 것과 동일해야 합니다.

연결 해제가 성공하면 true 를 반환합니다.

이 함수는 오버로드된 함수입니다.

bool QDBusConnection::disconnect(const QString &service, const QString &path, const QString &interface, const QString &name, const QStringList &argumentMatch, const QString &signature, QObject *receiver, const char *slot)

receiver 객체의 slot 슬롯에서 service, path, interface, name, argumentMatch 및 signature 매개변수로 지정된 신호의 연결을 끊습니다. 인수는 connect() 함수에 전달된 것과 동일해야 합니다.

연결 해제가 성공하면 ` true `를 반환합니다.

이 함수는 오버로드된 함수입니다.

[static] void QDBusConnection::disconnectFromBus(const QString &name)

name 라는 이름의 버스 연결을 닫습니다.

동일한 연결에 여전히 QDBusConnection 객체가 연결되어 있는 경우, 모든 참조가 해제될 때까지 연결이 닫히지 않는다는 점에 유의하십시오. 단, QDBusConnection 생성자를 사용하여 더 이상 참조를 생성할 수는 없습니다.

[static] void QDBusConnection::disconnectFromPeer(const QString &name)

name 라는 이름의 피어 연결을 닫습니다.

동일한 연결과 연관된 QDBusConnection 객체가 여전히 존재하는 경우, 모든 참조가 해제될 때까지 연결이 닫히지 않는다는 점에 유의하십시오. 그러나 QDBusConnection 생성자를 사용하여 더 이상 참조를 생성할 수는 없습니다.

QDBusConnectionInterface *QDBusConnection::interface() const

이 연결의 D-Bus 서버 인터페이스를 나타내는 ` QDBusConnectionInterface ` 객체를 반환합니다.

bool QDBusConnection::isConnected() const

이 QDBusConnection 객체가 연결되어 있으면 ` true `를 반환합니다.

QDBusError QDBusConnection::lastError() const

이 연결에서 발생한 마지막 오류를 반환합니다.

이 함수는 저수준 코드용으로 제공됩니다. QDBusInterface::call()를 사용하는 경우, 오류 코드는 반환값을 통해 보고됩니다.

QDBusInterface 및 QDBusMessage도 참조하십시오 .

[static] QByteArray QDBusConnection::localMachineId()

D-Bus 시스템에 등록된 로컬 머신 ID를 반환합니다. D-Bus를 실행하는 각 노드 또는 호스트에는 고유 식별자가 있으며, 파일 시스템과 같은 리소스를 공유할 때 다른 호스트와 구별하는 데 사용할 수 있습니다.

로컬 머신 ID는 시스템 재부팅 후에도 유지된다는 보장이 없으므로, 이 식별자는 파일 시스템과 같은 영구 저장소에 저장해서는 안 됩니다. 이 ID는 현재 부팅 세션이 지속되는 동안에만 일정한 값을 유지한다는 것이 보장됩니다.

QString QDBusConnection::name() const

connectToBus() 함수의 name 매개변수로 지정된, 이 연결의 연결 이름을 반환합니다.

연결 이름은 버스에 대한 실제 기본 연결을 고유하게 식별하는 데 사용할 수 있습니다. 단일 연결에서 생성된 복사본은 항상 암묵적으로 기본 연결을 공유하므로, 동일한 연결 이름을 갖게 됩니다.

반대로, 서로 다른 연결 이름을 가진 두 연결은 항상 서로 다른 버스에 연결되어 있거나, 해당 버스에서 baseService() 함수가 반환하는 고유한 이름이 서로 다를 것입니다.

connectToBus() 및 disconnectFromBus()도 참조하십시오 .

QObject *QDBusConnection::objectRegisteredAt(const QString &path) const

path 에서 지정한 객체 경로에 따라 registerObject()에 등록된 객체를 반환합니다.

bool QDBusConnection::registerObject(const QString &path, QObject *object, QDBusConnection::RegisterOptions options = ExportAdaptors)

object 객체를 path 경로에 등록하고, 등록이 성공하면 true 를 반환합니다. options 매개변수는 object 객체 중 어느 정도를 D-Bus를 통해 노출할지 지정합니다.

이 함수는 기존 객체를 대체하지 않습니다. 경로 path 에 이미 등록된 객체가 있는 경우, 이 함수는 false를 반환합니다. 먼저 unregisterObject()를 사용하여 등록을 해제하십시오.

ExportChildObjects 플래그는 등록된 객체의 경로와 자식 객체의 QObject::objectName 을 기반으로 D-Bus에 자식 객체를 노출합니다. 따라서 자식 객체에 객체 이름이 지정되어 있어야 합니다.

ExportChildObjects 로 등록된 객체의 자식 객체로 다른 객체를 등록할 수는 없습니다.

bool QDBusConnection::registerObject(const QString &path, const QString &interface, QObject *object, QDBusConnection::RegisterOptions options = ExportAdaptors)

object 객체를 path 경로에 interface 인터페이스 이름으로 등록하고, 등록에 성공하면 true 를 반환합니다. options 매개변수는 object 객체의 어느 부분을 D-Bus를 통해 노출할지 지정합니다.

이 함수는 기존 객체를 대체하지 않습니다. 경로 path 에 이미 등록된 객체가 있는 경우, 이 함수는 false를 반환합니다. 먼저 unregisterObject()를 사용하여 등록을 해제하십시오.

ExportChildObjects 플래그는 등록된 객체의 경로와 자식 객체의 QObject::objectName 을 기반으로 D-Bus에 자식 객체를 노출합니다. 따라서 자식 객체에는 객체 이름이 반드시 있어야 합니다.

ExportChildObjects 로 등록된 객체의 자식 객체로 다른 객체를 등록할 수는 없습니다.

이 함수는 오버로드된 함수입니다.

bool QDBusConnection::registerService(const QString &serviceName)

serviceName 를 D-Bus 서버에 등록하려고 시도하며, 등록에 성공하면 true 를 반환합니다. 해당 이름이 다른 애플리케이션에 의해 이미 등록되어 있는 경우 등록은 실패합니다.

unregisterService() 및 QDBusConnectionInterface::registerService()도 참조하십시오 .

bool QDBusConnection::send(const QDBusMessage &message) const

응답을 기다리지 않고 이 연결을 통해 ` message `를 전송합니다. 이는 오류, 신호, 반환값은 물론 반환값이 필요하지 않은 호출에 적합합니다.

메시지가 큐에 성공적으로 등록되면 ` true `를 반환하고, 그렇지 않으면 `false`를 반환합니다.

[static] QDBusConnection QDBusConnection::sessionBus()

세션 버스를 통해 열린 ` QDBusConnection ` 객체를 반환합니다. 이 함수가 반환하는 객체 참조는 애플리케이션이 종료될 때까지 유효하며, 애플리케이션이 종료되면 연결이 닫히고 객체가 삭제됩니다.

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

이 연결을 other 로 교체합니다. 이 작업은 매우 빠르며 절대 실패하지 않습니다.

[static] QDBusConnection QDBusConnection::systemBus()

시스템 버스를 통해 열린 ` QDBusConnection ` 객체를 반환합니다. 이 함수가 반환하는 객체 참조는 ` QCoreApplication`의 소멸자가 실행될 때까지 유효하며, 이때 연결이 닫히고 객체가 삭제됩니다.

void QDBusConnection::unregisterObject(const QString &path, QDBusConnection::UnregisterMode mode = UnregisterNode)

path 로 지정된 객체 경로에서 registerObject()을 통해 등록된 객체의 등록을 해제하며, mode 가 QDBusConnection::UnregisterTree 인 경우 해당 객체의 모든 하위 객체에 대해서도 등록을 해제합니다.

registerObject()를 통해 등록되지 않은 객체는 등록을 해제할 수 없다는 점에 유의하십시오.

bool QDBusConnection::unregisterService(const QString &serviceName)

이전에 registerService()을 통해 등록된 서비스 serviceName 의 등록을 해제하며, 성공하면 true 를 반환합니다.

registerService() 및 QDBusConnectionInterface::unregisterService()도 참조하십시오 .

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

이 객체에 other 연결의 복사본을 생성합니다. 복사 전에 이 객체가 참조하던 연결이 자동으로 끊어지지 않는다는 점에 유의하십시오.

disconnectFromBus()도 참조하십시오 .

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