EVT_WDF_CHILD_LIST_CREATE_DEVICE回呼函式 (wdfchildlist.h)
[僅適用於 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
在呼叫 WdfChildListAddOrUpdateChildDescriptionAsPresent 時,驅動程式所指定之WDF_CHILD_IDENTIFICATION_DESCRIPTION_HEADER結構的指標。
[in] ChildInit
WDFDEVICE_INIT 結構的指標。
傳回值
EvtChildListCreateDevice 回呼函式必須傳回STATUS_SUCCESS,如果作業成功,NT_SUCCESS (狀態) 等於 TRUE 的另一個狀態值。 否則,此函式必須傳回狀態值,NT_SUCCESS (狀態) 等於 FALSE。
如果作業失敗,但您認為驅動程式稍後應該再試一次,而且驅動程式的 EvtChildListCreateDevice 回呼函式尚未呼叫 WdfDeviceCreate,驅動程式可以傳回STATUS_RETRY。 因此,架構稍後會再次呼叫 EvtChildListCreateDevice 回呼函式。 如果您的驅動程式傳回STATUS_RETRY多次,架構將會停止呼叫失敗裝置的回呼函式。
備註
如果總線驅動程式使用動態列舉,它可以藉由呼叫 WdfFdoInitSetDefaultChildListConfig 或 WdfChildListCreate 來註冊 EvtChildListCreateDevice 回呼函式。
在驅動程式呼叫 WdfChildListAddOrUpdateChildDescriptionAsPresent 或 WdfChildListUpdateAllChildDescriptionsAsPresent 之後,架構會呼叫驅動程式的 EvtChildListCreateDevice 回呼函式。 回呼函式必須呼叫 WdfDeviceCreate ,才能在 PDO) (建立架構裝置物件。
呼叫 WdfDeviceCreate 之前,驅動程式必須呼叫架構提供的函式,以初始化WDFDEVICE_INIT結構。 如需這些函式的詳細資訊,請參閱 WDFDEVICE_INIT。
如需呼叫 WdfDeviceCreate 的詳細資訊,請參閱 建立架構裝置物件。
如需動態列舉的詳細資訊,請參閱 列舉總線上的裝置。
規格需求
需求 | 值 |
---|---|
目標平台 | Universal |
最低 KMDF 版本 | 1.0 |
標頭 | wdfchildlist.h (包含 Wdf.h) |
IRQL | PASSIVE_LEVEL |
另請參閱
WDF_CHILD_IDENTIFICATION_DESCRIPTION_HEADER
WdfChildListAddOrUpdateChildDescriptionAsPresent