在path / org / freedesktop / NetworkManager / ActiveConnection /上的对象上没有这样的接口'org.freedesktop.DBus.Properties'

时间:2018-03-30 07:53:50

标签: qt networking dbus

我在用户的.profile文件(不是root)中启动我的qt应用程序,以使应用程序在启动时启动。有时,当我的应用程序启动时,它会报告如下警告:

  

“在路径/ org / freedesktop / NetworkManager / ActiveConnection / 1上的对象上没有这样的接口'org.freedesktop.DBus.Properties'”

我在谷歌搜索但没有找到解释。

似乎我的应用仍然正常,但我想找到问题。

应用程序在ubuntu上运行并使用Qt5。

提前致谢。

修改
我尝试根据Eligijus Pupeikis的帮助调试dbus:

gdbus introspect --system \
            --dest org.freedesktop.NetworkManager \
            --object-path /org/freedesktop/NetworkManager/ActiveConnection

它返回:

node /org/freedesktop/NetworkManager/ActiveConnection {
  node 0 {
  };
};

所以,这意味着没有像错误信息那样的对象,对吧? 而且,gns3 team member says这个问题与Qt和Ubuntu有关。

这是否意味着我不需要解决它?我不熟悉dbus和qt之间的关系。

1 个答案:

答案 0 :(得分:0)

很可能没有这样的对象"/org/freedesktop/NetworkManager/ActiveConnection/1",因此它无法找到'org.freedesktop.DBus.Properties'界面。

来自文档org.freedesktop.NetworkManager.Connection.Active

  

实现Connection.Active接口的对象表示尝试使用Connection对象提供的详细信息连接到网络。 Connection.Active对象跟踪连接尝试的生命周期,如果成功则指示连接的网络是否为"默认"或首选的访问网络。 NetworkManager具有连接概念,可以将其视为可以应用于网络设备的设置,配置文件或配置。此类设置连接作为D-Bus对象公开,并且活动连接表示设备和设置连接之间的这种关系。在任何时候,设置连接只能在一个设备上激活,反之亦然。但是,在激活和取消激活期间,多个活动连接可以引用相同的设备或设置连接,因为它们等待激活或取消激活。

您无法知道具有特定索引1的ActiveConnection对象存在,因此您需要通过阅读/org/freedesktop/NetworkManager对象的ActiveConnections属性进行检查{{1接口。

为了更好地可视化并理解它的外观,我建议使用D-Bus调试器。如果您使用的是Gnome,请查看D-Feet