IoReleaseRemoveLockAndWaitOutsideRemoveDevice |
IoReleaseRemoveLockAndWaitOutsideRemoveDevice 规则指定不应在具有 PnP 驱动程序IRP_MN_REMOVE_DEVICE IRP_MJ_PNP外部调用 IoReleaseRemoveLockAndWait。 |
NsRemoveLockMnRemove |
NsRemoveLockMnRemove 规则验证驱动程序在使用 MinorFunction IRP_MN_REMOVE_DEVICE处理IRP_MJ_PNP时不会返回STATUS_NOT_SUPPORTED。 此规则仅适用于 FDO 和 FIDO 驱动程序。 |
NsRemoveLockMnSurpriseRemove |
NsRemoveLockMnSurpriseRemove 规则验证驱动程序在使用 minorFunction IRP_MN_SUPRI标准版_REMOVAL 处理IRP_MJ_PNP请求时是否不返回STATUS_NOT_SUPPORTED。 此规则仅适用于 FDO 和 FIDO 驱动程序。 |
NsRemoveLockQueryMnRemove |
NsRemoveLockQueryMnRemove 规则验证驱动程序在使用 MinorFunction IRP_MN_QUERY_REMOVE 处理IRP_MJ_PNP时不会返回STATUS_NOT_SUPPORTED。 此规则仅适用于 FDO 和 FIDO 驱动程序。 |
RemoveLock |
RemoveLock 规则指定正确使用对 IoAcquireRemoveLock 和 IoReleaseRemoveLock 的调用。 此外,在IRP_MJ_PNP或IRP_MJ_POWER例程结束时,驱动程序不应保留 RemoveLock。 |
RemoveLockCheck |
RemoveLockCheck 规则验证在使用 MinorFunction IRP_MN_REMOVE_DEVICE 处理IRP_MJ_PNP时,正确使用对 IoAcquireRemoveLock 和 IoReleaseRemoveLockAndWait 的调用。 |
RemoveLockForward |
RemoveLockForward 规则验证将 IRP 转发到另一台设备时,是否正确使用了对 IoAcquireRemoveLock 和 IoReleaseRemoveLock 的调用。 |
RemoveLockForward2 |
RemoveLockForward2 规则验证在将 IRP 转发到另一台设备时正确使用对 IoAcquireRemoveLock 和 IoReleaseRemoveLock 的调用。 |
RemoveLockForwardDeviceControl |
RemoveLockForwardDeviceControl 规则验证当驱动程序使用 IoCallDriver 将 IRP 转发到另一台设备时,正确使用对 IoAcquireRemoveLock 和 IoReleaseRemoveLock 的调用。 |
RemoveLockForwardDeviceControl2 |
RemoveLockForwardDeviceControl2 规则验证当驱动程序使用 IoCallDriver 将 IRP 转发到另一台设备时,正确使用对 IoAcquireRemoveLock 和 IoReleaseRemoveLock 的调用。 |
RemoveLockForwardDeviceControlInternal |
RemoveLockForwardDeviceControlInternal 规则验证在使用 IoCallDriver 将 IRP 转发到另一台设备时,正确使用对 IoAcquireRemoveLock 和 IoReleaseRemoveLock 的调用。 |
RemoveLockForwardDeviceControlInternal2 |
RemoveLockForwardDeviceControlInternal2 规则验证在使用 IoCallDriver 将 IRP 转发到另一台设备时,正确使用对 IoAcquireRemoveLock 和 IoReleaseRemoveLock 的调用。 |
RemoveLockForwardRead |
RemoveLockForwardRead 规则验证正确使用了对 IoAcquireRemoveLock 和 IoReleaseRemoveLock 的调用。 |
RemoveLockForwardRead2 |
RemoveLockForwardRead2 规则验证在使用 IoCallDriver 将 IRP 转发到另一台设备时,正确使用对 IoAcquireRemoveLock 和 IoReleaseRemoveLock 的调用。 |
RemoveLockForwardWrite |
RemoveLockForwardWrite 规则验证在使用 IoCallDriver 将 IRP 转发到另一台设备时,正确使用对 IoAcquireRemoveLock 和 IoReleaseRemoveLock 的调用。 |
RemoveLockForwardWrite2 |
RemoveLockForwardWrite2 规则验证在使用 IoCallDriver 将 IRP 转发到另一台设备时,正确使用对 IoAcquireRemoveLock 和 IoReleaseRemoveLock 的调用。 |
RemoveLockMnRemove |
RemoveLockMnRemove 规则验证在使用 MinorFunction IRP_MN_REMOVE_DEVICE处理IRP_MJ_PNP时,是否正确使用了对 IoAcquireRemoveLock 和 IoReleaseRemoveLockAndWait 的调用。 |
RemoveLockMnRemove2 |
RemoveLockMnRemove2 规则验证在 IRP 转发到较低驱动程序之前处理IRP_MN_REMOVE_DEVICE请求时,正确使用对 IoAcquireRemoveLock 和 IoReleaseRemoveLockAndWait 的调用。 |
RemoveLockMnSurpriseRemove |
RemoveLockMnSurpriseRemove 规则验证在使用 MinorFunction IRP_MN_SUPRI标准版_REMOVAL 处理IRP_MJ_PNP时,是否正确使用了对 IoAcquireRemoveLock 和 IoReleaseRemoveLockAndWait 的调用。 驱动程序应在将 IRP 转发到堆栈之前获取删除锁。 |
RemoveLockQueryMnRemove |
RemoveLockQueryMnRemove 规则验证在使用 MinorFunction IRP_MN_QUERY_REMOVE_DEVICE处理IRP_MJ_PNP时,正确使用对 IoAcquireRemoveLock 和 IoReleaseRemoveLock 的调用。 驱动程序应在将 IRP 转发到堆栈之前获取删除锁。 |
RemoveLockRelease2 |
规则 RemoveLockRelease2 验证对 IoAcquireRemoveLock 和 IoReleaseRemoveLock 的调用是否在严格交替中使用。 此外,在调度例程结束时,驱动程序不应保留删除锁。 |
RemoveLockReleaseCleanup |
RemoveLockReleaseCleanup 规则指定在严格交替中使用对 IoAcquireRemoveLock 和 IoReleaseRemoveLock 的调用。 每次对 IoAcquireRemoveLock 的调用都必须具有对 IoReleaseRemoveLock 的匹配调用。 此外,在调度例程结束时,驱动程序不应保留删除锁。 |
RemoveLockReleaseClose |
规则 RemoveLockReleaseClose 验证对 IoAcquireRemoveLock 和 IoReleaseRemoveLock 的调用是否在严格交替中使用。 此外,在调度例程结束时,驱动程序不应保留删除锁。 |
RemoveLockReleaseCreate |
RemoveLockReleaseCreate 规则验证对 IoAcquireRemoveLock 和 IoReleaseRemoveLock 的调用是否在严格交替中使用。 此外,在调度例程结束时,驱动程序不应保留删除锁。 |
RemoveLockReleaseDeviceControl |
RemoveLockReleaseDeviceControl 规则验证对 IoAcquireRemoveLock 和 IoReleaseRemoveLock 的调用是否在严格交替中使用。 此外,在调度例程结束时,驱动程序不应保留删除锁。 |
RemoveLockReleaseInternalDeviceControl |
RemoveLockReleaseInternalDeviceControl 规则验证对 IoAcquireRemoveLock 和 IoReleaseRemoveLock 的调用是否在严格交替中使用。 此外,在调度例程结束时,驱动程序不应保留删除锁。 |
RemoveLockReleasePnp |
RemoveLockReleasePnp 规则验证对 IoAcquireRemoveLock 和 IoReleaseRemoveLock 的调用是否在严格交替中使用。 此外,在调度例程结束时,驱动程序不应保留删除锁。 |
RemoveLockReleasePower |
RemoveLockReleasePower 规则验证对 IoAcquireRemoveLock 和 IoReleaseRemoveLock 的调用是否在严格交替中使用。 此外,在调度例程结束时,驱动程序不应保留删除锁。 |
RemoveLockReleaseRead |
RemoveLockReleaseRead 规则验证对 IoAcquireRemoveLock 和 IoReleaseRemoveLock 的调用是否在严格交替中使用。 此外,在调度例程结束时,驱动程序不应保留删除锁。 |
RemoveLockReleaseShutdown |
RemoveLockReleaseShutdown 规则验证对 IoAcquireRemoveLock 和 IoReleaseRemoveLock 的调用是否在严格交替中使用。 此外,在调度例程结束时,驱动程序不应保留删除锁。 |
RemoveLockReleaseSystemControl |
RemoveLockReleaseSystemControl 规则验证对 IoAcquireRemoveLock 和 IoReleaseRemoveLock 的调用是否在严格交替中使用。 此外,在调度例程结束时,驱动程序不应保留删除锁。 |
RemoveLockReleaseWrite |
RemoveLockReleaseWrite 规则验证对 IoAcquireRemoveLock 和 IoReleaseRemoveLock 的调用是否在严格交替中使用。 此外,在调度例程结束时,驱动程序不应保留删除锁。 |