Zum Hauptinhalt springen
Dieses Thema gilt für FRE für Windows.
ABBYY FineReader Engine 12 unterstützt dynamische Bindung in COM-Schnittstellen:
  • Fast alle Schnittstellen von ABBYY FineReader Engine 12 leiten sich von IDispatch ab (Ausnahmen sind einige der clientseitig implementierten Callback-Schnittstellen).
  • Skriptsprachen (z. B. VBScript und JScript) unterstützen nur dynamische Bindung. Daher erfordert die Verwendung der ABBYY FineReader Engine API aus diesen Sprachen durch die Ableitung solcher Schnittstellen von IDispatch nur minimalen zusätzlichen Aufwand: Nur das Engine-Objekt kann nicht mit der COM-Methode CoCreateObject erstellt werden. Verwenden Sie zum Laden der Engine eine der Methoden der Schnittstelle IEngineLoader. Diese Schnittstelle ist in zwei Objekten implementiert, die jeweils das In-Process- bzw. Out-of-Process-Laden der Engine ermöglichen: InprocLoader und OutprocLoader. Sie können eines dieser Objekte mit den in Ihrer Skriptsprache verfügbaren Methoden erstellen und anschließend die Methode InitializeEngine aufrufen, um die Engine zu laden.
  • Die anderen Objekte, die von den Methoden des Engine-Objekts mit den Namen “Create…” oder “Load…” erstellt werden, können nun direkt aus der Skriptsprache erstellt und verwendet werden.
  • Die Schnittstelle IEngineLoader stellt außerdem die Eigenschaft NullObject bereit, die einen Verweis auf ein Nullobjekt zurückgibt. In Skriptsprachen ist null selbst kein Objekt, einige Methoden müssen jedoch für das Standardverhalten Nullparameter erhalten. (Beispielsweise kann die Methode IFRDocument::Analyze anstelle von Parameterobjekten null empfangen; in diesem Fall wird die Analyse mit den Standardeinstellungen des geladenen Profils durchgeführt.)
Die Registrierung von FREngine.dll ist erforderlich, wenn die Anwendung auf dem Computer eines Endbenutzers installiert wird. Verwenden Sie zum Registrieren von FREngine.dll die folgende Befehlszeile:
regsvr32 /s /n /i:"<path to the Inc folder>" "<path to FREngine.dll>"
Sie können beispielsweise das Engine-Objekt mit der JavaScript-Funktion ActiveXObject erstellen.
// EngineLoader-Objekt erstellen
var EngineLoader = new ActiveXObject( "FREngine.OutprocLoader" );
...
// Engine-Objekt abrufen
var Engine = EngineLoader.InitializeEngine( CustomerProjectId, LicensePath, LicensePassword, "", "", false );
// Geben Sie Ihre Customer Project ID, den Pfad zur Online-Lizenzdatei und das Kennwort für die Online-Lizenz an
Verwenden Sie in VBScript die Methode CreateObject:
' EngineLoader-Objekt erstellen
Set EngineLoader = CreateObject( "FREngine.OutprocLoader" )
...
' Engine-Objekt abrufen
Set Engine = EngineLoader.InitializeEngine( CustomerProjectId, LicensePath, LicensePassword, "", "", False )
Verwenden Sie in Perl die Methode CreateObject:
# EngineLoader-Objekt erstellen
$EngineLoader = $WScript->CreateObject( 'FREngine.OutprocLoader' );
...
# Engine-Objekt abrufen
$Engine = $EngineLoader->InitializeEngine( CustomerProjectId, LicensePath, LicensePassword, '', '', 0 );

Beispiele

Siehe das Beispiel Hello für JavaScript, VBScript und Perl. Es zeigt eine einfache Anwendung, die die Verwendung von ABBYY FineReader Engine in Skriptsprachen veranschaulicht.

Siehe auch

IEngineLoader