gpt4 book ai didi

c++ - 如何获取驱动程序名称?

转载 作者:塔克拉玛干 更新时间:2023-11-03 07:36:37 26 4
gpt4 key购买 nike

如何获取设备的驱动程序名称以与 CreateFile 一起使用?

handle = CreateFile( DRIVER_NAME_HERE,  
GENERIC_READ | GENERIC_WRITE,
FILE_SHARE_READ | FILE_SHARE_WRITE,
NULL, OPEN_EXISTING, 0, NULL);

谢谢!

最佳答案

这取决于你想要什么。一个典型的例子是

\\.\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 中使用的名称的附加符号链接(symbolic link)语法 \\.\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 )

关于c++ - 如何获取驱动程序名称?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3118300/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com