다음을 통해 공유


WdfRequestIsFrom32BitProcess 함수(wdfrequest.h)

[KMDF 및 UMDF에 적용]

WdfRequestIsFrom32BitProcess 메서드는 지정된 I/O 요청의 발신자가 32비트 사용자 모드 애플리케이션인지 여부를 확인합니다.

통사론

BOOLEAN WdfRequestIsFrom32BitProcess(
  [in] WDFREQUEST Request
);

매개 변수

[in] Request

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

반환 값

현재 I/O 요청의 시작자가 32비트 사용자 모드 프로세스인 경우WdfRequestIsFrom32BitProcessTRUE 반환하고, 그렇지 않으면 FALSE . 32비트 시스템에서 WdfRequestIsFrom32BitProcess 항상 TRUE 반환합니다.

드라이버에서 잘못된 개체 핸들을 제공하면 버그 검사가 수행됩니다.

발언

드라이버는 WdfRequestIsFrom32BitProcess 호출하여 I/O 요청에 변환해야 하는 데이터 요소가 포함될 가능성이 있는지, 아니면 64비트 드라이버에서 사용할 수 있는지 여부를 결정할 수 있습니다.

지정된 요청 핸들은 WdfRequestCreate호출이 아니라 드라이버의 I/O 큐 중 하나에서 가져와야 합니다.

예제

다음 코드 예제에서는 I/O 요청이 32비트 애플리케이션에서 제공되었는지 확인합니다.

VOID
MyEvtIoRead(
    IN WDFQUEUE  Queue,
    IN WDFREQUEST  Request,
    IN size_t  Length
    )
{
...
    if (WdfRequestIsFrom32BitProcess(Request)) {
        //
        // The driver is running on a 64-bit computer and the 
        // I/O request came from a 32-bit application.
        //
...
    }
...
}

요구 사항

요구
대상 플랫폼 보편적
최소 KMDF 버전 1.0
최소 UMDF 버전 2.0
헤더 wdfrequest.h(Wdf.h 포함)
라이브러리 Wdf01000.sys(KMDF); WUDFx02000.dll(UMDF)
IRQL <=DISPATCH_LEVEL
DDI 규정 준수 규칙 DriverCreate(kmdf), InvalidReqAccess(kmdf), InvalidReqAccessLocal(kmdf), KmdfIrql(kmdf), KmdfIrql2(kmdf), KmdfIrqlExplicit(kmdf)

참고 항목

WdfRequestCreate