在没有 GNOME 的情况下使用 glib gio GVolumeMonitor
Posted
技术标签:
【中文标题】在没有 GNOME 的情况下使用 glib gio GVolumeMonitor【英文标题】:use glib gio GVolumeMonitor without GNOME 【发布时间】:2012-10-13 22:58:32 【问题描述】:我对 glib / gio GVolumeMonitor 有疑问。当我运行这段代码时
g_type_init();
GVolumeMonitor *vmon = g_volume_monitor_get();
GList *drives = g_volume_monitor_get_connected_drives(vmon);
printf("DRIVES: %p\n", drives);
在 gnome 中我得到了一个有效的条目。
在 gnome 之外(例如,在没有 gnome 会话的终端中)我得到 NIL。
有没有人提示如何正确使用 GVolumeMonitor?可能gio需要初始化,但我不知道怎么做。
【问题讨论】:
【参考方案1】:您需要 dbus 和 gvfsd。要对其进行测试,您可以在 TTY 中尝试以下操作:
$ dbus-launch screen
$ ipython
>>> import gio
>>> vmon = gio.volume_monitor_get()
>>> vmon.get_connected_drives()
[...]
【讨论】:
以上是关于在没有 GNOME 的情况下使用 glib gio GVolumeMonitor的主要内容,如果未能解决你的问题,请参考以下文章
GLib-GIO-CRITICAL **: g_dbus_connection_register_object: assertion ‘G_IS_DBUS_CONNECTION (connectio
GLib-GIO-CRITICAL **: g_dbus_connection_register_object: assertion ‘G_IS_DBUS_CONNECTION (connectio
GLib-GIO-CRITICAL **: g_dbus_connection_register_object: assertion ‘G_IS_DBUS_CONNECTION (connectio
GLib-GIO-CRITICAL **: g_dbus_connection_register_object: assertion ‘G_IS_DBUS_CONNECTION (connectio