Diese Methode wird clientseitig implementiert. Sie wird von ABBYY FineReader Engine für einige Methoden des FRDocument-Objekts aufgerufen. Sie liefert dem Client Informationen über den ungefähren Fortschritt des aktuellen Vorgangs (Laden von Bildern, Analyse, Erkennung usw.). Die Implementierung kann einen Fortschrittsindikator anzeigen, wie es auch in ABBYY FineReader geschieht.
Unter Windows kann sie außerdem Systemmeldungen verarbeiten, damit die Anwendung bei längeren Vorgängen nicht den Eindruck erweckt, nicht mehr zu reagieren. Dies kann in Anwendungen mit Benutzeroberfläche hilfreich sein.
HRESULT OnProgress(
IFRDocument* Sender,
int Percentage,
VARIANT_BOOL* Cancel
);
void OnProgress(
IFRDocument Sender,
int Percentage,
ref bool Cancel
);
Sub OnProgress( _
Sender As IFRDocument, _
Percentage As Integer, _
ByRef Cancel As Boolean _
)
Sender
[in] Dieser Parameter bezieht sich auf das Objekt FRDocument, das Benachrichtigungen sendet.
Percentage
[in] Dieser Parameter enthält den aktuellen Fortschritt in Prozent. Der Wert liegt im Bereich von 0 bis 100.
Cancel
[in, out] Sie können diese Variable auf TRUE setzen, um anzugeben, dass der Vorgang abgebrochen werden soll. In diesem Fall gibt die Verarbeitungsfunktion E_ABORT zurück.
[Nur C++] Wenn diese Methode einen anderen Wert als S_OK zurückgibt, bedeutet das, dass clientseitig ein Fehler aufgetreten ist; in diesem Fall wird der Wert des Parameters Cancel nicht berücksichtigt.
Die Client-Implementierung dieser Methode muss sicherstellen, dass alle innerhalb der Methode ausgelösten Ausnahmen abgefangen und verarbeitet werden und dass keine Ausnahmen über die Methode hinaus weitergegeben werden. Die Weitergabe einer Ausnahme über die Methode hinaus kann zu unvorhersehbaren Ergebnissen führen (z. B. zur Beendigung des Programms).
IFRDocumentEvents
FRDocument