The following modifications were made to the data record filter callback DLL support:
Require a filter callback DLL to export a function named GetFilterVersion() that returns the version of the filter callback API that the DLL uses. When loading a filter callback DLL, the c-treeACE Server calls this function and fails to load the DLL with error CBKV_ERR (870) if the filter callback API version returned by the DLL doesn’t match the filter callback DLL API version that the c-treeACE Server is using.
Make the name of the data file for which a filter callback function is set available to the DLL load, filter evaluation, and DLL unload functions exported by a data record filter callback DLL. Note that this revision sets the c-treeACE Server’s filter callback API version to 2 to indicate the addition of a filename field, cbfilnam, to the CBDLL structure. The name of the data file is copied to this field so that it is available to the data record filter DLL callback functions.
Callback functions exported from a filter callback DLL were renamed:
ctfiltercbLoadLib() is now LoadFilter()
ctfiltercbEval() is now EvaluateFilter()
ctfiltercbUnloadLib() is now UnloadFilter()
The cblibhandle field of the CBDLL structure was renamed cbfilterhandle.
The c-treeACE Server DLL now exports the function ctStatusLogWrite(), which writes the specified message to the c-treeACE Server status log file. The prototype for this function is:
COUNT ctStatusLogWrite(pTEXT msg,NINT err)
msg is the message to write to the status log
err is the error code to include in the message.
Example
ctStatusLogWrite("This is a test", 3);
writes a message in the following format to CTSTATUS.FCS: