Примечание
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
[Применимо только к KMDF]
Функция обратного вызова события драйвера шины EvtChildListCreateDevice создает объект устройства платформы для нового устройства, которое было динамически перечислено.
Синтаксис
EVT_WDF_CHILD_LIST_CREATE_DEVICE EvtWdfChildListCreateDevice;
NTSTATUS EvtWdfChildListCreateDevice(
[in] WDFCHILDLIST ChildList,
[in] PWDF_CHILD_IDENTIFICATION_DESCRIPTION_HEADER IdentificationDescription,
[in] PWDFDEVICE_INIT ChildInit
)
{...}
Параметры
[in] ChildList
Дескриптор объекта дочернего списка платформы, указанный драйвером при вызове WdfChildListAddOrUpdateChildDescriptionAsPresent.
[in] IdentificationDescription
Указатель на копию структуры WDF_CHILD_IDENTIFICATION_DESCRIPTION_HEADER , указанной драйвером при вызове WdfChildListAddOrUpdateChildDescriptionAsPresent.
[in] ChildInit
Указатель на структуру WDFDEVICE_INIT.
Возвращаемое значение
Функция обратного вызова EvtChildListCreateDevice должна возвращать STATUS_SUCCESS или другое значение состояния, для которого NT_SUCCESS(состояние) равно TRUE, если операция выполнена успешно. В противном случае эта функция должна возвращать значение состояния, для которого NT_SUCCESS (состояние) равно FALSE.
Если операция завершилась ошибкой, но вы думаете, что драйвер должен повторить попытку позже, и если функция обратного вызова EvtChildListCreateDevice не вызывает WdfDeviceCreate, драйвер может вернуть STATUS_RETRY. В результате платформа снова вызывает функцию обратного вызова EvtChildListCreateDevice позже. Если драйвер возвращает STATUS_RETRY более нескольких раз, платформа перестанет вызывать функцию обратного вызова для неудающегося устройства.
Замечания
Если драйвер шины использует динамическое перечисление, он может зарегистрировать функцию обратного вызова EvtChildListCreateDevice , вызвав WdfFdoInitSetDefaultChildListConfig или WdfChildListCreate.
После вызова драйвера WdfChildListAddOrUpdateChildDescriptionAsPresent или WdfChildListUpdateAllChildDescriptionsAsPresent платформа вызывает функцию обратного вызова драйвера EvtChildListCreateDevice . Функция обратного вызова должна вызывать WdfDeviceCreate , чтобы создать объект устройства платформы (PDO).
Перед вызовом WdfDeviceCreate драйвер должен вызывать предоставленные платформой функции, инициализирующие структуру WDFDEVICE_INIT. Дополнительные сведения об этих функциях см. в WDFDEVICE_INIT.
Дополнительные сведения о вызове WdfDeviceCreateсм. в создании объекта устройства Framework.
Дополнительные сведения о динамическом перечислении см. в перечислении устройств на шине.
Требования
Требование | Ценность |
---|---|
целевая платформа | универсальный |
минимальная версия KMDF | 1.0 |
Заголовок | wdfchildlist.h (включая Wdf.h) |
IRQL | пассивный уровень |
См. также
WDF_CHILD_IDENTIFICATION_DESCRIPTION_HEADER
WdfChildListAddOrUpdateChildDescriptionAsPresent