C28126

警告 C28126:ObReferenceObject* 的 AccessMode 参数应为 IRP->RequestorMode

在调用 ObReferenceObjectByHandleObReferenceObjectByPointer时,驱动程序将传递 UserModeKernelModeAccessMode 参数,而不是使用 Irp->RequestorMode

驱动程序应使用 Irp->RequestorMode,而不是指定 UserModeKernelMode。 这样,内核模式 IRP 的发送方就可以安全地提供内核模式句柄。

此警告适用于驱动程序堆栈中的顶级驱动程序。 可以忽略或取消所有其他驱动程序的此警告。

驱动程序堆栈中的顶级驱动程序应使用 Irp->RequestorMode,而不是指定 UserModeKernelMode。 这样,内核模式 IRP 的发送方就可以安全地提供内核模式句柄。 堆栈中的所有其他驱动程序都应指定 KernelMode,这会跳过访问检查,并负责对顶级驱动程序的访问检查。