Compartir a través de


Regla MemAfterReqCompletedIoctl (kmdf)

La regla MemAfterReqCompletedIoctl especifica que dentro de la función de devolución de llamada EvtIoDeviceControl , no se puede tener acceso al objeto de memoria del marco una vez completada la solicitud de E/S.

Dentro de la función de devolución de llamada EvtIoDeviceControl del controlador, no se puede tener acceso a los métodos WdfRequestRetrieveInputMemory o WdfRequestRetrieveOutputMemory después de llamar a WdfRequestComplete, WdfRequestCompleteWithInformation o WdfRequestCompleteWithPriorityBoost en la solicitud de E/S.

Esta regla tiene en cuenta los siguientes métodos de acceso a memoria:

WdfRequestRetrieveInputMemoryWdfRequestRetrieveOutputMemory

Modelo de controlador: KMDF

Cómo probar

En tiempo de compilación

Ejecute el comprobador de controladores estáticos y especifique la regla MemAfterReqCompletedIoctl .

Usa los pasos siguientes para ejecutar un análisis de tu código:
  1. Prepara el código (usa declaraciones de tipos de rol).
  2. Ejecuta el comprobador de controlador estático.
  3. Consulta y analiza los resultados.

Para obtener más información, consulte Uso del comprobador de controladores estáticos para buscar defectos en controladores.

Se aplica a

WdfRequestCompleteWdfRequestCompleteWithInformationWdfRequestCompleteWithPriorityBoostWdfRequestRetrieveInputMemoryWdfRequestRequestRetrieveOutputMemory