如何从驱动器号获取设备实例 ID?
我的流程从设备到达消息开始。我已成功从到达消息中获取驱动器盘符并打开 DVD 托盘。
我搜索了各种Setup API项;但我还没有找到任何可以让我从驱动器号到设备实例 ID 的信息。
C# 或 VB.NET 中的解决方案是理想的,但只要我能看到 API 调用,我愿意用任何其他语言来解决它。
提前致谢...
你不能直接这样做。
该链接是使用STORAGE_DEVICE_NUMBER
。您可以将 DeviceIoControl 与IOCTL_STORAGE_GET_DEVICE_NUMBER
在您的设备名称上填充此结构。将此值放在一边。
然后,您需要使用以下命令获取系统上的设备信息SetupDiGetClassDevs
适当设置 GUIDS,指示您感兴趣的驱动器。然后使用以下命令枚举设备SetupDiEnumDeviceInfo
。然后使用枚举接口SetupDiEnumDeviceInterfaces
最后使用获取信息SetupDiGetDeviceInterfaceDetail
。在返回的这个结构中,您可以获得一个 DevicePath,您可以使用它来获取STORAGE_DEVICE_NUMBER
如上。将其与STORAGE_DEVICE_NUMBER
从您的驱动器号,您现在已将驱动器号链接到您的结构。唷!这个结构内部是一个 DevInst。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)