获取挂载设备的信息 gio
来源:互联网 发布:网络直播底线失守照片 编辑:程序博客网 时间:2024/05/19 21:17
<span style="font-size:18px;">使用GVolumeMonitor获取挂载设备的监控</span>
#include <glib.h>#include <gio/gio.h>static voiddo_action(char* cmd){ g_print("[do_action] start to exec: %s\n", cmd); GError* error = NULL; g_spawn_command_line_sync(cmd, NULL, NULL, NULL, &error); if (error) { g_print("[do_action] exec '%s' failed: %s\n", cmd, error->message); g_error_free(error); } g_print("[do_action] exec done\n");}static voidhandle_volume_changed(GVolumeMonitor* monitor, GVolume* volume, gpointer data){ char* ev = (char*)data; g_print("[handle_volume_changed] event: %s\n", ev); return; if (g_strcmp0(ev, "volume-removed") == 0) { return; } char* path = g_volume_get_identifier(volume, "unix-device"); char* cmd = g_strdup_printf("gvfs-mount -d %s", path); g_free(path); do_action(cmd); g_free(cmd);}static voidhandle_mount_changed(GVolumeMonitor* monitor, GMount* mount, gpointer data){ char* ev = (char*)data; g_print("[handle_mount_changed] event: %s\n", ev); return; if (g_strcmp0(ev, "mount-removed") == 0) { return; } GFile* root = g_mount_get_root(mount); char* path = g_file_get_path(root); g_object_unref(G_OBJECT(root)); char* cmd = g_strdup_printf("gvfs-open %s", path); g_free(path); do_action(cmd); g_free(cmd);}intmain(){ GVolumeMonitor* monitor = g_volume_monitor_get(); g_signal_connect(G_OBJECT(monitor), "volume-added", G_CALLBACK(handle_volume_changed), "volume-added"); g_signal_connect(G_OBJECT(monitor), "volume-removed", G_CALLBACK(handle_volume_changed), "volume-removed"); g_signal_connect(G_OBJECT(monitor), "mount-added", G_CALLBACK(handle_mount_changed), "mount-added"); g_signal_connect(G_OBJECT(monitor), "mount-removed", G_CALLBACK(handle_mount_changed), "mount-removed"); g_main_loop_run(g_main_loop_new(0,0));return 0;}
0 0
- 获取挂载设备的信息 gio
- 获取USB设备的信息
- 获取设备的部分信息
- IOS 获取设备的信息
- 获取iphone的设备信息
- 获取设备的配置信息
- iOS设备信息的获取
- 获取iOS设备的信息
- 获取手机设备的信息
- 获取手机设备的信息。
- 如何获取iPhone设备的设备信息
- iOS-获取当前设备的信息,网络状态,运营商,设备震动.获取设备信息
- J2ME-->获取设备支持的信息
- 【Android】获取设备的基本服务信息
- iphone中获取设备的相关信息
- 获取存储设备的大小信息
- 获取已安装设备的高级信息
- 【Android】获取设备的基本服务信息
- codevs 4175 收费站(二分+SPFA)
- yum安装出现No package vim available解决办法
- Jquery datatables 监听上一页/下一页 ,页码,刷新列宽度
- 分享一个自己写的比较牛的linux服务器自动监控程序
- MySQL使用连接查询的方式查询(连接3个表,并使用COUNT内置函数)
- 获取挂载设备的信息 gio
- 致23岁的我丨生活
- PSNR计算
- ffmpeg
- Java SE TreeSet(实现Comparable接口和Comparator匿名类)根据属性排序示例
- Log4J和springMVC
- CSDN-markdown编辑器语法——字体、字号与颜色
- 收藏的一些网页
- 分页JS