Questo metodo è implementato sul lato client. Viene chiamato da ABBYY FineReader Engine per alcuni metodi dell’oggetto FRDocument. Fornisce al client informazioni sulla percentuale approssimativa di completamento dell’operazione corrente (caricamento dell’immagine, analisi, riconoscimento e così via). La sua implementazione può visualizzare un indicatore di avanzamento, come avviene in ABBYY FineReader.
In Windows, può anche elaborare eventuali messaggi di sistema per evitare che l’applicazione sembri bloccata durante operazioni lunghe. Ciò può risultare utile nelle applicazioni con un’interfaccia utente.
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] Questo parametro fa riferimento all’oggetto FRDocument che invia le notifiche.
Percentage
[in] Questo parametro contiene la percentuale di lavoro attualmente completata. È compresa tra 0 e 100.
Cancel
[in, out] È possibile impostare questa variabile su TRUE per indicare che l’elaborazione deve essere interrotta. In questo caso, la funzione di elaborazione restituisce E_ABORT.
[Solo C++] Se questo metodo restituisce un valore diverso da S_OK, significa che si è verificato un errore sul client e, in questo caso, il valore del parametro Cancel non viene preso in considerazione.
L’implementazione del client di questo metodo deve garantire che tutte le eccezioni generate all’interno del metodo vengano intercettate e gestite e che nessuna eccezione venga propagata al di fuori del metodo. La propagazione di un’eccezione al di fuori del metodo può causare risultati imprevedibili (come la terminazione del programma).
IFRDocumentEvents
FRDocument