Compartir a través de


Regla UsbDeviceCreateTarget (kmdf)

La regla UsbDeviceCreateTarget especifica que no se crean varios objetos WDFUSBDEVICE mientras se filtran los objetos WDFUSBDEVICE que están actualmente en el contexto del dispositivo.

Por ejemplo, se puede llamar a la función de devolución de llamada de eventos EvtDevicePrepareHardware varias veces cuando el sistema intenta administrar recursos y necesita asignar un fragmento de memoria diferente para el controlador. En esta situación, se llama a la función de devolución de llamada de eventos EvtDeviceReleaseHardware para desasignación de recursos de memoria después de que el marco haya llamado inicialmente EvtDevicePrepareHardware. A continuación, se llama a EvtDevicePrepareHardware para asignar recursos para que el controlador pueda acceder a la memoria asignada al dispositivo. Esta regla comprueba primero que el controlador comprueba que el WDFUSBDEVICE de destino es NULL y no simplemente crea un nuevo dispositivo y reemplaza el identificador anterior.

Modelo de controlador: KMDF

Cómo probar

En tiempo de compilación

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

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

WdfUsbTargetDeviceCreateWdfUsbTargetDeviceCreateWithParameters