//! [0] class MyObject: public QObject, protected QDBusContext { Q_OBJECT QDBusConnection conn; QDBusMessage msg; ... protected slots: void process(); public slots: void methodWithError(); QString methodWithDelayedReply(); }; void MyObject::methodWithError() { sendErrorReply(QDBusError::NotSupported, "The method call 'methodWithError()' is not supported"); } QString MyObject::methodWithDelayedReply() { conn = connection(); msg = message(); setDelayedReply(true); QMetaObject::invokeMethod(this, "process", Qt::QueuedConnection); return QString(); } //! [0]