다음을 통해 공유


IWDTFPNPAction2::EDTTryStopDeviceFailRestart 메서드(wdtfpnpaction.h)

대상 디바이스에 IRP_MN_STOP_DEVICE 이벤트를 보낸 다음 후속 디바이스 다시 시작에 실패하려고 시도합니다.

구문

HRESULT EDTTryStopDeviceFailRestart(
  [out, retval] VARIANT_BOOL *pbSuccess
);

매개 변수

[out, retval] pbSuccess

작업이 성공하면 True입니다. 그렇지 않으면 false입니다.

반환 값

메서드가 성공하면 S_OK를 반환하고, 그러지 않으면 HRESULT 오류 코드를 반환합니다.

설명

참고 이 메서드를 호출하기 전에 대상 디바이스에 대해 IWDTFEnhancedDeviceTestSupportAction2::Enable 메서드를 호출해야 합니다.
 
EDTTryStopDeviceFailRestart 는 PnP 리소스 리밸런스(쿼리 중지, 중지, 시작 IRP 시퀀스)를 트리거하려고 시도합니다. 이 순서는 성공적인 쿼리 중지 및 중지를 따르는 IRP_MN_START_DEVICE 이벤트에 실패합니다. 실패한 시작 IRP로 인해 시스템이 디바이스(IRP_MN_SURPRISE_REMOVAL)를 깜짝 제거합니다.

중지 IRP는 보장되지 않습니다. 스택의 다른 드라이버는 IRP 중지(IRP_MN_CANCEL_STOP_DEVICE 발생) 앞에 오는 IRP_MN_QUERY_STOP_DEVICE 이벤트에 실패할 수 있습니다. 또한 대상 디바이스가 하드웨어 리소스(예: USB 마우스)를 사용하지 않는 것을 감지하고 CancelStop IRP를 대신 보내는 경우 시스템이 최적화할 수 있습니다.

디바이스에서 하드웨어 리소스를 사용하지 않지만 드라이버와 애플리케이션이 실패한 시작으로 PnP 리소스 리밸런스를 처리하는 방법을 테스트하려는 경우 대신 하드웨어 리소스를 사용하는 부모 디바이스, 조부모 등에서 EDTTryStopDeviceFailRestart 메서드를 실행할 수 있습니다. 예를 들어 디바이스가 USB 마우스인 경우 부모 USB 컨트롤러에서 이 메서드를 대신 실행할 수 있습니다.

요구 사항

요구 사항
지원되는 최소 클라이언트 Windows XP Professional
지원되는 최소 서버 Windows Server 2008
대상 플랫폼 데스크톱
머리글 wdtfpnpaction.h

추가 정보

IWDTFPNPAction2