PrtFilterJobData 함수는 인쇄되기 전에 사용자 DLL이 프린터 데이터를 조작할 수 있는 기회를 제공하기 위해 호출됩니다. 이렇게 하면 DLL이 인쇄 서버로 전송된 인쇄 데이터에 대한 사용자 지정 처리를 제공할 수 있습니다.
구문
void WINAPI PrtFilterJobData(
void *UniqueID,
char **pBufPtr,
DWORD *pBufLen );
매개 변수
Uniqueid
제공된 매개 변수입니다. 인쇄 작업을 식별하기 위해 PrtFilterJobStart 함수에서 반환한 UniqueID 값입니다.
pBufPtr
인쇄 서버는 이 들어오는 버퍼에서 처리하기 위해 호스트에서 받은 인쇄 데이터를 사용자 DLL에 전달합니다. 사용자 DLL은 인쇄할 데이터의 나가는 버퍼에 대한 포인터를 인쇄 서버로 반환합니다. 인쇄 데이터 필터 DLL이 데이터를 수정할 수 있으므로 이 나가는 버퍼 포인터는 수신된 버퍼 포인터와 다를 수 있습니다. 이 경우 PrtFilterFree 는 나가는 버퍼 포인터에 대한 호스트 인쇄 서비스에서만 호출됩니다. 필요한 경우 인쇄 데이터 필터 DLL은 PrtFilterJobData 함수에 제공된 들어오는 버퍼 포인터에서 자체 자유 함수를 호출해야 합니다. 이 들어오는 버퍼는 PrtFilterAlloc에 대한 이전 호출에 의해 호스트 인쇄 서비스에 의해 할당되었습니다.
pBufLen
버퍼에 전달된 데이터의 길이와 사용자가 제공한 DLL에서 인쇄 서버에 반환된 버퍼의 길이를 나타냅니다.
설명
버퍼의 데이터는 인쇄 작업에서 전송되는 경우 인쇄 가능한 ASCII 및/또는 프린터 제어 시퀀스입니다. 사용자 DLL에서 반환된 버퍼는 전달된 버퍼와 같을 필요가 없습니다. 반환된 버퍼는 데이터가 스풀링된 후 PrtFilterFree 를 호출하여 항상 해제됩니다. UniqueID 고유 식별자 매개 변수는 PrtFilterJobStart 함수에 대한 이전 호출에서 반환된 식별자입니다.