다음을 통해 공유


EVT_WDF_DEVICE_SELF_MANAGED_IO_INIT 콜백 함수(wdfdevice.h)

[KMDF 및 UMDF에 적용]

드라이버의 EvtDeviceSelfManagedIoInit 이벤트 콜백 함수는 디바이스의 자체 관리형 I/O 작업을 초기화하고 시작합니다.

구문

EVT_WDF_DEVICE_SELF_MANAGED_IO_INIT EvtWdfDeviceSelfManagedIoInit;

NTSTATUS EvtWdfDeviceSelfManagedIoInit(
  [in] WDFDEVICE Device
)
{...}

매개 변수

[in] Device

프레임워크 디바이스 개체에 대한 핸들입니다.

반환 값

EvtDeviceSelfManagedIoInit 콜백 함수에 오류가 발생하지 않으면 STATUS_SUCCESS 또는 NT_SUCCESS(상태)가 TRUE인 다른 상태 값을 반환해야 합니다. 그렇지 않으면 NT_SUCCESS(상태)가 FALSE와 같은 상태 값을 반환해야 합니다. NT_SUCCESS(상태)이 FALSE와 같으면 프레임워크가 디바이스를 시작하지 않습니다.

NT_SUCCESS(상태)가 FALSE인 경우 프레임워크는 드라이버의 EvtDeviceSelfManagedIoFlushEvtDeviceSelfManagedIoCleanup 콜백 함수를 호출합니다.

이 콜백 함수의 반환 값에 대한 자세한 내용은 보고 디바이스 오류를 참조하세요.

설명

EvtDeviceSelfManagedIoInit 콜백 함수를 등록하려면 드라이버가 WdfDeviceInitSetPnpPowerEventCallbacks를 호출해야 합니다.

드라이버가 EvtDeviceSelfManagedIoInit 콜백 함수를 등록한 경우 프레임워크는 프레임워크가 드라이버의 EvtDeviceD0Entry 콜백 함수를 처음으로 호출한 후 각 디바이스에 대해 한 번 호출합니다. 디바이스를 제거하고 다시 연결하거나 드라이버가 다시 로드되지 않는 한 프레임워크는 해당 디바이스에 대해 EvtDeviceSelfManagedIoInit 콜백 함수를 다시 호출하지 않습니다.

EvtDeviceSelfManagedIoInit 콜백 함수는 드라이버가 디바이스에 대해 처리할 자체 관리형 I/O 작업을 초기화하고 시작해야 합니다.

프레임워크가 이 콜백 함수를 호출하는 시기에 대한 자세한 내용은 PnP 및 전원 관리 시나리오를 참조하세요.

이 콜백 함수를 제공하는 드라이버에 대한 자세한 내용은 Self-Managed I/O 사용을 참조하세요.

요구 사항

요구 사항
대상 플랫폼 유니버설
최소 KMDF 버전 1.0
최소 UMDF 버전 2.0
머리글 wdfdevice.h(Wdf.h 포함)
IRQL PASSIVE_LEVEL

추가 정보

EvtDeviceSelfManagedIoCleanup

EvtDeviceSelfManagedIoFlush

EvtDeviceSelfManagedIoRestart

EvtDeviceSelfManagedIoSuspend