我正在使用:IOServiceGetMatchingServices
kr = IOServiceGetMatchingServices(kIOMasterPortDefault,
IOServiceNameMatching("AppleUSBEHCI"), &io_objects);
我正在寻找如何找到有关内部 HD 的信息,因为上述内容可能会检测 USB 设备。
我似乎找不到一个列表或任何可以告诉我这一点的东西。
本质上,我正在寻找一种从系统中获取唯一 ID 的方法。在 Windows 上,其他开发人员使用硬盘 ID。
谁能阐明这些值(value)观?
最佳答案
我相信您想做的是查看设备描述符并查看它是否有序列号。由设备提供序列号,即使提供了序列号也可能不是唯一的。如果设备有自定义描述符,其中也可能有用。
请参阅以下描述符: http://www.beyondlogic.org/usbnutshell/usb5.shtml
在 HID 设备包装器类上似乎有一个获取序列号的属性:
如果这不起作用,应该有一种方法可以直接访问 USB 设备并请求您需要的数据。
关于c++ - IOKit 和获取唯一 ID,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15211748/