簡體   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