IWDFRemoteTarget::CloseForQueryRemove 메서드(wudfddi.h)

[경고: UMDF 2는 UMDF의 최신 버전이며 UMDF 1을 대체합니다. 모든 새 UMDF 드라이버는 UMDF 2를 사용하여 작성해야 합니다. UMDF 1에 새 기능이 추가되지 않으며 최신 버전의 Windows 10 UMDF 1에 대한 지원이 제한되어 있습니다. 유니버설 Windows 드라이버는 UMDF 2를 사용해야 합니다. 자세한 내용은 UMDF를 사용하여 시작 참조하세요.]

CloseForQueryRemove 메서드는 운영 체제에서 디바이스를 제거할 수 있으므로 원격 I/O 대상을 닫습니다.

구문

HRESULT CloseForQueryRemove();

반환 값

CloseForQueryRemove 메서드는 항상 S_OK 반환합니다.

설명

드라이버가 IRemoteTargetCallbackRemoval::OnRemoteTargetQueryRemove 콜백 함수를 제공하는 경우 콜백 함수는 디바이스를 제거할 수 있음을 나타내기 위해 TRUE를 반환하는 경우 CloseForQueryRemove를 호출해야 합니다.

CloseForQueryRemove 메서드는 드라이버가 I/O 대상으로 보낸 모든 I/O 요청을 완료하거나 취소합니다.

드라이버가 CloseForQueryRemove를 호출한 후 드라이버는 IWDFRemoteTarget::Reopen을 호출할 때까지 I/O 요청을 I/O 대상에 보낼 수 없습니다.

CloseForQueryRemove 메서드에 대한 자세한 내용은 UMDF에서 일반 I/O 대상의 상태 제어를 참조하세요.

예제

다음 코드 예제에서는 CloseForQueryRemove를 호출하는 IRemoteTargetCallbackRemoval::OnRemoteTargetQueryRemove 콜백 함수를 보여줍니다.

BOOL
STDMETHODCALLTYPE
CMyRemoteTarget::OnRemoteTargetQueryRemove(
    __in IWDFRemoteTarget  *FxTarget
    )
{
    //
    // Here, do any driver-specific actions that your driver requires
    // to stop sending I/O requests to the I/O target.
    //
...
    //
    // Close the target.
    //
    FxTarget->CloseForQueryRemove();

    //
    // Return TRUE if you want to allow removal of the device.
    //
    return TRUE;
}

요구 사항

요구 사항
지원 종료 UMDF 2.0 이상에서는 사용할 수 없습니다.
대상 플랫폼 데스크톱
최소 UMDF 버전 1.9
머리글 wudfddi.h(Wudfddi.h 포함)
DLL WUDFx.dll

추가 정보

IWDFRemoteTarget

IWDFRemoteTarget::Close