Este método é implementado no FRE para Windows.
Este método é usado para obter um ponteiro para a interface IEngine. Ele facilita o acesso ao licenciamento online, se necessário, e também permite especificar alguns parâmetros adicionais durante a inicialização. Ele recebe como parâmetro de entrada o número do Customer Project ID, que é uma string alfanumérica comum a todas as licenças Developer e Runtime usadas pelo projeto.
Conforme implementado no objeto InprocLoader, o método carrega o FineReader Engine como um servidor in-process no processo atual. Conforme implementado no objeto OutprocLoader, o método carrega o FineReader Engine como um servidor out-of-process em um processo separado.
HRESULT __stdcall InitializeEngine(
BSTR CustomerProjectID,
BSTR LicensePath,
BSTR LicensePassword,
BSTR FREngineDataFolder,
BSTR FREngineTempFolder,
VARIANT_BOOL IsSharedCPUCoresMode,
IEngine** Engine
);
int InitializeEngine(
string CustomerProjectID,
string LicensePath,
string LicensePassword,
string FREngineDataFolder,
string FREngineTempFolder,
bool IsSharedCPUCoresMode,
ref IEngine Engine
);
Private Declare Function InitializeEngine Lib "FREngine.dll" ( _
CustomerProjectID As String, _
LicensePath As String, _
LicensePassword As String, _
FREngineDataFolder As String, _
FREngineTempFolder As String, _
IsSharedCPUCoresMode As Boolean, _
ByRef Engine As FREngine.IEngine) _
As Integer
CustomerProjectID
[in] Uma string que contém o número de Customer Project ID correspondente à licença necessária.
Durante a inicialização da biblioteca, a lista de todas as licenças disponíveis é pesquisada em busca de uma licença Developer ou Runtime correspondente a este Customer Project ID. Se nenhuma licença correspondente for encontrada, será gerado um erro referente à última licença verificada. No entanto, você pode passar 0 para este parâmetro e selecionar a licença mais tarde, chamando o método IEngine::SetCurrentLicense antes de chamar quaisquer outros métodos da biblioteca.
LicensePath
[in] O nome completo do arquivo da Licença Online. Se você não usar uma Licença Online, passe uma string vazia "" ou um ponteiro NULL.
LicensePassword
[in] A senha da Licença Online. Se você não usar uma Licença Online, passe uma string vazia "" ou um ponteiro NULL.
FREngineDataFolder
[in] Contém o caminho para a pasta em que o ABBYY FineReader Engine deve armazenar dados específicos do usuário. Por padrão, para instalação automática:
%ProgramData%\ABBYY\SDK\12\FineReader Engine for auxiliary engine data
%ProgramData%\ABBYY\SDK\12\Licenses for license data
Se você definir o valor de FREngineDataFolder, todas as informações auxiliares serão gravadas em uma nova pasta de dados. Talvez seja necessário alterar o valor padrão, por exemplo, se as configurações de idioma da interface do seu aplicativo precisarem ser diferentes das de outros aplicativos que usam o FineReader Engine. Após alterar o valor padrão, certifique-se de ter permissões de controle total na nova pasta de dados.
FREngineTempFolder
[in] Contém o caminho para a pasta dos arquivos temporários do ABBYY FineReader Engine. Por padrão, é a pasta %TEMP%\ABBYY FineReader Engine 12.
IsSharedCPUCoresMode
[in] Especifica se os núcleos da CPU devem ser usados em modo compartilhado. Há dois modos de uso dos núcleos da CPU: separado e compartilhado. No modo separado, o ABBYY FineReader Engine não usa mais processos do que o permitido pela licença. No modo compartilhado, qualquer número de processos pode ser executado, mas todos esses processos usarão apenas os núcleos da CPU especificados pela propriedade IMultiProcessingParams::SharedCPUCoresMask.
Result
[out, retval] Um ponteiro para a variável de ponteiro IEngine* que recebe o ponteiro de interface para o objeto Engine resultante.
Este método não tem valores de retorno específicos. Ele retorna os valores de retorno padrão das funções do ABBYY FineReader Engine.
IEngineLoader
ExplicitlyUnload
Diferentes formas de carregar o objeto Engine