在USB物理驱动器的末尾,我想使用Windows原始访问API直接写入数据。我不想使用内核驱动程序来做到这一点。
据我所知,出于安全原因,Windows XP SP2 或 SP3(?) 阻止了 HDD 直接访问。我不确定 USB 驱动器是否如此。
请指导我如何到达那里。多谢。
这取决于你想有多“直接”。
就像是
HANDLE hDrive = CreateFile("\\\\.\\F:", ...);
ReadFile(hDrive, ...);
在大多数情况下应该可以满足您的需要,尽管您可能需要DeviceIoControl
with
IOCTL_USB_USER_REQUEST http://msdn.microsoft.com/en-us/library/ff537344%28v=VS.85%29.aspx with USBUSER_PASS_THRU
IOCTL_SCSI_PASS_THROUGH_DIRECT http://msdn.microsoft.com/en-us/library/ff560521%28v=vs.85%29.aspx
or IOCTL_ATA_PASS_THROUGH_DIRECT http://msdn.microsoft.com/en-us/library/ff559315%28v=vs.85%29.aspx
如果你正在做一些非常先进的事情。
P.S.:正如其他人提到的,这应该在 StackOverflow 上。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)