> ## Documentation Index
> Fetch the complete documentation index at: https://docs.abbyy.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Método OnProgress de la interfaz IFRDocumentEvents

> Método OnProgress de la interfaz IFRDocumentEvents en la API de ABBYY FineReader Engine — método del lado del cliente al que se llama para informar del porcentaje aproximado de progreso de las operaciones de FRDocument (carga de imágenes, análisis, reconocimiento, etc.).

Este método se implementa del lado del cliente. ABBYY FineReader Engine lo llama desde algunos de los métodos del objeto [FRDocument](/es/fine-reader/engine/api-reference/document-related-objects/frdocument). Proporciona al cliente información sobre el porcentaje aproximado de progreso de la operación actual (carga de imágenes, análisis, reconocimiento, etc.). Su implementación puede mostrar un indicador de progreso, como se hace en ABBYY FineReader.

<Note>
  En Windows, también puede procesar mensajes del sistema para ayudar a evitar que la aplicación deje de responder durante operaciones largas. Esto puede ser útil en aplicaciones con una interfaz de usuario.
</Note>

<div id="syntax">
  ## Sintaxis
</div>

<div id="c">
  ### C++
</div>

```csharp theme={null}
HRESULT OnProgress(
  IFRDocument*  Sender,
  int           Percentage,
  VARIANT_BOOL* Cancel
);
```

### C\#

```csharp theme={null}
void OnProgress(
  IFRDocument Sender,
  int        Percentage,
  ref bool   Cancel
);
```

<div id="visual-basic-net">
  ### Visual Basic .NET
</div>

```csharp theme={null}
Sub OnProgress( _
  Sender As IFRDocument, _
  Percentage As Integer, _
  ByRef Cancel As Boolean _
)
```

<div id="parameters">
  ## Parámetros
</div>

Sender

\[in] Este parámetro hace referencia al objeto [FRDocument](/es/fine-reader/engine/api-reference/document-related-objects/frdocument), que envía notificaciones.

Percentage

\[in] Este parámetro contiene el porcentaje de trabajo completado hasta el momento. Está en el intervalo de 0 a 100.

Cancel

\[in, out] Puede establecer esta variable en TRUE para indicar que el proceso debe detenerse. En este caso, la función de procesamiento devuelve E\_ABORT.

<div id="return-values">
  ## Valores de retorno
</div>

\[Solo para C++] Si este método devuelve un valor distinto de S\_OK, significa que se produjo un error del lado del cliente y, en ese caso, no se tiene en cuenta el valor del parámetro Cancel.

<div id="remarks">
  ## Observaciones
</div>

La implementación cliente de este método debe garantizar que todas las excepciones que se produzcan dentro del método se capturen y gestionen, y que no se propague ninguna excepción fuera del método. La propagación de una excepción fuera del método puede dar lugar a resultados impredecibles (como la finalización del programa).

<div id="see-also">
  ## Consulte también
</div>

[IFRDocumentEvents](/es/fine-reader/engine/api-reference/document-related-objects/ifrdocumentevents)

[FRDocument](/es/fine-reader/engine/api-reference/document-related-objects/frdocument)
