RequestCompletedLocal 規則 (kmdf)

RequestCompletedLocal 規則會指定如果在任何 EvtIoDefault、EvtIoReadEvtIoWriteEvtIoDeviceControlEvtIoInternalDeviceControl 回呼函式中未呼叫 I/O 要求,而且如果 WdfRequestMarkCancelable 未在回呼函式內呼叫,驅動程式程式代碼中的要求完成可能會發生問題。

此規則僅適用於 RequestCompleted 規則不適用的驅動程式。

驅動程式模型:KMDF

測試方法

在編譯時期

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

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

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

適用於

WdfDeviceEnqueueRequestWdfDmaTransactionInitializeWdfDmaTransactionInitializeUsingRequestWdfIoTargetSendInternalIoctlOthersSynchronouslyWdfIoTargetSendInternalIoctlSynchronouslyWdfIoTargetSendIoctlSynchronouslyWdfIoTargetSendReadSynchronouslyWdfIoTargetSendWriteSynchronouslyWdfRequestCompleteWdfRequestCompleteWithInformationWdfRequestCompleteWithPriorityBoostWdfRequestForwardToIoQueueWdfRequestMarkCancelableWdfRequestMarkCancelableExWdfRequestSend WdfRequestStopAcknowledgeWdfWorkItemEnqueue