Share via


drvStartDoc 函式 (winddi.h)

當 GDI 準備好開始將檔傳送至驅動程式以進行轉譯時, GDI 會呼叫 DrvStartDoc 函式。

語法

BOOL DrvStartDoc(
  [in] SURFOBJ *pso,
  [in] LPWSTR  pwszDocName,
  [in] DWORD   dwJobId
);

參數

[in] pso

呼叫端提供的 指標指向 SURFOBJ 結構。

[in] pwszDocName

呼叫端提供的指標,指向 Null 終止的 Unicode 字串,指定要列印的檔案名稱。

[in] dwJobId

呼叫端提供的列印工作號碼。 這個值會從 呼叫 StartDocPrinter中的多工緩衝處理器傳回 GDI。

傳回值

如果作業成功,函式應該會傳回 TRUE。 否則,它應該呼叫 Win32 SetLastError 函 式來設定錯誤碼,然後傳回 FALSE

備註

印表機圖形 DLL必須提供DrvStartDoc函式。 函式通常會用來在列印檔案之前,藉由呼叫 GDI 的 EngWritePrinter 函 式,將控制順序傳送至印表機硬體。 函式也可以執行印表機圖形 DLL 的內部檔特定初始化作業。

DrvStartDoc函式會在列印工作開始時呼叫,每當應用程式 (例如列印處理器) 呼叫ResetDC (請參閱DrvResetPDEV) 。 從ResetDC呼叫DrvStartDoc時,pwszDocName參數會設定為Null而 dwJobId參數會設定為零。 當呼叫來自應用程式時,會將這些參數分別設定為檔案名稱和列印工作編號。

因為啟動列印工作時,印表機圖形 DLL 沒有個別呼叫, 所以 DrvStartDoc 函式也必須將控制順序傳送至印表機,以在印表機需要時初始化作業。 (換句話說,每個 job.) 有一份檔

規格需求

   
目標平台 桌上型
標頭 winddi.h (包含 Winddi.h)

另請參閱

DrvEndDoc

DrvResetPDEV

EngWritePrinter