다음을 통해 공유


IRP_MN_QUERY_RESOURCES

PnP 관리자는 이 IRP를 사용하여 디바이스의 부팅 구성 리소스를 가져옵니다.

버스 드라이버는 하드웨어 리소스가 필요한 자식 디바이스에 대해 이 요청을 처리해야 합니다. 함수 및 필터 드라이버는 이 IRP를 처리하지 않습니다.

0x0A

주 코드

IRP_MJ_PNP

보낸 경우

PnP 관리자는 디바이스가 열거될 때 이 IRP를 보냅니다.

PnP 관리자는 임의 스레드 컨텍스트에서 IRQL PASSIVE_LEVEL 이 IRP를 보냅니다.

입력 매개 변수

None

출력 매개 변수

I/O 상태 블록에서 반환됩니다.

I/O 상태 블록

이 IRP를 처리하는 버스 드라이버는 Irp-IoStatus.Status>를 STATUS_SUCCESS 또는 적절한 오류 상태 설정합니다.

성공하면 버스 드라이버는 Irp-IoStatus.Information>를 요청된 정보가 포함된 CM_RESOURCE_LIST 대한 포인터로 설정합니다. 오류 발생 시 버스 드라이버는 Irp-IoStatus.Information>를 0으로 설정합니다.

작업

버스 드라이버가 이 IRP에 대한 응답으로 리소스 목록을 반환하는 경우 페이징된 메모리에서 CM_RESOURCE_LIST 할당합니다. PnP 관리자는 더 이상 필요하지 않은 경우 버퍼를 해제합니다.

디바이스에 하드웨어 리소스가 필요하지 않은 경우 디바이스의 부모 버스 드라이버는 Irp-IoStatus.Status 또는 Irp-IoStatus.Information>를 수정하지 않고 IRP>(IoCompleteRequest)를 완료합니다.

함수 및 필터 드라이버는 이 IRP를 받지 않습니다.

플러그 앤 플레이 사소한 IRP를 처리하기 위한 일반적인 규칙은 플러그 앤 플레이 참조하세요.

이 IRP 보내기

시스템에서 사용하도록 예약되었습니다. 드라이버는 이 IRP를 보내지 않아야 합니다.

드라이버는 IoGetDeviceProperty 를 호출하여 원시 및 번역된 형태로 디바이스에 대한 부팅 구성을 가져올 수 있습니다.

요구 사항

헤더

Wdm.h(Wdm.h, Ntddk.h 또는 Ntifs.h 포함)

추가 정보

CM_RESOURCE_LIST

IoGetDeviceProperty