Regla DeviceInitAPI (kmdf)

Para un dispositivo FDO, se deben llamar a los métodos de inicialización de objetos de dispositivo de marco y a los métodos de inicialización de FDO de marco antes de que el controlador llame al método WdfDeviceCreate para el objeto de dispositivo.

En el caso de un dispositivo FDO, no se puede llamar a los métodos de inicialización de objetos de dispositivo de marco y los métodos de inicialización de FDO del marco, que almacenan información en la estructura de WDFDEVICE_INIT , después de que el controlador llame a WdfDeviceCreate para el objeto de dispositivo de marco.

Modelo de controlador: KMDF

Cómo probar

En tiempo de compilación

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

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

WdfDeviceCreate
WdfDeviceInitAssignName
WdfDeviceInitAssignSDDLString
WdfDeviceInitAssignWdmIrpPreprocessCallback
WdfDeviceInitRegisterPnpStateChangeCallback
WdfDeviceInitRegisterPowerPolicyStateChangeCallback
WdfDeviceInitRegisterPowerStateChangeCallback
WdfDeviceInitSetCharacteristics
WdfDeviceInitSetDeviceClass
WdfDeviceInitSetDeviceType
WdfDeviceInitSetExclusive
WdfDeviceInitSetFileObjectConfig
WdfDeviceInitSetIoInCallerContextCallback
WdfDeviceInitSetIoType
WdfDeviceInitSetPnpPowerEventCallbacks
WdfDeviceInitSetPowerInrush
WdfDeviceInitSetPowerNotPageable
WdfDeviceInitSetPowerPageable
WdfDeviceInitSetPowerPolicyEventCallbacks
WdfDeviceInitSetPowerPolicyOwnership
WdfDeviceInitSetRequestAttributes
WdfFdoInitAllocAndQueryProperty
WdfFdoInitOpenRegistryKey
WdfFdoInitQueryProperty
WdfFdoInitSetDefaultChildListConfig
WdfFdoInitSetEventCallbacks
WdfFdoInitSetFilter
WdfFdoInitWdmGetPhysicalDevice