Regla IoctlReqs (kmdf)

La regla IoctlReqs especifica que las solicitudes IOCTL no deben pasarse a una solicitud KMDF inapropiada ni enviar interfaces de controlador de dispositivo (DDIs).

Se garantiza que todas las solicitudes presentadas a la función de devolución de llamada de eventos EvtIoDeviceControl del controlador sean solicitudes IOCTL. La función EvtIoDeviceControl del controlador se declara mediante la declaración de tipo de rol de función EVT_WDF_IO_QUEUE_IO_DEVICE_CONTROL.

Estas solicitudes IOCTL no se pueden enviar a las siguientes DDIs específicas para enviar solicitudes de lectura, escritura o IOCTL:

WdfUsbTargetPipeSendUrbSynchronously, WdfIoTargetSendReadSynchronously, WdfIoTargetSendWriteSynchronously, WdfIoTargetSendInternalIoctlSynchronously, WdfIoTargetSendInternalIoctlOthersSynchronously, WdfUsbTargetPipeWriteSynchronously, WdfUsbTargetPipeReadSynchronously

Modelo de controlador: KMDF

Cómo probar

En tiempo de compilación

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

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

WdfIoTargetSendInternalIoctlOthersSynchronouslyWdfIoTargetSendInternalIoctlSynchronouslyWdfIoTargetSendReadSynchronouslyWdfIoTargetSendWriteSynchronouslyWdfUsbTargetPipeReadSynchronouslyWdfUsbTargetPipeSendUrbSynchronouslyWdfUsbTargetPipeWriteSynchronously