阅读:2411回复:2
DeviceIoControl()如何与Driver通信
MFC中DeviceIoControl()如何与Driver通信能否举个例子供参考?比如说如何访问网卡的Register.期望哪位大师能告诉我。
|
|
最新喜欢:changb... |
沙发#
发布于:2001-06-14 17:45
这个函数 BOOL DeviceIoControl( HANDLE hDevice,
DWORD dwIoControlCode, LPVOID lpInBuffer, DWORD nInBufferSize, LPVOID lpOutBuffer, DWORD nOutBufferSize, LPDWORD lpBytesReturned, LPOVERLAPPED lpOverlapped); 中,hDevice是用CreateFile取得的,dwIoControlCode是由driver定义的,其它参数没什么说的。再给你一个例子: DeviceIoControl(hVxd, 1, buff, 60, NULL, 0, &dwErrorCode, NULL); |
|
板凳#
发布于:2001-06-15 21:27
(我仅谈一谈vxd的设计,wdm没搞过)
DeviceIoControl 与vxd中的 OnW32DeviceIoControl是对应的关系, 他们之间进行的是参数传递的关系, 例如 DeviceIoControl(hVxd, 0001, buff, bufflong, NULL, 0, &dwErrorCode, NULL); 如需要向设备驱动程序传递当前窗口和定义的消息,可以将窗口句柄和消息的定义写入buff中,bufflong代表传送的数据的总长度. 0001是告诉OnW32DeviceIoControl服务号. 在OnW32DeviceIoControl的0001服务相应部分接受相应的句柄和消息就完成了数据的传递. |
|