繁体   English   中英

如何将 USB 存储设备路径映射到物理驱动器?

[英]How do I mapping usb storage device path to physicaldrive?

我从

SetupDiGetDeviceInterfaceDetail()

我可以得到设备路径,比如

\\?\usbstor#disk&ven_&prod_2307_pram&......

但我想将设备路径映射到物理驱动器

->  \\physicaldrive0,1,2......

或相反,我可以将物理驱动程序映射到设备路径
有没有办法做到这一点?

哦,我找到了。 将 HANDLE 放入 DeviceIoControl 并使用 IOCTL_STORAGE_GET_DEVICE_NUMBER

STORAGE_DEVICE_NUMBER number;   //use this to get disk numbers
DWORD readed;                   // discard results
BOOL result = DeviceIoControl(
    hdl,                // handle to device
    IOCTL_STORAGE_GET_DEVICE_NUMBER, // dwIoControlCode
    NULL,                            // lpInBuffer
    0,                               // nInBufferSize
    &number,           // output buffer
    sizeof(number),         // size of output buffer
    &readed,       // number of bytes returned
    NULL      // OVERLAPPED structure
);

和 number.DeviceNumber 是 PhysicalDrive 号

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM