IPrintAsyncNotifyCallback::OnEventNotify 메서드(prnasnot.h)
지정된 채널에서 알림을 사용할 수 있음을 수신기에 알릴 수 있습니다. 이 메서드는 인쇄 시스템에서 호출됩니다.
구문
HRESULT OnEventNotify(
[in] IPrintAsyncNotifyChannel *pChannel,
[in] IPrintAsyncNotifyDataObject *pData
);
매개 변수
[in] pChannel
보낸 사람 및 수신기가 사용하는 채널에 대한 포인터입니다.
[in] pData
알림 데이터와 해당 크기와 형식이 포함된 개체에 대한 포인터입니다.
반환 값
HRESULT | 심각도 | 의미 |
---|---|---|
S_OK | SUCCESS | 함수가 성공적으로 완료되었습니다. |
INTERNAL_NOTIFICATION_QUEUE_IS_FULL | 오류 | 인쇄 스풀러는 더 이상 대기 중인 알림을 보유할 수 없습니다. 기본적으로 큐의 최대 크기는 10개 알림입니다. 이 오류가 반환되면 수신 대기 애플리케이션이 알림을 보내는 만큼 빠르게 처리하지 않습니다. 이 알림은 다시 전송되거나 삭제되어야 합니다. |
반환 값은 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 INTERNAL_NOTIFICATION_QUEUE_IS_FULL:
// Some action
break;
default:
// Default action
break;
}
} else {
// Call succeeded
}
설명
알림을 전달하기 위해 인쇄 스풀러는 알림을 등록할 때 수신 대기 애플리케이션에서 제공한 IPrintAsyncNotifyCallback 개체의 OnEventNotify 메서드를 호출합니다. 단방향 알림의 경우 pChannel 은 NULL입니다. 양방향 채널의 경우 pChannel 은 수신 대기 애플리케이션에서 응답으로 알림을 보내는 데 사용할 IPrintAsyncNotifyChannel 을 가리킵니다. 수신기는 IPrintAsyncNotifyChannel의 SendNotification 메서드를 호출하여 이 작업을 수행합니다.
요구 사항
요구 사항 | 값 |
---|---|
지원되는 최소 클라이언트 | Windows Vista [데스크톱 앱만 해당] |
지원되는 최소 서버 | Windows Server 2008 [데스크톱 앱만 해당] |
대상 플랫폼 | Windows |
헤더 | prnasnot.h |
DLL | Prnasnot.dll |