当前位置: 代码迷 >> WinCE >> 关于deviceIOcontrol中的dwIoControlCode参数,该如何解决
  详细解决方案

关于deviceIOcontrol中的dwIoControlCode参数,该如何解决

热度:99   发布时间:2016-04-28 13:24:35.0
关于deviceIOcontrol中的dwIoControlCode参数
在PB帮助中看到KernelIoControl中dwIoControlCode   的响应处理在   OEMIoControl   中,因此添加一个新的自定义dwIoControlCode后,只要在OEMIoControl函数中对dwIoControlCode相应进行处理。可是DeviceIoControl中dwIoControlCode的相应处理在哪个函数中呢?是在设备驱动的XXX_IOControl中么?希望知道的能告诉一下小弟,谢过了。

------解决方案--------------------
这个是驱动开发的最基本的:
pDriverObject-> MajorFunction[IRP_MJ_DEVICE_CONTROL] = NdisProtIoControl;
在入口点DriverEntry的地方,初始化结构时,自己起名字,这里是NdisProtIoControl,然后在NdisProtIoControl函数里处理大概如下:
switch (FunctionCode)
{
case IOCTL_YOUR_OWN_IDCODE:
//处理自己的代码.
------解决方案--------------------
是的,是在XXX_IOControl中处理。就是说你调用DevicIOControl,通过操作系统中的文件管理接口,最后调用的是特定流驱动中的XXX_IOControl