尝试在DBus中调用远程方法时出错

时间:2013-04-03 10:35:22

标签: methods glib dbus

我正在尝试使用

调用远程方法
dbus_g_proxy_call(proxy,"myFunc",&error,G_TYPE_INVALID,G_TYPE_INVALID);

但是当我尝试这个时,我收到一条错误消息,说“方法”myFunc“with signature”“on interface”com.myinterface.dbus“”不存在“。我在这做错了什么? myFunc的类型为void,没有输入参数。

2 个答案:

答案 0 :(得分:0)

此错误表示服务器在proxy设置使用的路径中没有使用此名称/签名组合的方法。

这可能由于多种原因而发生,它可能已经崩溃或者由于某些其他原因而没有运行,或者它可能没有正确地注册该功能。

或者,您在创建proxy时可能没有使用正确的路径,或者您的服务器可能正在以错误的路径注册该方法。

如果没有看到更多代码,很难说出你的问题是什么。

答案 1 :(得分:0)

使用像D-Feet这样的工具反省服务实际导出的对象,接口和方法可能对此有所帮助。