列印多任務緩衝處理程式的 IsValidDevmode 函式會驗證 DEVMODE 結構的內容是否有效。
語法
BOOL IsValidDevmodeW(
[in, optional] PDEVMODEW pDevmode,
size_t DevmodeSize
);
參數
[in, optional] pDevmode
要驗證之 DEVMODE 結構的指標。
DevmodeSize
pDevmode 所指向之緩衝區的大小,以位元組為單位,。
傳回值
如果 DEVMODE 結構有效,或函式成功修復結構使其有效,則函式會傳回 TRUE。 否則,函式會傳回 FALSE 。 呼叫端可以藉由呼叫 getLastError 來取得錯誤碼。
言論
使用從可能不可靠的來源取得的 DEVMODE 結構之前,印表機驅動程式可以呼叫此函式來驗證結構是否有效。 此函式只會驗證 DEVMODE 結構的公用成員。 它不會檢查 結構的私人成員。
dmSize DEVMODE 結構的成員會指定 DEVMODE 結構的大小,不包括附加至 結構的任何私人驅動程式指定數據。 dmDriverExtra 成員會指定附加至 結構的私人數據大小,如果有的話。 呼叫端應該將 devModeSize 設定為 dmSize+dmDriverExtra,只有當它們可以保證輸入緩衝區大小至少是那麼大時。
此函式不需要呼叫端取得提升的許可權。
要求
要求 | 價值 |
---|---|
目標平臺 | 桌面 |
標頭 | winspool.h (包括 Winspool.h) |
連結庫 | Winspool.lib |
DLL | Winspool.drv |