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

You*_*uCL 8 networking qt 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
Run Code Online (Sandbox Code Playgroud)

它返回:

node /org/freedesktop/NetworkManager/ActiveConnection {
  node 0 {
  };
};
Run Code Online (Sandbox Code Playgroud)

那么,这意味着没有错误消息所说的那样的对象,对吗?
而且,这个gns3 团队成员说这个问题是关于 Qt 和 Ubuntu。

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

Eli*_*kis 1

很可能不存在这样的对象"/org/freedesktop/NetworkManager/ActiveConnection/1",因此无法找到'org.freedesktop.DBus.Properties'接口。

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

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

您无法知道ActiveConnection索引为 1 的对象是否存在,因此您需要通过从对象接口读取ActiveConnections属性来进行检查。/org/freedesktop/NetworkManagerorg.freedesktop.NetworkManager

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