drvDocumentPropertySheets 函式 (winddiui.h)
印表機介面 DLL 的 DrvDocumentPropertySheets 函 式負責建立描述列印文件屬性的屬性表頁面。
語法
LONG DrvDocumentPropertySheets(
[in, optional] PPROPSHEETUI_INFO pPSUIInfo,
LPARAM lParam
);
參數
[in, optional] pPSUIInfo
呼叫端提供的 PROPSHEETUI_INFO 結構的指標。 可以是 NULL (請參閱下列一節) 。
lParam
呼叫端提供的整數值,取決於PROPSHEETUI_INFO結構 之 Reason 成員的內容,如下表所列。
原因值 | lParam 的定義 |
---|---|
PROPSHEETUI_REASON_INIT | DOCUMENTPROPERTYHEADER 結構的指標。 |
所有其他原因值 | 如需 PFNPROPSHEETUI 函式類型,請參閱 lParam 參數的描述。 (DOCUMENTPROPERTYHEADER 結構的位址包含在 PROPSHEETUI_INFO structure.) 的 lParamInit 成員中 |
傳回值
如果 pPSUIInfo 為 NULL,而且如果 lParam ->fMode 為零或 lParam ->pdmOut 為 NULL,則此函式應傳回印表機 DEVMODEW 結構的大小,以位元組為單位。 否則,函式的傳回值與 PFNPROPSHEETUI 函式類型的 ReturnValue 區段中所述的值相同。 如需詳細資訊,請參閱<備註>一節。
備註
所有 印表機介面 DLL 都必須提供 DrvDocumentPropertySheets 函式,此函式是使用 PFNPROPSHEETUI 函式類型所定義。 函式的目的是呼叫 CPSUI 所提供的 ComPropSheet 函式,以指定包含列印文件使用者可修改屬性的屬性頁。
如果 為 pPSUIInfo 參數收到的值不是 NULL,則 NT 型作業系統列印多任務緩衝處理器會透過 CPSUI 間接呼叫函式。 適用的規則如下:
函式應該如 PFNPROPSHEETUI 函式類型所述執行作業。
DOCUMENTPROPERTYHEADER 結構的 fMode 成員中的旗標會指出要顯示的屬性表頁面,以及是否應該允許使用者修改檔的屬性。 可能設定的唯一旗標是DM_IN_PROMPT (或DM_PROMPT) 、DM_ADVANCED、DM_NOPERMISSION和DM_OUT_BUFFER (或DM_COPY) 。
如果 為 pPSUIInfo 參數收到的值為 NULL,列印後台處理程式會直接呼叫函式,而不需要通過 CPSUI。 在此情況下, lParam 參數包含 DOCUMENTPROPERTYHEADER 結構的位址,並適用下列規則:
如果 DOCUMENTPROPERTYHEADER 結構的 fMode 成員為零,或相同結構的 pdmOut 成員為 NULL,則函式應該只會傳回印表機 DEVMODEW 結構的總大小,包括 DOCUMENTPROPERTYHEADER 結構的 cbOut 成員中的公用和私用結構成員。
如果 DOCUMENTPROPERTYHEADER 結構的 fMode 成員不是零,函式應該執行 fMode 旗標所指示的作業。 可能設定的唯一旗標是DM_IN_BUFFER (或DM_MODIFY) ,以及DM_OUT_BUFFER (或DM_COPY) 。
規格需求
需求 | 值 |
---|---|
目標平台 | 桌面 |
標頭 | winddiui.h (包含Winddiui.h) |