(MSDN)在不打开逻辑驱动器句柄(\\。\ E :)的情况下无法写入物理驱动器句柄(\\。\ PhysicalDriveX)

时间:2018-06-24 14:51:46

标签: c++ window usb msdn createfile

我的目标是在Win32下直接驱动(USB设备)访问。

我当前正在使用CreateFile函数打开物理驱动器(USB设备)的句柄。为了获取物理驱动器路径(“ \。\ PhsicalDriveX”,X将是一个数字),我首先需要知道数字“ X”,因此我为逻辑驱动器创建一个句柄(“ \。\ E: ”),然后使用DeviceIoControl来查询号码。

现在,由于有了设备号,因此删除了逻辑驱动器的句柄(“ \。\ E:”)。发生的是我的原始工作代码崩溃了。请注意,在我提到的设备号查询功能之后,从未使用逻辑驱动器的句柄。

现在问我一个问题,我真的不了解物理驱动器和逻辑驱动器之间的关系。我认为将文件写入物理驱动器并不相关,因为当我们为它创建句柄时,它的路径不包含逻辑驱动器号(“ \。\ PhysicalDriveX”)。

我的主要参考文献来自INFO: Direct Drive Access Under Win32

再次

,没有提到这两者之间的关系。感谢任何帮助!

0 个答案:

没有答案