KVGetExtractInterface()

This function is the entry point to obtain the file extraction functions. It supplies pointers to the file extraction functions, and in the case of out-of-process mode starts the kvoop.exe server and initializes out-of-process extraction services. When KVGetExtractInterface() is called, it assigns the function pointers in the structure KVExtractInterface to the functions described in this section.

Syntax

int pascal KVGetExtractInterface (
    void                    *pContext,
    KVExtractInterface       pIextract);

Arguments

pContext A pointer returned from fpInit().
pIextract

A pointer to the KVExtractInterface structure, which contains function pointers that KVGetExtractInterface() assigns to all other file extraction functions.

Before you initialize the KVExtractInterface structure, use the macro KVStructInit to initialize the KVStructHead structure.

Returns

Example

fpKVGetExtractInterface = 
(int (pascal *)( void *, KVExtractInterface))myGetProcAddress(hKVFilter, (char*)"KVGetExtractInterface");
/*Initialize file extraction interface structure using KVStructInit*/
KVStructInit(&extractInterface);
/* Retrieve file extraction interface */
error = (*fpKVGetExtractInterface)(pFilter,&extractInterface))

Discussion

You can define only one extraction structure for one context pointer. For example, the following is not allowed:

fpInit()
   KVGetExtractInterface(pFilter, &extractInterface1)

   fpOpenFile()
   fpGetMainFileInfo()
   fpGetSubFileInfo()
   fpExtractSubFile
   fpGetSubFileMetadata()
   fpFilterFile()
   fpCloseFile()
   ...

   KVGetExtractInterface(pFilter, &extractInterface2)
   fpOpenFile()
   fpGetMainFileInfo()
   fpGetDocInfoFile()
   fpGetOLESummaryInfoFile()
   fpFilterFile()
   fpCloseFile()
   ...
fpShutdown()

_HP_HTML5_bannerTitle.htm