다음을 통해 공유


IWDFIoTargetStateManagement::Stop 메서드(wudfddi.h)

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

Stop 메서드는 큐에 대기된 요청을 로컬 I/O 대상전송을 중지합니다.

통사론

HRESULT Stop(
  [in] WDF_IO_TARGET_SENT_IO_ACTION Action
);

매개 변수

[in] Action

I/O 대상 개체가 중지될 때 전송된 I/O를 처리하는 방법을 식별하는 WDF_IO_TARGET_SENT_IO_ACTION형식화된 값입니다.

반환 값

중지 항상 S_OK 반환합니다.

발언

드라이버가 복구 가능한 디바이스 오류를 감지할 수 있는 경우 드라이버에서 중지 호출하여 로컬 I/O 대상에 대한 요청 전송을 일시적으로 중지한 다음, 나중에 IWDFIoTargetStateManagement::Start 호출하여 요청 보내기를 다시 시작할 수 있습니다.

또한 드라이버가 IWDFUsbTargetPipe2::ConfigureContinuousReader 호출하여 USB 파이프에 대한 연속 판독기를 구성하는 경우 드라이버의 IPnpCallback::OnD0Exit 콜백 함수는 중지 호출하여 판독기를 중지해야 합니다.

드라이버가 중지호출한 경우 IWDFIoRequest::Send호출할 때 WDF_REQUEST_OPTION_IGNORE_TARGET_STATE 플래그를 설정하여 대상에 요청을 보낼 수 있습니다. 드라이버가 이 플래그를 설정하는 경우 드라이버는 드라이버가 중지호출한 후 USB 파이프 재설정 요청(IWDFUsbTargetPipe::Reset참조)과 같은 요청을 디바이스에 보낼 수 있습니다.

드라이버는 IWDFIoTargetStateManagement::start 호출하고 동기적으로 중지를 합니다. 드라이버가 이러한 함수 중 하나를 호출한 후에는 첫 번째 호출이 반환되기 전에 두 함수 중 하나를 호출하지 않아야 합니다.

드라이버는 IWDFIoTargetStateManagement::Start호출하지 않고 중지 여러 번 호출할 수 있습니다. 예를 들어 드라이버는 다음을 수행할 수 있습니다.

  1. 중지 호출하고 WdfIoTargetLeaveSentIoPending작업 값을 지정합니다.
  2. 대상에서 I/O 요청 처리를 다시 시작해야 하는지 여부를 결정합니다.
  3. 대상이 다시 시작되어야 하는 경우 IWDFIoTargetStateManagement::Start호출합니다. 그렇지 않으면 WdfIoTargetCancelSentIo작업 값을 사용하여 중지 다시 호출합니다.
중지에 대한 자세한 내용은 일반 I/O 대상의 상태 제어하는참조하세요.

I/O 대상에 대한 자세한 내용은 I/O 대상 사용참조하세요.

예제

다음 코드 예제에서는 드라이버가 USB 파이프에 연속 판독기를 사용하는 경우 IPnpCallback::OnD0Exit 콜백 함수가 중지호출하는 방법을 보여줍니다. (IWDFIoTargetStateManagement 인터페이스를 가져오는 방법을 보려면 IWDFIoTargetStateManagement::Start.)의 코드 예제를 참조하세요.

HRESULT
CMyDevice::OnD0Exit(
    __in IWDFDevice*  pWdfDevice,
    __in WDF_POWER_DEVICE_STATE  previousState
    )
{
    HRESULT hr;
    hr = m_pIoTargetInterruptPipeStateMgmt->Stop(WdfIoTargetCancelSentIo);
    return hr;
}

요구 사항

요구
지원 종료 UMDF 2.0 이상에서는 사용할 수 없습니다.
대상 플랫폼 바탕 화면
최소 UMDF 버전 1.5
헤더 wudfddi.h(Wudfddi.h 포함)
DLL WUDFx.dll

참고 항목

IWDFIoTargetStateManagement

IWDFRemoteTarget::stop