如何获取要与CreateFile
一起使用的设备的驱动程序名称?
handle = CreateFile( DRIVER_NAME_HERE,
GENERIC_READ | GENERIC_WRITE,
FILE_SHARE_READ | FILE_SHARE_WRITE,
NULL, OPEN_EXISTING, 0, NULL);
谢谢!
答案 0 :(得分:1)
这取决于你想要什么。典型的例子是
\\.\C:
\\.\Tcp
\\.\PhysicalDrive0
\\?\usbstor#disk&ven_sandisk&prod_cruzer&rev_8.01#1740030578903736&0#{53f56307-b6bf-11d0-94f2-00a0c91efb8b}
\\.\CON
(见http://msdn.microsoft.com/en-us/library/aa363858(VS.85).aspx)。我建议您也使用WinObj(请参阅http://technet.microsoft.com/en-us/sysinternals/bb896657.aspx)来了解您可以使用哪些设备的更多信息。如果启动WinObj.exe并选择GLOBAL??
命名空间,您将看到在\\.\
前缀后可以使用的不同名称。函数QueryDosDevice
也可以提供帮助。
您可以使用DefineDosDevice
功能创建从\Device\Blabla
到名称的附加符号链接,您可以在CreateFile
中使用语法\\.\MyLogicalDevicName
(请参阅http://msdn.microsoft.com/en-us/library/aa364014(VS.85).aspx })。
如果您想将DeviceIoControl
函数的IOCTL代码发送到设备,则应使用0代替GENERIC_READ | GENERIC_WRITE
作为CreateFile
的第二个参数(请参阅http://msdn.microsoft.com/en-us/library/aa363147(v=VS.85).aspx })