DO_DEVICE_INITIALIZING

这个东西的位置在DEVICE_OBJECT的Flags字段中,

本来这个Flags大多的情况下都是在设置IO方式,如DO_BUFFERED_IO,

但特殊的位也可能需要在这里设置。

用处是防止当自己的设备对象初始化完成之前,别的模块来发送信息给自己的模块的。

 

如果程序仅在DriverEntry中创建DeviceObject的话,那么当前位将由IO管理器清除,

如果当前DeviceObject不是在DriverEntry中创建的,那么就要由程序员自己来清除。

 

主要用于PNP设备,以及过滤设备一类设备的安全创建中。

posted @ 2017-03-25 15:56  穷到底  阅读(509)  评论(0编辑  收藏  举报