先给出代码。如下;这里我把创建设备的过程封装在了一个函数CreateMyDevice中 IoCreateDevice是一个内核函数,相关参数参看wdk文档就好。作用就是创建一个设备对象。然后我们用pDevObj->Flags = DO_BUFFERED_IO;来指定这个设备是缓冲区设备。缓冲区设备的意思就是,驱动读取应用程序传递的数据的时候。不是直接读取。而是从一个内核的缓冲区读取应用程序缓冲区中的数据。相对应的是直接设备。注意设备扩展里面存放的有那些设备的信息。一般我们把我们想让这个设备具有个性化的。独有的信息,放到设备扩展里面。使用设备的扩展的时候,只要从驱动设备中获取就oK了。像这样:pDevExt =(PDEVICE_EXTENSION)pDevObj->DeviceExtension; 步骤基本如下: (1)创建设备。 (2)创建设备后的异常处理判断 (3)填充设备扩展结构,使这个设备具有与众不同的”个性“ |
怎么创建一个设备
最新推荐文章于 2023-05-04 09:47:54 发布