BufAfterReqCompletedReadA-Regel (kmdf)
Die BufAfterReqCompletedReadA-Regel gibt an, dass innerhalb der EvtIoRead-Rückruffunktion nicht auf den abgerufenen E/A-Anforderungspuffer zugegriffen werden kann, nachdem die E/A-Anforderung abgeschlossen wurde. Es gibt 14 DDIs, die als mögliche Pufferzugriffsmethoden dienen.
Innerhalb der EvtIoRead-Rückruffunktion des Treibers kann nicht auf den Anforderungspuffer zugegriffen werden, der durch Aufrufen von WdfRequestRetrieveOutputBuffer oder WdfRequestRetrieveUnsafeUserOutputBuffer abgerufen wurde, nachdem WdfRequestCompleteWithInformation oder WdfRequestCompleteWithPriorityBoost in der E/A-Anforderung aufgerufen wurde.
Treibermodell: KMDF
So führen Sie einen Test durch
Beim Kompilieren: |
---|
Führen Sie Static Driver Verifier aus, und geben Sie die Regel BufAfterReqCompletedReadA an. Gehen Sie folgendermaßen vor, um Ihren Code zu analysieren:
Weitere Informationen finden Sie unter Verwenden der statischen Treiberüberprüfung, um Fehler in Treibern zu finden. |
Gilt für:
WDF_MEMORY_DESCRIPTOR_INIT_BUFFERWdfMemoryAssignBufferWdfMemoryCopyFromBufferWdfMemoryCopyToBufferWdfMemoryCreatePreallocatedWdfRequestCompleteWdfRequestCompleteWithInformationWdfRequestCompleteWithPriorityBoostWdfRequestRetrieveOutputBufferWdfRequestRetrieveUnsafeUserOutputBufferRtlCompareMemoryRtlMoveMemoryRtlZeroMemoryZwReadFile