这是我第一次使用DBus,所以请容忍我。这是我的密码:
import gobject
import pprint
gobject.threads_init()
from dbus import glib
glib.init_threads()
import dbus
bus = dbus.SessionBus()
remote_object = bus.get_object("org.freedesktop.UDisks", # Connection name
"/org/freedesktop/UDisks" # Object's path
)
print ("Introspection data:\n")
print remote_object.Introspect()
print remote_object.get_dbus_method("ListNames",dbus_interface="org.freedesktop.DBus")
for item in remote_object.ListNames():
print item我得到的错误是:
dbus.exceptions.DBusException: org.freedesktop.DBus.Error.ServiceUnknown: The name org.freedesktop.UDisks was not provided by any .service files来自udisk-恶魔命令
udisks-守护进程在系统消息总线上提供org.freedesktop.UDisks服务。用户或管理员不应该需要启动这个守护进程,因为每当应用程序调用org.freedesktop.UDisks服务时,它都会由dbus-守护进程(1)自动启动。查看udisk(7)手册页,了解如何自定义udisks守护进程的工作方式。
编辑:所以是SystemSession()而不是SessionBus()
发布于 2010-11-10 09:01:06
您可以尝试使用DFeet来检查这个dbus对象是否真的存在。
https://stackoverflow.com/questions/4142690
复制相似问题