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


Функция WdfCollectionCreate (wdfcollection.h)

[Применимо к KMDF и UMDF]

Метод WdfCollectionCreate создает объект коллекции платформы.

Синтаксис

NTSTATUS WdfCollectionCreate(
  [in, optional] PWDF_OBJECT_ATTRIBUTES CollectionAttributes,
  [out]          WDFCOLLECTION          *Collection
);

Параметры

[in, optional] CollectionAttributes

Указатель на структуру, выделенную вызывающим объектом, WDF_OBJECT_ATTRIBUTES, которая содержит атрибуты для нового объекта коллекции. Этот параметр является необязательным и может быть WDF_NO_OBJECT_ATTRIBUTES.

[out] Collection

Указатель на расположение, которое получает дескриптор к новому объекту коллекции.

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

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

Возвращаемый код Описание
STATUS_INVALID_PARAMETER
Вызывающий объект предоставил недопустимое значение параметра.
STATUS_INSUFFICIENT_RESOURCES
Не удалось выделить объект коллекции.
 

Этот метод также может возвращать другие значения NTSTATUS.

Замечания

После вызова WdfCollectionCreate для создания объекта коллекции платформ драйвер может вызвать WdfCollectionAdd, чтобы добавить объекты в коллекцию.

По умолчанию родительским объектом новой коллекции является объект драйвера платформы, созданный методом WdfDriverCreate. Вы можете использовать элемент ParentObject структуры WDF_OBJECT_ATTRIBUTES для указания другого родительского элемента. Платформа удаляет объект коллекции при удалении родительского объекта. Если драйвер не изменяет родительский объект по умолчанию, драйвер должен удалить объект коллекции после завершения использования объекта; в противном случае объект останется до тех пор, пока диспетчер ввода-вывода не выгрузит драйвер.

Дополнительные сведения о коллекциях объектов см. в коллекциях объектов Framework.

Примеры

Пример кода, использующий WdfCollectionCreate, см. в WdfCollectionAdd.

Требования

Требование Ценность
целевая платформа Всеобщий
минимальная версия KMDF 1.0
минимальная версия UMDF 2.0
заголовка wdfcollection.h (include Wdf.h)
библиотеки Wdf01000.sys (KMDF); WUDFx02000.dll (UMDF)
IRQL <= DISPATCH_LEVEL
правил соответствия DDI DriverCreate(kmdf), KmdfIrql(kmdf), KmdfIrql2(kmdf), KmdfIrqlExplicit(kmdf)

См. также

WDF_OBJECT_ATTRIBUTES

WdfCollectionAdd

WdfCollectionRemove

WdfDriverCreate