Passer au contenu principal
Cette rubrique s’applique à FRE pour Windows .
ABBYY FineReader Engine 12 prend en charge la liaison dynamique dans les interfaces COM :
  • Presque toutes les interfaces d’ABBYY FineReader Engine 12 dérivent de IDispatch (à l’exception de certaines interfaces de rappel implémentées côté client).
  • Les langages de script (par exemple, VBScript et JScript) ne prennent en charge que la liaison dynamique. Par conséquent, comme ces interfaces héritent de IDispatch, l’utilisation de l’API ABBYY FineReader Engine depuis ces langages demande un minimum d’efforts supplémentaires : seul l’objet Engine ne peut pas être créé à l’aide de la méthode COM CoCreateObject. Pour charger l’objet Engine, utilisez l’une des méthodes de l’interface IEngineLoader. Cette interface est implémentée dans deux objets qui assurent respectivement le chargement in-process et out-of-process de l’objet Engine : InprocLoader et OutprocLoader. Vous pouvez créer l’un ou l’autre de ces objets à l’aide des méthodes fournies par votre langage de script, puis appeler la méthode InitializeEngine pour charger l’objet Engine.
  • Les autres objets créés par les méthodes de l’objet Engine nommées “Create…” ou “Load…” peuvent désormais être créés et utilisés directement depuis le langage de script.
  • L’interface IEngineLoader fournit également une propriété NullObject qui renvoie une référence vers un objet nul. Dans les langages de script, null n’est pas en soi un objet, mais certaines méthodes doivent recevoir des paramètres null pour appliquer le comportement par défaut. (Par exemple, la méthode IFRDocument::Analyze peut recevoir null à la place d’objets paramètres, auquel cas l’analyse est effectuée avec les paramètres par défaut du profil chargé.)
L’enregistrement de FREngine.dll est nécessaire lors de l’installation de l’application sur l’ordinateur de l’utilisateur final. Pour enregistrer FREngine.dll, utilisez la ligne de commande suivante :
regsvr32 /s /n /i:"<path to the Inc folder>" "<path to FREngine.dll>"
Par exemple, vous pouvez créer l’objet Engine à l’aide de la fonction JavaScript ActiveXObject.
// créer l'objet EngineLoader
var EngineLoader = new ActiveXObject( "FREngine.OutprocLoader" );
...
// obtenir l'objet Engine
var Engine = EngineLoader.InitializeEngine( CustomerProjectId, LicensePath, LicensePassword, "", "", false );
// indiquez votre Customer Project ID, le chemin vers le fichier de licence en ligne et le mot de passe de la licence en ligne
Dans VBScript, utilisez la méthode CreateObject :
' créer l'objet EngineLoader
Set EngineLoader = CreateObject( "FREngine.OutprocLoader" )
...
' obtenir l'objet Engine
Set Engine = EngineLoader.InitializeEngine( CustomerProjectId, LicensePath, LicensePassword, "", "", False )
En Perl, utilisez la méthode CreateObject :
# créer l'objet EngineLoader
$EngineLoader = $WScript->CreateObject( 'FREngine.OutprocLoader' );
...
# obtenir l'objet Engine
$Engine = $EngineLoader->InitializeEngine( CustomerProjectId, LicensePath, LicensePassword, '', '', 0 );

Exemples

Voir l’exemple Hello en JavaScript, VBScript et Perl, qui présente une application simple illustrant l’utilisation d’ABBYY FineReader Engine dans des langages de script.

Voir aussi

IEngineLoader