> ## 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éthode OnProgress de l’interface IDocumentViewerEvents

> Méthode OnProgress de l’interface IDocumentViewerEvents dans ABBYY FineReader Engine Visual Components sous Windows — Cette méthode est implémentée côté client.

Cette méthode est implémentée côté client. Elle est appelée par ABBYY FineReader Engine pendant l’analyse ou la reconnaissance de la page active dans [Document Viewer](/fr/fine-reader/engine/visual-components-reference/documentviewer). Le processus peut être lancé de l’une des façons suivantes :

* à l’aide des commandes de Document Viewer :
  * [MI\_Read](/fr/fine-reader/engine/visual-components-reference/documentviewer/document-viewer-commands#mi_read)
  * [MI\_AnalyzeLayout](/fr/fine-reader/engine/visual-components-reference/documentviewer/document-viewer-commands#mi_analyzelayout)

Pour savoir comment appeler ces commandes, consultez la liste [Document Viewer Commands](/fr/fine-reader/engine/visual-components-reference/documentviewer/document-viewer-commands).

* à l’aide des commandes suivantes de [Image Viewer](/fr/fine-reader/engine/visual-components-reference/imageviewer), synchronisé avec Document Viewer :
  * [MI\_Read](/fr/fine-reader/engine/visual-components-reference/imageviewer/image-viewer-commands#mi_read)
  * [MI\_ReadBlock](/fr/fine-reader/engine/visual-components-reference/imageviewer/image-viewer-commands#mi_readblock)
  * [MI\_AnalyzeLayout](/fr/fine-reader/engine/visual-components-reference/imageviewer/image-viewer-commands#mi_analyzelayout)
  * [MI\_AnalyzeLayoutInBlock](/fr/fine-reader/engine/visual-components-reference/imageviewer/image-viewer-commands#mi_analyzelayoutinblock)

Pour savoir comment appeler ces commandes, consultez la liste [Image Viewer Commands](/fr/fine-reader/engine/visual-components-reference/imageviewer/image-viewer-commands).

* à l’aide des commandes suivantes de [Zoom Viewer](/fr/fine-reader/engine/visual-components-reference/zoomviewer), synchronisé avec Image Viewer :
  * [MI\_Read](/fr/fine-reader/engine/visual-components-reference/zoomviewer/zoom-viewer-commands#mi_read)
  * [MI\_ReadBlock](/fr/fine-reader/engine/visual-components-reference/zoomviewer/zoom-viewer-commands#mi_readblock)
  * [MI\_AnalyzeLayout](/fr/fine-reader/engine/visual-components-reference/zoomviewer/zoom-viewer-commands#mi_analyzelayout)
  * [MI\_AnalyzeLayoutInBlock](/fr/fine-reader/engine/visual-components-reference/zoomviewer/zoom-viewer-commands#mi_analyzelayoutinblock)

Pour savoir comment appeler ces commandes, consultez la liste [Zoom Viewer Commands](/fr/fine-reader/engine/visual-components-reference/zoomviewer/zoom-viewer-commands).

* via l’API FineReader Engine

Elle fournit au client un pourcentage approximatif d’avancement de l’opération. Son implémentation peut afficher un indicateur de progression. Traitez les messages système afin d’éviter que l’application ne semble ne plus répondre pendant les opérations longues. Cela peut être utile dans les applications dotées d’une interface utilisateur. Cette méthode permet également d’annuler l’opération.

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

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

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

### C\#

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

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

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

<div id="parameters">
  ## Paramètres
</div>

Percentage

\[in] Contient le pourcentage de travail actuellement effectué. Sa valeur est comprise entre 0 et 100.

Cancel

\[out] Vous pouvez affecter la valeur TRUE à cette variable pour indiquer que le processus doit être arrêté. Dans ce cas, le processus d’analyse ou de reconnaissance sera interrompu.

<div id="return-values">
  ## Valeurs de retour
</div>

\[C++ uniquement] Si cette méthode renvoie une valeur différente de S\_OK, cela indique qu’une erreur s’est produite côté client et, dans ce cas, la valeur du paramètre Cancel n’est pas prise en compte.

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

L’implémentation du client de cette méthode doit garantir que toutes les exceptions levées à l’intérieur de la méthode sont capturées et gérées, et qu’aucune n’est propagée en dehors de la méthode. La propagation d’une exception en dehors de la méthode peut entraîner des résultats imprévisibles (comme l’arrêt du programme).

<div id="see-also">
  ## Voir aussi
</div>

[DocumentViewer](/fr/fine-reader/engine/visual-components-reference/documentviewer)

[IDocumentViewerEvents](/fr/fine-reader/engine/visual-components-reference/idocumentviewerevents)
