共用方式為


IPrintOemUI::CommonUIProp 方法 (prcomoem.h)

IPrintOemUI::CommonUIProp 方法可讓使用者介面外掛程式修改現有的印表機屬性表頁面。

語法

HRESULT CommonUIProp(
  DWORD         dwMode,
  POEMCUIPPARAM pOemCUIPParam
);

參數

dwMode

呼叫端提供的整數常數,指出應該修改哪些屬性表頁面。 下列常數有效。

價值 定義
OEMCUIP_DOCPROP 正在呼叫 方法來修改文件屬性表的 [版面配置]、[紙張/品質] 或 [進階] 頁面。
OEMCUIP_PRNPROP 正在呼叫 方法來修改印表機屬性表的 [裝置設定] 頁面。

pOemCUIPParam

OEMCUIPPARAM 結構的呼叫端提供的指標。

傳回值

方法必須傳回下列其中一個值。

傳回碼 描述
S_OK
作業成功。
E_FAIL
作業失敗。
E_NOTIMPL
未實作 方法。

言論

呼叫使用者介面外掛程式的 IPrintOemUI::CommonUIProp 方法時,應該傳回自定義的屬性表選項專案,以修改現有的印表機屬性表頁面。

印表機驅動程式的 印表機介面 DLL會呼叫 IPrintOemUI::CommonUIProp 方法。 方法應該提供描述屬性表專案的 OPTITEM 結構陣列,以及回呼函式來處理使用者修改選項值。

您應該預期每個屬性表都會呼叫 方法兩次。 方法的 dwMode 參數值表示呼叫它來變更印表機屬性表或文件屬性表。

第一次呼叫時,方法應該只會傳回要加入的 OPTITEM 結構 數目。 這個數字應該放在 OEMCUIPPARAM 結構 cOEMOptItems 成員中。 印表機介面 DLL 接著會配置足夠的記憶體來儲存指定的 OPTITEM 數目,然後再次呼叫 IPrintOemUI::CommonUIProp

第二次呼叫時,IPrintOemUI::CommonUIProp 方法應該執行下列動作:

  • 使用選項描述填入 OPTITEM 結構的驅動程式提供數位。 此陣列是由 OEMCUIPPARAM 結構的 pOEMOptItems 成員所指向,而配置數位元素的數目則包含在結構的 cOEMOptItems 成員 中。 (如需指定 OPTITEM 成員值的相關信息,請參閱 OEMCUIPPARAM 結構 pOEMOptItems 成員的描述)。
  • 將數位放在 OEMCUIPPARAM 結構的 cOEMOptIte ms 成員中,以傳回新增至 OPTITEM 數位的結構數目。
  • 傳回 OEMCUIPPARAM 結構 OEMCUIPCallback 成員中回呼函式的位址。 當使用者修改屬性表頁面時,會呼叫此回呼函式。 回呼函式的類型必須 OEMCUIPCALLBACK
  • 您可以選擇性地將私人數據結構的位址放在 OEMCUIPPARAM 結構的 pOEMUserData 成員中。 結構 OEMCUIPCallback 所指定的回呼函式 成員會以輸入參數的形式接收 OEMCUIPPARAM 結構的位址,因此可以取得私人數據的位址。

    使用 OEMCUIPPARAM 結構 hOEMHe apHeap 成員中包含的句柄,呼叫 Microsoft Windows SDK HeapAlloc 函式,來配置私人數據結構的空間。

如果 IPrintOemUI::CommonUIProp 多個使用者介面外掛程式匯出方法,則會依外掛程式指定安裝的順序呼叫方法。

如需詳細資訊,請參閱 修改 Driver-Supplied 屬性表頁面

要求

要求 價值
目標平臺 桌面
標頭 prcomoem.h (include Prcomoem.h)