2

我对 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 需要初始化,但我不知道该怎么做。

4

1 回答 1

1

你需要 dbus 和 gvfsd。要对其进行测试,您可以在 TTY 中尝试以下操作:

$ dbus-launch screen
$ ipython
>>> import gio
>>> vmon = gio.volume_monitor_get()
>>> vmon.get_connected_drives()
[...]
于 2013-01-15T18:52:33.353 回答