Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
Die MdlAfterReqCompletedIoctl-Regel gibt an, dass innerhalb der Rückruffunktion EvtIoDeviceControl nicht auf die Speicherbeschreibungsliste (Memory Descriptor List, MDL) zugegriffen werden kann, nachdem die E/A-Anforderung abgeschlossen wurde.
Innerhalb der EvtIoDeviceControl-Rückruffunktion des Treibers kann nicht auf die MDL zugegriffen werden, die durch Aufrufen der WdfRequestRetrieveInputWdmMdl- oder WdfRequestRetrieveOutputWdmdl-Methode abgerufen wurde, nachdem WdfRequestCompleteCompleteWithInformation oder WdfRequestCompleteWithPriorityBoost für die E/A-Anforderung aufgerufen wurde.
Diese Regel untersucht die folgenden MDL-Zugriffsfunktionen:
WDF_MEMORY_DESCRIPTOR_INIT_MDLMmGetMdlByteCountMmGetSystemAddressForMdlSafeMmGetMdlVirtualAddressIoBuildPartialMdl (erster und zweiter Parameter) KeFlushIoBuffersMmGetMdlPfnArrayMmGetMdlByteOffsetMmPrepareMdlForReuseWdfDmaTransactionInitialize
Treibermodell: KMDF
So führen Sie einen Test durch
| Beim Kompilieren: |
|---|
Führen Sie Static Driver Verifier aus , und geben Sie die MdlAfterReqCompletedIoctl-Regel 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:
WdfRequestCompleteWdfRequestCompleteWithInformationWdfRequestCompleteWithPriorityBoostWdfRequestRetrieveInputWdmMdlWdfRequestRetrieveOutputWdmMdl