跳转到主要内容
此方法在客户端实现。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 _
)

参数

Percentage [in] 此参数表示当前已完成工作的百分比,取值范围为 0 到 100。 Cancel [in, out] 您可以将此变量设置为 TRUE,表示应终止该过程。在这种情况下,用于报告百分比的处理函数将返回 E_ABORT。

返回值

[仅限 C++] 如果此方法返回的值不是 S_OK,则表示客户端发生了错误;在这种情况下,将忽略 Cancel 参数的值。

备注

此方法的客户端实现必须确保:在该方法内部抛出的所有异常都会被捕获并得到处理,且不会传播到该方法外部。异常一旦传播到方法外部,可能会导致不可预测的结果 (例如程序终止) 。

另请参阅

IProcessingEvents IEngine::InjectTextLayer