The PrtFilterJobStart function is called to inform the print data filter DLL that a new job has just been started. This allows the DLL to provide custom processing and send special data to the print server at the beginning of a job.
void * WINAPI PrtFilterJobStart(
char *SessionName,
DWORD LUType,
char **pBufPtr,
DWORD *pBufLen
);
The PrtFilterJobStart function returns a unique identifier (cast to a pointer to a void) if it wants the opportunity to filter the data for this print job.
If the user DLL returns a NULL pointer, it is indicating that it is not interested in filtering this job. No further calls to the user DLL will be made for this print job.
No data is passed in the data buffer to the print data filter DLL in this call, but the DLL can return data in pBufPtr (for example, a banner page). The data returned from this call should be printable ASCII and/or printer control sequences.