다음을 통해 공유


WdfRequestWdmGetIrp 함수(wdfrequest.h)

[KMDF에만 적용]

WdfRequestWdmGetIrp 메서드는 지정된 프레임워크 요청 개체와 연결된 WDM IRP 구조를 반환합니다.

구문

PIRP WdfRequestWdmGetIrp(
  [in] WDFREQUEST Request
);

매개 변수

[in] Request

프레임워크 요청 개체에 대한 핸들입니다.

반환 값

WdfRequestWdmGetIrpIRP 구조체에 대한 포인터를 반환합니다.

드라이버가 잘못된 개체 핸들을 제공하는 경우 버그 검사 발생합니다.

설명

드라이버는 I/O 요청을 완료한 후 요청의 IRP 구조에 액세스해서는 안됩니다.

WdfRequestWdmGetIrp에 대한 자세한 내용은 I/O 요청에 대한 정보 가져오기를 참조하세요.

예제

다음 코드 예제는 I/O 요청과 연결된 WDM IRP를 가져온 다음 IoGetNextIrpStackLocation을 호출하여 다음으로 낮은 드라이버의 I/O 스택 위치를 가져오는 EvtIoDeviceControl 콜백 함수의 일부입니다.

VOID
MyEvtIoDeviceControl(
    IN WDFQUEUE  Queue,
    IN WDFREQUEST  Request,
    IN size_t  OutputBufferLength,
    IN size_t  InputBufferLength,
    IN ULONG  IoControlCode
    )
{
    PIRP  irp = NULL;
    PIO_STACK_LOCATION  nextStack;
...
    irp = WdfRequestWdmGetIrp(Request);
    nextStack = IoGetNextIrpStackLocation(irp);
...
}

요구 사항

요구 사항
대상 플랫폼 유니버설
최소 KMDF 버전 1.0
머리글 wdfrequest.h(Wdf.h 포함)
라이브러리 Wdf01000.sys(프레임워크 라이브러리 버전 관리 참조)
IRQL <=DISPATCH_LEVEL
DDI 규정 준수 규칙 DriverCreate(kmdf), InvalidReqAccess(kmdf), InvalidReqAccessLocal(kmdf), KmdfIrql(kmdf), KmdfIrql2(kmdf), KmdfIrqlExplicit(kmdf)

추가 정보

WdfRequestGetParameters