이 메서드는 클라이언트 측에서 구현됩니다. ABBYY FineReader Engine이 FRDocument 객체의 일부 메서드에 대해 호출하며, 처리 중 발생한 팁 및 경고를 클라이언트에 전달합니다.
Windows에서는 긴 작업 중에 애플리케이션이 응답하지 않는 것처럼 보이는 현상을 방지하기 위해 시스템 메시지도 처리할 수 있습니다. 이 기능은 사용자 인터페이스가 있는 애플리케이션에서 유용하게 활용할 수 있습니다.
HRESULT OnWarning(
IFRDocument* Sender,
int PageIndex,
BSTR Warning,
VARIANT_BOOL* Cancel
);
void OnWarning(
IFRDocument Sender,
int PageIndex,
string Warning,
ref bool Cancel
);
Sub OnWarning( _
Sender As IFRDocument, _
PageIndex As Integer, _
Warning As String, _
ByRef Cancel As Boolean _
)
Sender
[in] 알림을 전송하는 FRDocument 객체를 참조합니다.
PageIndex
[in] 이 매개변수에는 tip 또는 warning이 참조하는 페이지의 인덱스가 포함됩니다. 메시지는 특정 페이지뿐만 아니라 문서 전체를 참조할 수도 있으며, 이 경우 매개변수 값은 -1입니다.
Warning
[in] tip 또는 warning을 포함합니다.
Cancel
[in, out] 이 변수를 TRUE로 설정하면 프로세스를 종료하도록 지정할 수 있습니다. 이 경우, tip을 보고하는 분석 또는 인식 함수는 E_ABORT를 반환합니다.
[C++ 전용] 이 method가 S_OK 이외의 값을 반환하면 client 측에서 오류가 발생했음을 의미하며, 이 경우 Cancel Parameter의 값은 고려되지 않습니다.
이 method의 client 구현에서는 method 내부에서 발생한 모든 예외를 반드시 포착해 처리해야 하며, 어떤 예외도 method 외부로 전파되지 않도록 해야 합니다. 예외가 method 외부로 전파되면 예측할 수 없는 결과(예: 프로그램 종료)가 발생할 수 있습니다.
IFRDocumentEvents
FRDocument