fpInit()

This function initializes a Filter session. Its return value, pContext, is passed as the first argument to the File Extraction interface and all other Filter functions.

DEPRECATED: The fpInit() function is deprecated in KeyView 12.7.0 and later. Micro Focus recommends that you use fpInitWithLicenseData() instead, so that your license key is passed to KeyView through the API. You should not include license information in your application as a file (kv.lic).

This function is still available for existing implementations, but it might be incompatible with new functionality. The function might be removed in future.

Syntax

void * pascal fpInit( 
    KVMemoryStream  *pMemAllocator,
    KVDynLink       *pDynLink,
    char            *pszKeyViewDir,
    KVCharSet        outputCharSet,
    DWORD            dwFlags );

Arguments

pMemAllocator This argument is deprecated in KeyView 12.10.0 and later, and should be NULL. If it is not, KeyView may use the functions in this developer-defined memory allocator to allocate memory.
pDynLink This argument is reserved. It must be NULL.
pszKeyViewDir A pointer to the directory where the Filter components (such as the formats.ini file, license key file (kv.lic), and file filters) are located. This is normally the install\OS\bin directory.
outputCharSet

The character set to use for textual output when the source character set can be determined from the document or is specified by fpSetSrcCharSet().

The character sets are enumerated in KVCharSet in kvcharset.h.

dwFlags Instructions on how to process a file or stream. See Flags for dwFlags for more information.

Flags for dwFlags

KVF_CONTENTACCESS

Reserved for internal use.

KVF_METADATA

Reserved for internal use.

KVF_OUTOFPROCESS Enables out-of-process filtering. This is enabled by default. See The Filter Process Model.
KVF_INPROCESS Enables in-process filtering. See The Filter Process Model.
KVF_HEADERFOOTERTAGS Puts tags around header and footer data.
KVF_HEADERFOOTER Extracts headers and footers.
KVF_UNICODEMSBLSB Uses the byte order for Big Endian systems (MSBLSB) for Unicode text. MSBLSB is the "Most Significant Byte Least Significant Byte."
KVF_UNICODELSBMSB Uses the byte order for Little Endian systems (LSBMSB) for Unicode text. LSBMSB is the "Least Significant Byte Most Significant Byte."
KVF_UNICODEMARKER Generates the byte order marker for Unicode text.
KVF_NODEFAULTCHARSETCONVERT Prevents default conversion of document character encoding. See Customize Character Set Detection and Conversion.
KVF_OOPLOGON Enables the out-of-process error log. See Enable or Disable Error Logging.
KVF_OOPMEMTRACEON Enables memory trace for the out-of-process error log. See Report Memory Errors.
KVF_OOPLOGOFF Disables the out-of-process error log. Enable or Disable Error Logging.
KVF_OOPMEMTRACEOFF Disables memory trace for the out-of-process error log. See Report Memory Errors.
KVF_FILTERCONTAINERCONTENT

This flag is used by the Container API which is obsolete.

It filters the main file and subfiles of a container file by using the standard filtering functions, and extracts the text to a single file.

KVF_DETECT_OUTOFPROCESS

KVF_DETECT_INPROCESS

Set these flags in fpInit() or fpOpenStreamEx2() to specify whether files are detected out of process or in process for a filtering session. These flags override the default_detect_inprocess flag in formats.ini.

If you set neither of these flags, file detection behavior is determined by the KVF_OUTOFPROCESS or KVF_INPROCESS flags in these calls. If you do not set these flags, behavior is determined by default_detect_inprocess in formats.ini.

See Run File Detection In or Out of Process.

Returns

Discussion