EVT_WDF_DEVICE_QUERY_REMOVE 콜백 함수(wdfdevice.h)
[KMDF 및 UMDF에 적용]
드라이버의 EvtDeviceQueryRemove 이벤트 콜백 함수는 지정된 디바이스를 중지하고 제거할 수 있는지 여부를 결정합니다.
구문
EVT_WDF_DEVICE_QUERY_REMOVE EvtWdfDeviceQueryRemove;
NTSTATUS EvtWdfDeviceQueryRemove(
[in] WDFDEVICE Device
)
{...}
매개 변수
[in] Device
프레임워크 디바이스 개체에 대한 핸들입니다.
반환 값
드라이버가 디바이스를 중지하고 제거할 수 있다고 판단하는 경우 EvtDeviceQueryRemove 콜백 함수는 STATUS_SUCCESS 또는 NT_SUCCESS(상태)가 TRUE인 다른 상태 값을 반환해야 합니다. 그렇지 않으면 NT_SUCCESS(상태)가 FALSE와 같은 상태 값을 반환해야 합니다. STATUS_NOT_SUPPORTED 반환하지 마세요.
설명
EvtDeviceQueryRemove 콜백 함수를 등록하려면 드라이버가 WdfDeviceInitSetPnpPowerEventCallbacks를 호출해야 합니다.
디바이스와 드라이버가 유휴 전원 다운을 지원하는 경우 프레임워크가 드라이버의 EvtDeviceQueryRemove 콜백 함수를 호출할 때 디바이스가 작동 상태가 아닐 수 있습니다. 콜백 함수는 WdfDeviceStopIdle 을 호출하여 디바이스를 작동(D0) 상태로 전환한 다음 콜백 함수가 반환되기 전에 WdfDeviceResumeIdle 을 호출할 수 있습니다.
EvtDeviceQueryRemove 콜백 함수에 대한 자세한 내용은 디바이스 중지 요청 처리를 참조하세요.
프레임워크는 EvtDeviceQueryRemove 콜백 함수를 다른 PnP 및 전원 관리 콜백 함수와 동기화하지 않습니다. 프레임워크가 드라이버의 이벤트 콜백 함수 실행을 동기화하는 방법에 대한 자세한 내용은 자동 동기화 사용을 참조하세요.
요구 사항
요구 사항 | 값 |
---|---|
대상 플랫폼 | 유니버설 |
최소 KMDF 버전 | 1.0 |
최소 UMDF 버전 | 2.0 |
머리글 | wdfdevice.h(Wdf.h 포함) |
IRQL | PASSIVE_LEVEL |