FORMS programs usually use DLL extensions internally, so normally you do not need to use this feature.
When a DLL extension is loaded, then the C function specified in the DLLEntryPoint entry in the ini file is called.
The C function must have the signature shown below. The function must return non-zero if successful, or 0 if there was an error.
#pragma pack(8)
typedef struct
{
DWORD dwStructSize; // Size, in bytes, of the structure
DWORD dwEHVersion; // FORMS application version
DWORD dwEHFamily; // ReadSoft product family, from the EEH_AppFamily enum
DWORD dwEHApplicationID; // Application identifier, from the EEH_AppID enum, or product family specific
void *pApplicationObject; // Pointer to EH C++ application object
LPWSTR szIniFile; // Name of Ehlocal.ini file, in UNICODE
LPWSTR szIniSection; // Name of section in Ehlocal.ini file, in UNICODE
DWORD dwPluginInfo; // Plug-in-specific information
void *pPluginData; // Pointer to plug-in-specific information
} EHC_DLLPluginEnv_t;
extern "C" DWORD EHPluginEntry( EHC_DLLPluginEnv_t *pEnvironment );