InvalidReqAccessLocal 規則 (kmdf)

InvalidReqAccessLocal 規則指定在本機建立的要求在完成或取消之後不會存取。 此規則可能會與其他規則重疊,例如檢查雙重完成的規則,或檢查要求的規則已標示為可取消的兩次。

如果要求已完成、標示為可取消,或在傳送之後取消,則要求會被視為無效。 當要求被視為無效之後,除非驅動程式呼叫 WdfRequestUnmarkCancelable,否則要求無法傳遞至 WdfRequestXxx 函式,除非要求先前標示為可取消。

此規則類似於 InvalidReqAccess 規則;不過, InvalidReqAccessLocal 規則只會在預設 I/O 佇列回呼函式內執行。

驅動程式模型:KMDF

測試方法

在編譯時期

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

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

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

適用於

WdfObjectDelete
WdfRequestAllocateTimer
WdfRequestCancelSentRequest
WdfRequestChangeTarget
WdfRequestCreate
WdfRequestFormatRequestUsingCurrentType
WdfRequestForwardToIoQueue
WdfRequestGetCompletionParams
WdfRequestGetFileObject
WdfRequestGetInformation
WdfRequestGetIoQueue
WdfRequestGetParameters
WdfRequestGetRequestorMode
WdfRequestIsFrom32BitProcess
WdfRequestMarkCancelable
WdfRequestMarkCancelableEx
WdfRequestProbeAndLockUserBufferForRead
WdfRequestProbeAndLockUserBufferForWrite
WdfRequestRequeue
WdfRequestRetrieveInputBuffer
WdfRequestRetrieveInputMemory
WdfRequestRetrieveInputWdmMdl
WdfRequestRetrieveOutputBuffer
WdfRequestRetrieveOutputMemory
WdfRequestRetrieveOutputWdmMdl
WdfRequestRetrieveUnsafeUserInputBuffer
WdfRequestRetrieveUnsafeUserOutputBuffer
WdfRequestReuse
WdfRequestSend
WdfRequestSetCompletionRoutine
WdfRequestSetInformation
WdfRequestUnmarkCancelable
WdfRequestWdmFormatUsingStackLocation
WdfRequestWdmGetIrp
RemoveHeadList