我正在编写一个程序,它将一些文件复制到 USB 可移动存储中。所以我需要一个所有可用可移动存储的列表。我正在使用 C。便携性是首选。
问问题
205 次
1 回答
1
libusbx 是一个提供对 USB 设备的通用访问的库。作为一个库,它旨在供开发人员使用,以促进与 USB 硬件通信的应用程序的开发。
它是可移植的:使用单个跨平台 API,它可以访问 Linux、OS X、Windows 和 OpenBSD 上的 USB 设备。
它是用户模式:应用程序与设备通信不需要特殊特权或提升。
它与版本无关:支持所有版本的 USB 协议,从 1.0 到 3.0(最新)。
libusb_context * usb_ctx = NULL;
int main()
{
...
libusb_init(&usb_ctx);
...
libusb_exit(usb_ctx);
...
}
some_func()
{
...
libusb_device **list;
ssize_t number_of_devices = libusb_get_device_list(usb_ctx, &list);
...
}
(警告我只是在网上找到的,我没有个人经验,代码没有经过测试,看起来你需要在使用前调用libusb_init/libusb_exit 见
*http://libusbx.sourceforge.net/api-1.0/group__lib.html*
和
http://libusbx.sourceforge.net/api-1.0/contexts.html.h
于 2012-05-04T07:36:47.773 回答