IoEnumerateDeviceObjectList 枚举驱动的所有设备 文件过滤驱动 windows内核开发

转自:http://blog.csdn.net/baund/article/details/7059920



IoEnumerateDeviceObjectList函数,用来枚举某驱动下的所有设备,主要是遍历deviceobject->nextobject字段,该函数第一次可以将DeviceObjectListSize传递0,来获取实际的设备个数,第二次调用,再获取整个设备列表,实现如下:


在文件过滤驱动中,常用该函数来枚举某文件系统下的所有设备,然后根据名字来区别是卷设备还是控制设备,空名字即卷设备,然后进行attach即可。

注意:调用该函数后,需要对设备队列的每个设备,都ObDereferenceObject一次,来保持对象的数目平衡。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章