MemAfterReqCompletedIntIoctlA-Regel (kmdf)
Die MemAfterReqCompletedIntIoctlA-Regel gibt an, dass innerhalb der Rückruffunktion EvtIoInternalDeviceControl nicht auf das Frameworkspeicherobjekt zugegriffen werden kann, nachdem die E/A-Anforderung abgeschlossen wurde.
Innerhalb der Rückruffunktion EvtIoInternalDeviceControl des Treibers kann nicht auf das Frameworkspeicherobjekt zugegriffen werden, das durch Aufrufen der WdfRequestRetrieveInputMemory- oder WdfRequestRetrieveOutputMemory-Methoden abgerufen wurde, nachdem WdfRequestCompleteCompleteWithInformation oder WdfRequestCompleteWithPriorityBoost in der E/A-Anforderung aufgerufen wurde.
Diese Regel berücksichtigt die folgenden Speicherzugriffsmethoden:
WdfMemoryGetBufferWDF_MEMORY_DESCRIPTOR_INIT_HANDLEWdfMemoryAssignBufferWdfMemoryCopyToBufferWdfMemoryCopyFromBufferWdfObjectReferenceWdfObjectDereferenceWdfObjectDelete
Treibermodell: KMDF
So führen Sie einen Test durch
Beim Kompilieren: |
---|
Führen Sie Static Driver Verifier aus, und geben Sie die MemAfterReqCompletedIntIoctlA-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:
WDF_MEMORY_DESCRIPTOR_INIT_HANDLEWdfMemoryAssignBufferWdfMemoryCopyFromBufferWdfMemoryCopyToBufferWdfMemoryGetBufferWdfObjectDeleteWdfObjectDereferenceWdfObjectReferenceWdfRequestCompleteWdfRequestCompleteWithInformationWdfRequestCompleteWithPriorityBoostWdfRequestRetrieveInputMemoryWdfRequestRetrieveOutputMemory