Набор правил USB (KMDF)

Используйте эти правила, чтобы убедиться, что драйвер правильно обрабатывает некоторые специализированные методы KMDF для USB-устройств.

В этом разделе

Тема Описание

FailD0EntryIoTargetState

Правило FailD0EntryIoTargetState указывает, что целевой объект ввода-вывода для USB-потокового чтения, запущенного в EvtDeviceD0Entry будет остановлен соответствующим образом в том же обратном вызове, если выполнение EvtDeviceD0Entry завершается ошибкой.

UsbContReader

Правило UsbContReader указывает, что непрерывный считыватель корректно настроен в функции обратного вызова события EvtDevicePrepareHardware драйвера, где выполняется вызов метода WdfUsbTargetPipeConfigContinuousReader.

UsbDeviceCreate

Правило UsbDeviceCreate указывает, что методы WdfUsbTargetDeviceCreate и WdfUsbTargetDeviceCreateWithParameters не вызываются вне функции обратного вызова событий EvtDevicePrepareHardware .

UsbDeviceCreateFail

Правило UsbDeviceCreateFail указывает, что драйвер возвращается из функции обратного вызова событий EvtDevicePrepareHardware с состоянием ошибки при сбое создания объекта WDFUSBDEVICE.

UsbDeviceCreateTarget

Правило UsbDeviceCreateTarget указывает, что несколько объектов WDFUSBDEVICE не создаются во время утечки объектов WDFUSBDEVICE, которые в настоящее время находятся в контексте устройства.

Выбор набора правил USB

  1. Выберите проект драйвера (.vcxProj) в Microsoft Visual Studio. В меню драйвера щелкните Запустить средство проверки статических драйверов....

  2. Перейдите на вкладку "Правила ". В разделе "Наборы правил" выберите usb.

    Чтобы выбрать набор правил по умолчанию в окне командной строки разработчика Visual Studio, укажите USB.sdv с параметром /check . Рассмотрим пример.

    msbuild /t:sdv /p:Inputs="/check:Usb.sdv" mydriver.VcxProj /p:Configuration="Win8 Release" /p:Platform=Win32
    

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