编写微筛选器驱动程序的 DriverEntry 例程

每个文件系统微筛选器驱动程序都必须具有 DriverEntry 例程。 加载微筛选器驱动程序时,将调用 DriverEntry 例程。

DriverEntry 例程执行全局初始化、注册微筛选器驱动程序并启动筛选。 此例程在 IRQL PASSIVE_LEVEL的系统线程上下文中运行。

DriverEntry 例程的定义如下:

NTSTATUS 
(*PDRIVER_INITIALIZE) ( 
    IN PDRIVER_OBJECT DriverObject, 
    IN PUNICODE_STRING RegistryPath 
    ); 

DriverEntry 有两个输入参数。 第一个 驱动程序对象 DriverObject 是加载微筛选器驱动程序时创建的驱动程序对象。 第二个 RegistryPath 是指向计数 Unicode 字符串的指针,该字符串包含微筛选器驱动程序注册表项的路径。

微筛选器驱动程序的 DriverEntry 例程必须按顺序执行以下步骤:

  1. 为微筛选器驱动程序执行任何所需的全局初始化。

  2. 通过调用 FltRegisterFilter 注册微筛选器驱动程序。

  3. 通过调用 FltStartFiltering 启动筛选。

  4. 返回相应的 NTSTATUS 值。

本节包括:

注册微筛选器驱动程序

启动筛选

从微筛选器 DriverEntry 例程返回状态