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


Функция WdfIoResourceRequirementsListListAppendIoResList (wdfresource.h)

[Применимо только к KMDF]

Метод WdfIoResourceRequirementsListAppendIoResList добавляет логическую конфигурацию в конец списка требований к ресурсам.

Синтаксис

NTSTATUS WdfIoResourceRequirementsListAppendIoResList(
  [in] WDFIORESREQLIST RequirementsList,
  [in] WDFIORESLIST    IoResList
);

Параметры

[in] RequirementsList

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

[in] IoResList

Дескриптор объекта списка ресурсов платформы, представляющий логическую конфигурацию аппаратных ресурсов для устройства.

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

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

Возвращаемый код Описание
STATUS_INVALID_PARAMETER
Указан недопустимый параметр.
STATUS_INVALID_DEVICE_REQUEST
Указанный объект resource-requirements-list не принадлежит указанному объекту resource-range-list.
STATUS_INSUFFICIENT_RESOURCES
Платформа не могла выделить пространство для хранения объекта списка ресурсов.
 

Проверка системной ошибки возникает, если драйвер предоставляет недопустимый дескриптор объекта.

Замечания

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

Примеры

В следующем примере кода показано, как функция обратного вызова EvtDeviceRequirementsQuery создает пустую логическую конфигурацию и добавляет ее в список требований к ресурсам.

NTSTATUS
Example_EvtDeviceResourceRequirementsQuery(
    IN WDFDEVICE Device,
    IN WDFIORESREQLIST RequirementsList
    )
{
    NTSTATUS  status;
    WDFIORESLIST  logConfig;

    status = WdfIoResourceListCreate(
                                     RequirementsList,
                                     WDF_NO_OBJECT_ATTRIBUTES,
                                     &logConfig
                                     );
    if (!NT_SUCCESS(status)) {
        return status;
    }

    status = WdfIoResourceRequirementsListAppendIoResList(
                                             RequirementsList,
                                             logConfig
                                             );
    if (!NT_SUCCESS(status)) {
        return status;
    }
...
}

Требования

Требование Ценность
целевая платформа Всеобщий
минимальная версия KMDF 1.0
заголовка wdfresource.h (включая Wdf.h)
библиотеки Wdf01000.sys (см. управление версиями библиотеки Платформы).)
IRQL <=DISPATCH_LEVEL
правил соответствия DDI DriverCreate(kmdf), KmdfIrql(kmdf), KmdfIrql2(kmdf), KmdfIrqlExplicit(kmdf)

См. также

WdfIoResourceListCreate

WdfIoResourceRequirementsListInsertIoResList