fpInit()
This function initializes an Export session. If initialization is successful, the KVPDFContext
value pointed to by pContext
is set to a valid context identifier. This context value must be passed as the first parameter to all other PDF Export 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
KVPDFState pascal fpInit( const char* const pszKeyViewDir, const char* const pszTempFolder, KVPDFContext* const pContext);
Arguments
|
A null-terminated C string that contains the path of the directory where the Export components are located. This is normally the directory install\OS\bin , where install is the path name of the Export installation directory and OS is the name of the operating system. |
|
(Optional) A null-terminated C string that contains the path of a directory to use to store temporary files during the conversion process. Set this value to NULL to default to the system temporary directory. |
|
A valid pointer to a value of type KVPDFContext . If initialization is successful, this target is set to a context-identifying value, which you must supply to subsequent export functions. |
Returns
-
If the call is successful, a
KVPDFState
structure witheErrorCode
set toKVERR_Success
. -
If the call is unsuccessful, a
KVPDFState
structure that indicates the reason for the error.
Discussion
-
You can perform multiple calls to subsequent functions in serial using the same context (session).
-
On Windows systems, specify the paths in the local Windows code page.
-
To ensure multithreaded conversions are thread-safe, you must create a unique context pointer for every thread by calling
fpInit()
. In addition, threads must not share context pointers, and you must use the same context pointer for all API calls in the same thread. -
When the conversion context is no longer required, you must terminate by calling
fpShutdown()
. See fpShutDown(). -
Internally,
KVPDFContext
is a pointer, and Micro Focus recommends that you initialize values of typeKVPDFContext
to NULL. -
If the call is unsuccessful, the value pointed to by
pContext
is not modified. No context has been created so there is no need to callfpShutdown()
.IMPORTANT: It is not safe to call
fpShutdown()
with any value other than one arising from a successful call tofpInit()
(or NULL). -
On Windows,
pszKeyViewDir
andpszTempFolder
must be in the local Windows code page.