共用方式為


MdlAfterReqCompletedIoctlA 規則 (kmdf)

MdlAfterReqCompletedIoctlA 規則指定在 EvtIoDeviceControl 回呼函式內,記憶體描述項清單 (MDL) 在 I/O 要求完成後無法存取。

在驅動程式的 EvtIoDeviceControl 回呼函式中,在 I/O 要求上呼叫 WdfRequestRetrieveInputWdmMdlWdfRequestRetrieveOutputWdmMdl 方法之後,無法存取藉由呼叫 WdfRequestCompleteWithInformationWdfRequestCompleteWithPriorityBoost 所擷取的 MDL。

此規則會查看下列兩個 MDL 存取方法:

WdfRequestRetrieveOutputWdmMdlWdfRequestRetrieveInputWdmMdl

驅動程式模型:KMDF

測試方法

在編譯時期

執行 靜態驅動程序驗證器 ,並指定 MdlAfterReqCompletedIoctlA 規則。

使用下列步驟來執行程式碼的分析:
  1. 準備程式代碼 (使用角色類型宣告) 。
  2. 執行靜態驅動程式驗證程式。
  3. 檢視和分析結果。

如需詳細資訊,請參閱 使用靜態驅動程式驗證器在驅動程式中尋找瑕疵

適用於

WDF_MEMORY_DESCRIPTOR_INIT_MDLWdfDmaTransactionInitializeWdfRequestComplete WdfRequestCompleteWithInformationWdfRequestCompleteWithPriorityBoostWdfRequestRetrieveInputWdmMdlWdfRequestRetrieveOutputWdmMdlIoBuildPartialMdlkeFlushIoBuffersmmGetMdlByteCount mmGetMdlByteOffsetmmGetMdlPfnArraymmGetMdlVirtualAddressMmGetSystemAddressForMdlSafeMmPrepareMdlForReuse