IPrintOemUni::CommandCallback 方法 (prcomoem.h)
IPrintOemUni::CommandCallback
方法可用來為 Unidrv 支援的印表機提供動態產生的印表機命令。
HRESULT CommandCallback(
PDEVOBJ pdevobj,
DWORD dwCallbackID,
DWORD dwCount,
PDWORD pdwParams,
[out] OUT INT *piResult
);
pdevobj
DEVOBJ 結構的呼叫端提供的指標。
dwCallbackID
呼叫端提供的值,代表印表機 GPD 檔案中印表機命令的 *CallbackID 屬性。 (如需詳細資訊,請參閱下列一節。
dwCount
呼叫端提供的值,代表 pdwParams 所指向之陣列中的元素數目,。 可以是 0。
pdwParams
呼叫端提供的 DWORD 大小參數陣列指標,其中包含印表機命令 *Params 屬性中指定的值。 (如需詳細資訊,請參閱下列一節。可為 NULL 。
[out] piResult
接收方法提供的結果值。 請參閱下列一節。
方法必須傳回下列其中一個值。
傳回碼 | 描述 |
---|---|
|
作業成功。 |
|
作業失敗 |
|
未實作 方法。 |
IPrintOemUni::CommandCallback
方法是透過轉譯外掛程式來動態產生印表機命令,適用於 unidrv 支援的印表機。
如果您想要動態產生印表機命令,您必須在印表機 GPD 檔案的 *Command 專案內,包含 *CallbackID 屬性,以及選擇性地包含 *Params 屬性。 如需詳細資訊,請參閱 動態產生的印表機命令。
當 Unidrv 呼叫 IPrintOemUni::CommandCallback
方法時,它會提供 *Command 專案的 *CallbackID 屬性值作為 dwCallbackID 參數。 它也會將 *Command 專案的 *Params 屬性值放在 DWORD 陣列內,並提供數位的位址做為 pParams 參數。 數位包含一組 Unidrv 定義的 標準變數 值,而 dwCount 參數會指定數位中包含的參數數目。 如需屬性的詳細資訊,請參閱 命令屬性。
方法應該使用 dwCallbackID 參數值來判斷要處理的命令。 針對每個支援的命令,方法必須知道,如果有任何標準變數,則由 *Command 專案的 *Params 屬性指定,以及依何種順序指定。
方法負責建構印表機命令,然後呼叫 IPrintOemDriverUni::D rvWriteSpoolBuf 方法,將命令傳送至列印後台處理程式。
除非方法正在處理數據指標命令,否則為 piResult 所提供的值應該一律會傳回零。 對於 數據指標命令, 在 x 或 方向移動游標,方法應該會傳回新的數據指標位置。
IPrintOemUni::CommandCallback
方法是選擇性的。 如果轉譯外掛程式實作此方法,外掛程式的 IPrintOemUni::GetImplementedMethod 方法必須在收到 “CommandCallback” 作為輸入時傳回S_OK。
要求 | 價值 |
---|---|
目標平臺 | 桌面 |
標頭 | prcomoem.h (include Prcomoem.h) |