Функция WdfPdoInitAssignContainerID (wdfpdo.h)
[Применяется только к KMDF]
Метод WdfPdoInitAssignContainerID обновляет идентификатор контейнера для дочернего устройства.
Синтаксис
NTSTATUS WdfPdoInitAssignContainerID(
[in] PWDFDEVICE_INIT DeviceInit,
[in] PCUNICODE_STRING ContainerID
);
Параметры
[in] DeviceInit
Указатель на структуру WDFDEVICE_INIT .
[in] ContainerID
Указатель на структуру UNICODE_STRING , содержащую строку идентификатора контейнера. Драйвер может выделить буфер строки из выстраивного пула.
Возвращаемое значение
Если операция выполнена успешно, метод возвращает STATUS_SUCCESS. К дополнительным возвращаемым значениям относятся:
Код возврата | Описание |
---|---|
|
Драйвер инициализирует FDO вместо PDO. |
|
Драйверу не удалось выделить место для хранения строки идентификатора контейнера. |
Метод также может возвращать другие значения NTSTATUS.
Комментарии
Дополнительные сведения об идентификаторах контейнеров см. в разделе Строки идентификации устройств.
Драйвер должен вызвать WdfPdoInitAssignContainerID перед вызовомWdfDeviceCreate. Дополнительные сведения о вызове WdfDeviceCreate см. в разделе Создание объекта устройства платформы.
Примеры
В следующем примере кода выполняется инициализация структуры UNICODE_STRING , сохранение строки Юникода в структуре, а затем регистрация строки Юникода в качестве идентификатора контейнера устройства.
UNICODE_STRING containerId = {0};
RtlInitUnicodeString(
&containerId,
strContainerId //Unicode string for container ID
);
status = WdfPdoInitAssignContainerID(
pDeviceInit,
&containerId
);
Требования
Требование | Значение |
---|---|
Целевая платформа | Универсальное |
Минимальная версия KMDF | 1,9 |
Верхняя часть | wdfpdo.h (включая Wdf.h) |
Библиотека | Wdf01000.sys (см. раздел Управление версиями библиотеки платформы). |
IRQL | PASSIVE_LEVEL |
Правила соответствия DDI | DriverCreate(kmdf) |