How to run FineReader Engine 64-bit from x32 (x86) application?

Question

ABBYY is ending the support for 32-bit compatible product versions. Will I be able to use FineReader Engine 64-bit from my 32-bit application?

Answer

There is a small tutorial on how to use 64-bit DLLs in 32-bit Processes with Out-of-process COM.

Steps for Visual Studio C# instructions of calling 64-bit library from 32-bit application:

  1. Create 64-bit COM Server
    1. Create new class library project

    2. Add reference to System.Windows.Forms.dll (optional, to show message boxes)

    3. Add reference to Interop.FREngine

    4. Add SamplesConfig.cs from C:\ProgramData\ABBYY\SDK\12\FineReader Engine\Samples\Visual CS

    5. Add EngineLoader.cs from C:\ProgramData\ABBYY\SDK\12\FineReader Engine\Samples\Visual CS\SharedTools

    6. Refer to the attached code sample, _64_bit_FREngine_example.cs,  and modify the source code accordingly.

    7. Build the project,

      • make sure you set 64-bit configuration

  2. Register the 64-bit library:
    C:\Windows\Microsoft.NET\Framework64\v4.0.30319\regasm.exe library.dll /codebase
    • start the Command Prompt (CMD) as an Administrator
    • change "library.dll" to the full name of your library
  3. Modify the registry in the following way and create new keys and values, if needed:
    [HKEY_CLASSES_ROOT\AppID\{D698BA94-AEFF-3D4F-9D11-BC6DE81D330B}]
    "DllSurrogate"=""
    [HKEY_CLASSES_ROOT\CLSID\{D698BA94-AEFF-3D4F-9D11-BC6DE81D330B}]
    "AppID"="{D698BA94-AEFF-3D4F-9D11-BC6DE81D330B}"

     
  4. Create 32-bit COM Client
    1. Create new application project
    2. Refer to the attached code sample, _32_bit_FREngine_caller.cs, and modify the source code accordingly.

    3. Run the project,

      • make sure you set 32-bit configuration

Now you should be able to use 64-bit library, which uses FineReader Engine 12 64-bit from 32-bit application.

Was this article helpful?

0 out of 0 found this helpful

Have more questions? Submit a request

Comments

0 comments

Article is closed for comments.

Recently viewed