EVT_WDF_CHILD_LIST_DEVICE_REENUMERATED 콜백 함수(wdfchildlist.h)

[KMDF에만 적용]

드라이버의 EvtChildListDeviceReenumerated 이벤트 콜백 함수를 사용하면 드라이버가 지정된 디바이스의 다시 등록을 승인하거나 취소할 수 있습니다.

구문

EVT_WDF_CHILD_LIST_DEVICE_REENUMERATED EvtWdfChildListDeviceReenumerated;

BOOLEAN EvtWdfChildListDeviceReenumerated(
  [in]  WDFCHILDLIST ChildList,
  [in]  WDFDEVICE OldDevice,
  [in]  PWDF_CHILD_ADDRESS_DESCRIPTION_HEADER OldAddressDescription,
  [out] PWDF_CHILD_ADDRESS_DESCRIPTION_HEADER NewAddressDescription
)
{...}

매개 변수

[in] ChildList

프레임워크 자식 목록 개체에 대한 핸들입니다.

[in] OldDevice

프레임워크 디바이스 개체에 대한 핸들입니다.

[in] OldAddressDescription

자식 주소 설명 또는 NULL을 식별하는 WDF_CHILD_ADDRESS_DESCRIPTION_HEADER 구조체에 대한 선택적 포인터입니다. 제공된 경우 이 구조에는 디바이스를 다시 열거하기 전에 관련된 주소 정보가 포함됩니다.

[out] NewAddressDescription

자식 주소 설명 또는 NULL을 식별하는 WDF_CHILD_ADDRESS_DESCRIPTION_HEADER 구조체에 대한 선택적 포인터입니다. 제공된 경우 콜백 함수는 디바이스에 대한 새 주소 정보로 이 구조를 채웁니다.

반환 값

EvtChildListDeviceReenumerated 콜백 함수는 TRUE를 반환하여 다시 등록을 승인하거나 FALSE를 반환하여 취소합니다.

설명

버스 드라이버가 동적 열거형을 사용하는 경우 WdfFdoInitSetDefaultChildListConfig 또는 WdfChildListCreate를 호출하여 EvtChildListDeviceReenumerated 콜백 함수를 등록할 수 있습니다.

프레임워크 기반 버스 드라이버는 함수 드라이버로부터 특정 자식 디바이스를 다시 열거하라는 요청을 받을 수 있습니다. 이러한 요청에 대한 자세한 내용은 열거형 요청 처리를 참조하세요.

버스 드라이버의 EvtChildListDeviceReenumerated 콜백 함수를 사용하면 드라이버가 다시 등록을 승인하거나 취소할 수 있습니다. OldDevice 매개 변수는 디바이스를 식별하고 ChildList 매개 변수는 디바이스가 멤버인 자식 목록을 식별합니다. 콜백 함수가 TRUE 를 반환하여 다시 열거를 승인하거나 콜백 함수가 없는 경우 프레임워크는 다음을 수행합니다.

  1. 디바이스의 프레임워크 디바이스 개체( OldDevice로 식별됨)를 제거하지만 디바이스의 식별 설명은 유지합니다.
  2. 콜백 함수가 WdfDeviceCreate를 호출하여 새 프레임워크 디바이스 개체를 만들 수 있도록 드라이버의 EvtChildListCreateDevice 콜백 함수를 호출하여 저장된 ID 설명을 전달합니다.
버스 드라이버가 주소 설명을 사용하는 경우 EvtChildListDeviceReenumerated 콜백 함수는 두 주소 설명에 대한 포인터를 받습니다. 하나는 이전 디바이스 개체와 연결된 주소 설명을 가리킵니다. 다른 하나는 콜백 함수가 디바이스의 현재 위치를 설명하는 정보로 채워야 한다는 주소 설명을 가리킵니다.

동적 열거형에 대한 자세한 내용은 버스에서 디바이스 열거를 참조하세요.

요구 사항

요구 사항
대상 플랫폼 유니버설
최소 KMDF 버전 1.0
머리글 wdfchildlist.h(Wdf.h 포함)
IRQL <= DISPATCH_LEVEL

추가 정보

EvtChildListCreateDevice

WDF_CHILD_ADDRESS_DESCRIPTION_HEADER

WdfChildListCreate

WdfDeviceCreate

WdfFdoInitSetDefaultChildListConfig