Compartir a través de


Regla RequestCompletedLocal (kmdf)

La regla RequestCompletedLocal especifica que si no se completa una solicitud de E/S en ninguna de las funciones de devolución de llamada EvtIoDefault, EvtIoRead, EvtIoWrite, EvtIoDeviceControl y EvtIoInternalDeviceControl y si no se llamó a WdfRequestMarkCancelable en la solicitud dentro de la función de devolución de llamada, podría haber un problema con la finalización de solicitudes en el código del controlador.

Esta regla solo está pensada para los controladores para los que la regla RequestCompleted no es aplicable.

Modelo de controlador: KMDF

Cómo probar

En tiempo de compilación

Ejecute el Comprobador de controladores estáticos y especifique la regla RequestCompletedLocal .

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, vea Usar comprobador de controladores estáticos para buscar defectos en controladores.

Se aplica a

WdfDeviceEnqueueRequestWdfDmaTransactionInitializeWdfDmaTransactionInitializeUsingRequestWdfIoTargetSendInternalIoctlOthersSynchronouslyWdfIoTargetSendInternalIoctlSynchronouslyWdfIoTargetSendIoctlSynchronouslyWdfIoTargetSendReadSynchronouslyWdfIoTargetSendWriteSynchronouslyWdfRequestCompleteWdfRequestCompleteWithInformationWdfRequestCompleteWithPriorityBoostWdfRequestForwardToIoQueueWdfRequestMarkCancelableWdfRequestMarkCancelableExWdfRequestSendWdfRequestStopAcknowledgeWdfWorkItemEnqueue