IPrintOemUni::EnablePDEV 方法 (prcomoem.h)
IPrintOemUni::EnablePDEV
方法可讓 Unidrv 的轉譯外掛程式建立自己的 PDEV 結構。
語法
HRESULT EnablePDEV(
PDEVOBJ pdevobj,
PWSTR pPrinterName,
ULONG cPatterns,
HSURF *phsurfPatterns,
ULONG cjGdiInfo,
GDIINFO *pGdiInfo,
ULONG cjDevInfo,
DEVINFO *pDevInfo,
DRVENABLEDATA *pded,
[out] OUT PDEVOEM *pDevOem
);
參數
pdevobj
DEVOBJ 結構的呼叫端提供的指標。
pPrinterName
呼叫端提供的文字字串指標,代表印表機的邏輯位址。
cPatterns
呼叫端提供的值,代表由 phsurfPatterns 所指向之緩衝區中所含的 HSURF 型別表面控點數目。
phsurfPatterns
呼叫端提供的緩衝區指標夠大,足以包含 cPatterns HSURF 類型的表面控點數目。 控點代表表面填滿圖樣。
cjGdiInfo
呼叫端提供的值,表示 pGdiInfo 所指向之結構的大小。
pGdiInfo
GDIINFO 結構的呼叫端提供的指標。
cjDevInfo
呼叫端提供的值,表示 pDevInfo 所指向之結構的大小。
pDevInfo
呼叫端提供的指標 DEVINFO 結構。
pded
呼叫端提供的指標 DRVENABLEDATA 結構,其中包含印表機驅動程式圖形 DDI 勾點函式的位址。 如需詳細資訊,請參閱下列一節。
[out] pDevOem
接收私人 PDEV 結構的方法提供指標。 (如需詳細資訊,請參閱下列一節。
傳回值
方法必須傳回下列其中一個值。
傳回碼 | 描述 |
---|---|
|
作業成功。 |
|
作業失敗 |
如果作業失敗,方法應該呼叫 SetLastError 來設定錯誤碼。
言論
Unidrv 的轉譯外掛程式必須實作 IPrintOemUni::EnablePDEV
方法。
IPrintOemUni::EnablePDEV
方法會執行與印表機圖形 DLL 所匯出之 DrvEnablePDEV 函式相同的作業類型。 其用途是允許轉譯外掛程式建立自己的 PDEV 結構。 (如需 PDEV 結構的詳細資訊,請參閱 自定義 PDEV 結構。
如果您提供導出 IPrintOemUni::EnablePDEV
方法的轉譯外掛程式,Undrv 的印表機圖形 DLL 會從其 DrvEnablePDEV 函式中呼叫 方法。
IPrintOemUni::EnablePDEV
方法應該配置其私用 PDEV 結構的實例、將其初始化,並傳回其位址做為方法的 pDevOem 參數。 其他外掛程式方法會接收位址,做為 DEVOBJ 結構 成員 pdevOEM。
pdevOEM DEVOBJ 結構的成員不會與 IPrintOemUni::EnablePDEV
方法搭配使用。
phsurfPatterns所指向的結構,pGdiInfo,pDevInfo 參數值與 Unidrv DrvEnablePDEV 函式所接收的結構相同。 轉譯外掛程式可以視需要修改結構內容。 它可以藉由取得 HSURF 類型的表面控點,並將其放在 phsurfPatterns指向的緩衝區,以提供表面填滿圖樣。 填滿圖樣類型和句柄順序會列在drvEnablePDEV 的描述中。
pded 所指向的 DRVENABLEDATA 結構包含 Unidrv 印表機圖形 DLL 提供的圖形 DDI 函式位址。 您可以針對這些圖形 DDI 函式,在外掛程式中提供自定義的勾點函式。 DRVENABLEDATA 結構的內容可讓您的自定義勾點函式回呼驅動程式的圖形 DDI 函式。 如需詳細資訊,請參閱 自訂圖形 DDI 函式。
要求
要求 | 價值 |
---|---|
目標平臺 | 桌面 |
標頭 | prcomoem.h (include Prcomoem.h) |