background image

#define IOCTL_Device_Function CTL_CODE(DeviceType, Function, Method, 

Access)

                                        16-31     2-13     0-1     14-15

    通过提供设备类型、功能码(可看作函数的序号)、缓冲方式和存取权限,该宏就创建了一个

Ioctl 码。设备驱动可以定义多个 Ioctl 码(通过不同的功能码来区分不同的功能函数)以提供不

同的控制功能。

四、Ioctl

 

的同异步与缓冲区操作

    使用 DeviceIoControl 函数来实现用户模式下的 Ioctl

 

操作,它的定义如下:

BOOL DeviceIoControl( HANDLE hDevice,

    DWORD dwIoControlCode,

// 

 

本文转自 C++Builder

 

研究 - http://www.ccrun.com/article.asp?

i=1056&d=j2d4m0

    LPVOID lpInBuffer,

    DWORD nInBufferSize,

    LPVOID lpOutBuffer,

    DWORD nOutBufferSize,

    LPDWORD lpBytesReturned,

    LPOVERLAPPED lpOverlapped,

);