KVXMLEndOOPSession()
This function terminates the current out-of-process conversion session, and releases the source data and resources related to the session.
Syntax
BOOL pascal KVXMLEndOOPSession( void *pContext, BOOL bKeepServantAlive, KVErrorCodeEx *pError DWORD dwOptions, void *pReserved1, void *pReserved2 );
Arguments
|
|
A pointer to an Export session that you initialized by calling fpInit(). |
|
|
Set Set |
|
|
A pointer to an error code defined in |
|
|
Reserved for future use. |
|
|
Reserved for future use. |
|
|
Reserved for future use. |
Returns
-
If the call is successful, the return value is
TRUE. -
If the call is unsuccessful, the return value is
FALSE.
Example
The following sample code is from the cnv2xmloop sample program:
/* declare endsession function pointer */
BOOL (pascal *fpKVXMLEndOOPSession)( void *,
BOOL ,
KVErrorCode *,
DWORD ,
void *,
void *);
/* assign OOP endsession function pointer */
fpKVXMLEndOOPSession = (BOOL (pascal *)( void *,
BOOL ,
KVErrorCode *,
DWORD ,
void *,
void * ))mpGetProcAddress(hKVXML, "KVXMLEndOOPSession");
if(!fpKVXMLEndOOPSession)
{
printf("Error assigning KVXMLEndOOPSession() pointer\n");
(*KVXMLInt.fpFileToInputStreamFree)(pKVXML, &Input);
(*KVXMLInt.fpFileToOutputStreamFree)(pKVXML, &Output);
mpFreeLibrary(hKVXML);
return 8;
}
/********END OOP SESSION, DO NOT KEEP SERVANT ALIVE *********/
if(!(*fpKVXMLEndOOPSession)(pKVXML,
FALSE,
&error,
0,
NULL,
NULL))
{
printf("Error calling fpKVXMLEndOOPSession \n");
(*KVXMLInt.fpFileToInputStreamFree)(pKVXML, &Input);
(*KVXMLInt.fpFileToOutputStreamFree)(pKVXML, &Output);
(*KVXMLInt.fpShutDown)(pKVXML);
mpFreeLibrary(hKVXML);
return 10;
}