다음을 통해 공유


IPrintAsyncNotifyCallback::ChannelClosed 메서드(prnasnot.h)

통신 채널의 한 구성원에게 채널이 닫혀 있음을 다른 구성원에게 알릴 것을 권고합니다.

구문

HRESULT ChannelClosed(
  [in] IPrintAsyncNotifyChannel    *pChannel,
  [in] IPrintAsyncNotifyDataObject *pData
);

매개 변수

[in] pChannel

보낸 사람 및 수신기가 사용하는 채널에 대한 포인터입니다.

[in] pData

알림 데이터 또는 응답을 포함하는 개체에 대한 포인터입니다.

반환 값

HRESULT 심각도 의미
S_OK SUCCESS 이 함수가 성공적으로 완료되었습니다.
CHANNEL_ALREADY_CLOSED 오류 채널이 이미 닫혔습니다.
 

반환 값은 COM 오류 코드입니다. 이 함수는 작업을 성공적으로 완료할 수 있지만 S_OK 이외의 HRESULT를 반환할 수 있으므로 SUCCEEDED 또는 FAILED 매크로를 사용하여 호출의 성공을 결정해야 합니다. 함수에서 반환된 특정 HRESULT를 얻으려면 HRESULT_CODE 매크로를 사용합니다.

다른 가능한 반환 값 은 PrintAsyncNotifyError 를 참조하세요.

COM 오류 코드에 관한 자세한 내용은 오류 처리를 참조하세요.

다음 코드 예제에서는 이러한 매크로를 사용하여 반환 값을 평가하는 방법을 보여 줍니다.


if (SUCCEEDED(hr)){
  // Call was successful 
}

if (FAILED(hr)) {
  // Call failed 
}

if (FAILED(hr)) {
  // Call failed, check HRESULT value returned
  switch (HRESULT_CODE(hr)){
    case CHANNEL_ALREADY_CLOSED:
      // Some action 
      break;
    default:
      // Default action 
      break;
  }
} else {
  // Call succeeded 
}

설명

인쇄 스풀러에서 호스트되는 구성 요소가 수신 대기 애플리케이션을 사용하여 통신 채널을 닫을 때 구성 요소는 IPrintAsyncNotifyCallback 개체의 ChannelClosed 메서드를 호출해야 합니다. 이 메서드는 수신 대기 애플리케이션이 알림을 등록할 때 제공했습니다. 인쇄 서버가 충돌하면 인쇄 스풀러는 수신 대기 애플리케이션에서 제공하는 IPrintAsyncNotifyCallback 개체의 OnEventNotify 메서드를 호출하려고 시도합니다. NOTIFICATION_RELEASE 형식의 알림을 보냅니다.

수신 대기 애플리케이션이 양방향 통신 채널을 닫는 경우 채널을 만들 때 구성 요소에서 제공하는 IPrintAsyncNotifyCallback 개체의 ChannelClosed 메서드를 호출해야 합니다. 수신 대기 애플리케이션이 충돌하는 경우 인쇄 스풀러는 인쇄 스풀러에서 호스트하는 구성 요소에서 제공하는 IPrintAsyncNotifyCallback 개체의 OnEventNotify 메서드를 호출합니다. NOTIFICATION_RELEASE 형식의 알림을 보냅니다.

요구 사항

요구 사항
지원되는 최소 클라이언트 Windows Vista [데스크톱 앱만 해당]
지원되는 최소 서버 Windows Server 2008 [데스크톱 앱만 해당]
대상 플랫폼 Windows
헤더 prnasnot.h
DLL Prnasnot.dll

추가 정보

비동기 인쇄 알림 인터페이스

오류 처리

IPrintAsyncNotifyCallback

인쇄