как мне получить имя драйвера устройства для использования с CreateFile?
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
. увидит другие имена, которые вы можете использовать после префикса \\.\. Функция QueryDosDevice также может быть полезна.
\\.\
QueryDosDevice
Вы можете использовать функцию DefineDosDevice для создания дополнительной символической ссылки из \Device\Blabla на имя, которое вы можете использовать в CreateFile с синтаксисом \\.\MyLogicalDevicName (см. http://msdn.microsoft.com/en-us/library/aa364014(VS.85).aspx).
DefineDosDevice
\Device\Blabla
\\.\MyLogicalDevicName
Если вы хотите отправить IOCTL-коды в отношении функции DeviceIoControl на устройство, вы должны использовать 0 вместо GENERIC_READ | GENERIC_WRITE в качестве второго параметра CreateFile (см. http://msdn.microsoft.com/en-us/library/aa363147(v=VS.85).aspx)
DeviceIoControl
GENERIC_READ | GENERIC_WRITE