Функция UrsIoResourceListAppendDescriptor (ursdevice.h)

Добавляет указанный дескриптор ресурса к указанному объекту списка ресурсов ввода-вывода, который поддерживает дескрипторы ресурсов для роли узла или функции.

Синтаксис

NTSTATUS UrsIoResourceListAppendDescriptor(
  [in] URSIORESLIST            IoResourceList,
  [in] PIO_RESOURCE_DESCRIPTOR Descriptor
);

Параметры

[in] IoResourceList

Объект списка ресурсов ввода-вывода роли, к которому добавляется дескриптор ресурса. Этот объект выделяется платформой и передается драйверу клиента, когда платформа вызывает реализацию EVT_URS_DEVICE_FILTER_RESOURCE_REQUIREMENTS драйвера.

[in] Descriptor

Указатель на IO_RESOURCE_DESCRIPTOR, содержащий дескриптор ресурса для роли.

Возвращаемое значение

Метод возвращает STATUS_SUCCESS, если операция выполнена успешно. В противном случае этот метод может вернуть соответствующий код ошибки NTSTATUS .

Комментарии

После вызова драйвера клиента UrsDeviceInitialize платформа выделяет память для списка требований к ресурсам. Когда расширение класса с двумя ролями USB вызывает реализацию EVT_URS_DEVICE_FILTER_RESOURCE_REQUIREMENTS драйвера клиента, оно передает дескриптор WDFIORESREQLIST в этот список требований вместе с дескрипторами URSIORESLIST для списков ресурсов ролей узла и функции. В реализации драйвер клиента должен выполнить перечисление по списку требований и добавить дескриптор ресурса (если он хочет использовать этот ресурс) в список ресурсов для каждой роли.

Чтобы добавить дескрипторы ресурсов для роли, драйвер вызывает UrsIoResourceListAppendDescriptor и задает дескриптор и список ресурсов, в который необходимо добавить ресурс.

Пример кода см . в разделе EVT_URS_DEVICE_FILTER_RESOURCE_REQUIREMENTS.

Дополнительные сведения о списках требований к ресурсам см. в разделе Обработка аппаратных ресурсов.

Требования

Требование Значение
Минимальная версия клиента Windows 10
Минимальная версия сервера Windows Server 2016
Целевая платформа Windows
Минимальная версия KMDF 1.15
Верхняя часть ursdevice.h (включая Urscx.h)
Библиотека Urscxstub.lib
IRQL PASSIVE_LEVEL

См. также раздел

EVT_URS_DEVICE_FILTER_RESOURCE_REQUIREMENTS

UrsDeviceInitialize