首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >为什么QDBus会抱怨错误的类型?

为什么QDBus会抱怨错误的类型?
EN

Stack Overflow用户
提问于 2022-02-28 18:27:40
回答 1查看 53关注 0票数 0

下面的片段有什么问题?我一直在犯错误

Unexpected reply signature: got "a{sa{sv}}", expected "" (QMap<QString,QVariantMap>)

代码语言:javascript
复制
QDBusInterface connIface(
                    NM_DBUS_SERVICE,
                    "/org/freedesktop/NetworkManager/Settings/1",
                    NM_DBUS_INTERFACE_SETTINGS_CONNECTION,
                    QDBusConnection::systemBus());

QDBusReply<QMap<QString, QMap<QString, QVariant>> > settingsResult = connIface.call("GetSettings");

我真的不明白,对我来说似乎很好。这是否可能与编译器/标头版本有某种关系?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2022-03-01 12:53:35

您必须首先注册预期的响应!

对我来说就像

代码语言:javascript
复制
#include <QtDBus/QDBusMetaType>
// ...
typedef QMap<QString, QMap<QString, QVariant> > ConnectionDetails;
Q_DECLARE_METATYPE(ConnectionDetails)

代码语言:javascript
复制
int main() {
    qDBusRegisterMetaType<ConnectionDetails>();
    // ...
}
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/71299488

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档