> ## Documentation Index
> Fetch the complete documentation index at: https://docs.abbyy.com/llms.txt
> Use this file to discover all available pages before exploring further.

# IEngineLoader Interface

<Note>
  This interface is implemented in FRE for Windows.
</Note>

This interface is used specifically to load and unload the [Engine](/fine-reader/engine/api-reference/engine-object-iengine-interface) object. This interface expands the use of ABBYY FineReader Engine in multi-threaded applications. The methods of this interface are an alternative to the existing [InitializeEngine](/fine-reader/engine/api-reference/functions/initializeengine-function) and [DeinitializeEngine](/fine-reader/engine/api-reference/functions/deinitializeengine-function) functions. For more information, please refer to the [Different Ways to Load the Engine Object](/fine-reader/engine/guided-tour/advanced-techniques/programming-aspects/different-ways-to-load-engine) section.

This interface is available in the [InprocLoader](/fine-reader/engine/api-reference/engine-loaders/inprocloader) and [OutprocLoader](/fine-reader/engine/api-reference/engine-loaders/outprocloader) objects, which allow you to load FineReader Engine by means of COM either as an in-process server into the current process or as an out-of-process server into a separate process.

## Properties

| Name       | Type                    | Description                                                                                                                                                                                                                  |
| ---------- | ----------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| NullObject | IUnknown\\\*, read-only | This property returns a reference to null object. This can be useful in scripting languages, in which null is not an object, when there is a need to pass null into a method requiring an object to ensure default behavior. |

## Methods

| Name                                                                                                       | Description                                                                                                     |
| ---------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------- |
| [InitializeEngine](/fine-reader/engine/api-reference/engine-loaders/iengineloader/initializeengine-method) | Loads an instance of ABBYY FineReader Engine and allows you to set additional parameters during initialization. |
| [ExplicitlyUnload](/fine-reader/engine/api-reference/engine-loaders/iengineloader/explicitlyunload-method) | Unloads ABBYY FineReader Engine.                                                                                |

## See also

[InprocLoader](/fine-reader/engine/api-reference/engine-loaders/inprocloader)

[OutprocLoader](/fine-reader/engine/api-reference/engine-loaders/outprocloader)

[Different Ways to Load Engine Object](/fine-reader/engine/guided-tour/advanced-techniques/programming-aspects/different-ways-to-load-engine)

[Using ABBYY FineReader Engine in Multi-Threaded Server Applications](/fine-reader/engine/guided-tour/advanced-techniques/programming-aspects/using-in-server-applications)
