共用方式為


PrtFilterJobData

系統會呼叫 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 函 式傳回的識別碼。

另請參閱

PrtFilterFree
PrtFilterJobStart