メインコンテンツへスキップ
このメソッドはクライアント側で実装されます。ABBYY FineReader Engine が、Engine オブジェクトの InjectTextLayer メソッドの実行時にこのメソッドを呼び出します。このメソッドは、処理の完了率のおおよその情報をクライアントに渡します。実装では、ABBYY FineReader と同様に、進行状況インジケーターを表示できます。また、長時間の処理中にアプリケーションが応答していないように見えるのを防ぐため、システムメッセージを処理することもできます。

構文

C++

HRESULT OnProgress(
  int           Percentage,
  VARIANT_BOOL* Cancel
);

C#

void OnProgress(
  int      Percentage,
  ref bool Cancel
);

Visual Basic .NET

Sub OnProgress( _
  Percentage As Integer, _
  ByRef Cancel As Boolean _
)

Parameters

Percentage [in] このParameterには、現在完了している処理の割合が格納されます。値の範囲は 0 ~ 100 です。 Cancel [in, out] この変数を TRUE に設定すると、プロセスを終了すべきことを示せます。この場合、割合を報告する処理関数は E_ABORT を返します。

戻り値

[C++ のみ] このメソッドが S_OK 以外の値を返した場合は、クライアント側でエラーが発生したことを示します。この場合、Cancel Parameter の値は考慮されません。

注記

このメソッドのクライアント側実装では、メソッド内で発生するすべての例外を確実にキャッチして処理し、メソッドの外に伝播しないようにする必要があります。例外がメソッドの外に伝播すると、予期しない結果 (プログラムの終了など) を招くおそれがあります。

関連項目

IProcessingEvents IEngine::InjectTextLayer