Поделиться через


Правило NonPnPDrvPowerPolicyOwnerAPI (kmdf)

Правило NonPnPDrvPowerPolicyOwnerAPI указывает, что драйверы, отличные от PnP, не могут вызывать определенные DDIs, связанные с управлением питанием.

Если драйвер не регистрирует функцию обратного вызова EvtDriverDeviceAdd , невозможно вызвать следующие DDIs:

WdfDeviceAssignS0IdleSettingsWdfDeviceInitSetPowerPolicyEventCallbacksWdfDeviceAssignSxWakeSettingsWdfDeviceGetDevicePowerStateWdfDeviceGetDevicePowerPolicyStatWdfDeviceInitSetPnpPowerEventCallbacksWdfDeviceInitSetPowerPolicyOwnershipWdfDeviceInitRegisterPowerStateChangeCallbackWdfDeviceInitRegisterPowerPolicyStateChangeCallbackWdfDeviceInitSetPowerNotPageableWdfDeviceInitSetPowerPageableWdfDeviceInitSetPowerInrushWdfDeviceSetPowerCapabilities

Модель драйвера: KMDF

Как тестировать

Во время компиляции

Запустите средство проверки статических драйверов и укажите правило NonPnPDrvPowerPolicyOwnerAPI .

Чтобы выполнить анализ кода, выполните следующие действия.
  1. Подготовьте код (используйте объявления типов ролей).
  2. Запустите средство проверки статических драйверов.
  3. Просмотр и анализ результатов.

Дополнительные сведения см. в статье Использование средства проверки статических драйверов для поиска дефектов в драйверах.