다음을 통해 공유


WDF_REQUEST_PARAMETERS 구조체(wdfrequest.h)

[KMDF 및 UMDF에 적용]

WDF_REQUEST_PARAMETERS 구조체는 I/O 요청과 연결된 매개 변수를 받습니다.

구문

typedef struct _WDF_REQUEST_PARAMETERS {
  USHORT           Size;
  UCHAR            MinorFunction;
  WDF_REQUEST_TYPE Type;
  union {
    struct {
      PIO_SECURITY_CONTEXT     SecurityContext;
      ULONG                    Options;
      USHORT POINTER_ALIGNMENT FileAttributes;
      USHORT                   ShareAccess;
      ULONG POINTER_ALIGNMENT  EaLength;
    } Create;
    struct {
      size_t                  Length;
      ULONG POINTER_ALIGNMENT Key;
      LONGLONG                DeviceOffset;
    } Read;
    struct {
      size_t                  Length;
      ULONG POINTER_ALIGNMENT Key;
      LONGLONG                DeviceOffset;
    } Write;
    struct {
      size_t                   OutputBufferLength;
      size_t POINTER_ALIGNMENT InputBufferLength;
      ULONG POINTER_ALIGNMENT  IoControlCode;
      PVOID                    Type3InputBuffer;
    } DeviceIoControl;
    struct {
      PVOID                   Arg1;
      PVOID                   Arg2;
      ULONG POINTER_ALIGNMENT IoControlCode;
      PVOID                   Arg4;
    } Others;
  } Parameters;
} WDF_REQUEST_PARAMETERS, *PWDF_REQUEST_PARAMETERS;

멤버

Size

이 구조체의 크기(바이트)입니다.

MinorFunction

I/O 요청과 연결된 IRP 부 함수 코드(있는 경우)입니다. 일부 주요 함수 코드에는 부 함수 코드가 연결되어 있습니다.

Type

I/O 요청의 형식을 식별하는 WDF_REQUEST_TYPE 형식화된 값입니다.

Parameters

각 IRP 주요 함수 코드에 대해 고유한 매개 변수입니다. 이 멤버는 IO_STACK_LOCATION 구조체의 Parameters 멤버 하위 집합을 포함합니다.

Parameters.Create

IRP_MJ_CREATE 대한 매개 변수입니다.

Parameters.Create.SecurityContext

Parameters.Create.Options

Parameters.Create.FileAttributes

Parameters.Create.ShareAccess

Parameters.Create.EaLength

Parameters.Read

IRP_MJ_READ 대한 매개 변수입니다.

Parameters.Read.Length

Parameters.Read.Key

Parameters.Read.DeviceOffset

Parameters.Write

IRP_MJ_WRITE 매개 변수입니다.

Parameters.Write.Length

Parameters.Write.Key

Parameters.Write.DeviceOffset

Parameters.DeviceIoControl

IRP_MJ_DEVICE_CONTROLIRP_MJ_INTERNAL_DEVICE_CONTROL 대한 매개 변수입니다.

Parameters.DeviceIoControl.OutputBufferLength

Parameters.DeviceIoControl.InputBufferLength

Parameters.DeviceIoControl.IoControlCode

Parameters.DeviceIoControl.Type3InputBuffer

Parameters.Others

이 멤버의 사용은 드라이버 스택에 의해 정의됩니다.

Parameters.Others.Arg1

Parameters.Others.Arg2

Parameters.Others.IoControlCode

Parameters.Others.Arg4

설명

WDF_REQUEST_PARAMETERS 구조체는 WdfRequestGetParameters에 대한 입력으로 사용됩니다. 드라이버는 WdfRequestGetParameters를 호출하기 전에 WDF_REQUEST_PARAMETERS_INIT 호출하여 이 구조를 초기화해야 합니다.

요구 사항

요구 사항
최소 KMDF 버전 1.0
최소 UMDF 버전 2.0
머리글 wdfrequest.h(Wdf.h 포함)

추가 정보

IO_STACK_LOCATION

WDF_REQUEST_PARAMETERS_INIT

WdfRequestGetParameters