MemAfterReqCompletedIoctlA 規則 (kmdf)
MemAfterReqCompletedIoctlA 規則指定在 EvtIoDeviceControl 回呼函式內,在 I/O 要求完成之後,就無法存取架構記憶體物件。
在驅動程式的 EvtIoDeviceControl 回呼函式中,呼叫 I/O 要求上的 WdfRequestRetrieveInputMemory 或 WdfRequestRetrieveOutputMemory 方法之後,就無法存取透過呼叫 WdfRequestCompleteWithInformation 或 WdfRequestCompleteWithPriorityBoost 所擷取的架構記憶體物件。
此規則會考慮下列記憶體存取方法:
WdfMemoryGetBufferWDF_MEMORY_DESCRIPTOR_INIT_HANDLEWdfMemoryAssignBufferWdfMemoryCopyToBufferWdfMemoryCopyFromBufferWdfObjectReferenceWdfObjectDereferenceWdfObjectDelete
驅動程式模型:KMDF
測試方法
在編譯時期 |
---|
執行 靜態驅動程序驗證器 ,並指定 MemAfterReqCompletedIoctlA 規則。 使用下列步驟來執行程式碼的分析:如需詳細資訊,請參閱 使用靜態驅動程式驗證器在驅動程式中尋找瑕疵。 |
適用於
WDF_MEMORY_DESCRIPTOR_INIT_HANDLEWdfMemoryAssignBufferWdfMemoryCopyFromBufferWdfMemoryCopyToBufferWdfMemoryGetBufferWdfObjectDeleteWdfObjectDereferenceWdfObjectReferenceWdfRequestCompleteWdfRequestCompleteWithInformationWdfRequestCompleteWithPriorityBoostWdfRequestRetrieveInputMemoryWdfRequestRetrieveOutputMemory