このメソッドはクライアント側で実装されます。FRPage オブジェクトの一部のメソッドに対して、ABBYY FineReader Engine から呼び出されます。現在の処理 (解析、認識、エクスポート) のおおよその進行率に関する情報をクライアントに通知します。実装では、ABBYY FineReader と同様に、進行状況インジケーターを表示できます。
Windows では、長時間の処理中にアプリケーションが応答していないように見えるのを防ぐため、システムメッセージを処理することもできます。これは、ユーザーインターフェイスを持つアプリケーションで役立ちます。
HRESULT OnProgress(
IFRPage* Sender,
int Percentage,
VARIANT_BOOL* Cancel
);
void OnProgress(
IFRPage Sender,
int Percentage,
ref bool Cancel
);
Sub OnProgress( _
Sender As IFRPage, _
Percentage As Integer, _
ByRef Cancel As Boolean _
)
Sender
[in] このパラメーターは、通知を送信する FRPage オブジェクトを指します。
Percentage
[in] このパラメーターには、現在の作業進行率が格納されます。値の範囲は 0 から 100 です。
Cancel
[in, out] process を終了する必要があることを示すには、この変数を TRUE に設定します。この場合、進行率を通知する処理関数は E_ABORT を返します。
[C++ のみ] このメソッドが S_OK 以外の値を返した場合は、クライアント側でエラーが発生したことを示します。この場合、Cancel パラメーターの値は考慮されません。
このメソッドのクライアント実装では、メソッド内でスローされたすべての例外を確実にキャッチして処理し、例外がメソッドの外部に伝播しないようにする必要があります。例外がメソッドの外部に伝播すると、予期しない結果 (プログラムの終了など) を招くおそれがあります。
IFRPageEvents
FRPage