WdfDeviceInitSetIoType 함수(wdfdevice.h)

[KMDF 및 UMDF에 적용]

WdfDeviceInitSetIoType 메서드는 드라이버가 지정된 디바이스에 대한 읽기 및 쓰기 요청에 포함된 데이터 버퍼에 액세스하는 방법에 대한 메서드 또는 기본 설정을 설정합니다.

구문

void WdfDeviceInitSetIoType(
  [in] PWDFDEVICE_INIT    DeviceInit,
  [in] WDF_DEVICE_IO_TYPE IoType
);

매개 변수

[in] DeviceInit

WDFDEVICE_INIT 구조체에 대한 포인터입니다.

[in] IoType

드라이버가 읽기 및 쓰기 요청에 대해 수신하는 데이터 버퍼에 액세스하는 데 사용할 메서드를 식별하는 WDF_DEVICE_IO_TYPE 형식의 열거자입니다.

반환 값

없음

설명

Kmdf KMDF 버전 1.13 이상을 사용하여 새 드라이버를 작성하는 경우 대신 WdfDeviceInitSetIoTypeEx를 사용해야 합니다. KMDF 필터 드라이버에서 WdfDeviceInitSetIoType 을 호출해도 아무런 효과가 없습니다. 필터 드라이버의 경우 프레임워크는 드라이버 스택의 다음 하위 드라이버에 지정된 I/O 형식을 사용합니다.

Umdf WdfDeviceInitSetIoType을 호출하는 KMDF 드라이버를 UMDF 버전 2.0 이상으로 변환하는 경우 변환된 드라이버는 문제 없이 WdfDeviceInitSetIoType을 계속 호출할 수 있습니다. 그러나 UMDF 버전 2.0 이상을 사용하여 완전히 새로운 드라이버를 작성하는 경우 대신 WdfDeviceInitSetIoTypeEx를 사용해야 합니다.

드라이버가 WdfDeviceInitSetIoType을 호출하는 경우 WdfDeviceCreate를 호출하기 전에 호출해야 합니다. WdfDeviceCreate를 호출하는 방법에 대한 자세한 내용은 프레임워크 디바이스 개체 만들기를 참조하세요.

드라이버가 WdfDeviceInitSetIoType을 호출하지 않으면 프레임워크는 지정된 디바이스에 대해 드라이버의 버퍼 액세스 메서드를 WdfDeviceIoBuffered로 설정합니다.

버퍼 액세스 방법에 대한 자세한 내용은 데이터 버퍼 액세스를 참조하세요.

예제

다음 코드 예제는 드라이버가 디바이스에 액세스할 때 직접 I/O 메서드를 사용한다는 것을 나타냅니다.

WdfDeviceInitSetIoType(
                       DeviceInit,
                       WdfDeviceIoDirect
                       );

요구 사항

요구 사항
대상 플랫폼 유니버설
최소 KMDF 버전 1.0
최소 UMDF 버전 2.0
머리글 wdfdevice.h(Wdf.h 포함)
라이브러리 Wdf01000.sys(KMDF); WUDFx02000.dll(UMDF)
IRQL <= DISPATCH_LEVEL
DDI 규정 준수 규칙 ChildDeviceInitAPI(kmdf), ControlDeviceInitAPI(kmdf), DeviceInitAPI(kmdf), DriverCreate(kmdf), KmdfIrql(kmdf), KmdfIrql2(kmdf), KmdfIrqlExplicit(kmdf), PdoDeviceInitAPI(kmdf)

추가 정보

IWDFDeviceInitialize2::SetIoTypePreference

WDF_DEVICE_IO_TYPE

WdfDeviceInitSetIoTypeEx