IsValidDevmodeW 函式 (winspool.h)

列印後台處理程式的 IsValidDevmode 函式會驗證 DEVMODE 結構的內容是否有效。

語法

BOOL IsValidDevmodeW(
  [in, optional] PDEVMODEW pDevmode,
                 size_t    DevmodeSize
);

參數

[in, optional] pDevmode

要驗證之 DEVMODE 結構的指標。

DevmodeSize

pDevmode 所指向緩衝區的大小,以位元組為單位。

傳回值

如果 DEVMODE 結構有效,或函式成功修復結構使其有效,則函式會傳回 TRUE。 否則,函式會傳回 FALSE。 呼叫端可以藉由呼叫 GetLastError 來取得錯誤碼。

備註

使用從可能不可靠的來源取得的 DEVMODE 結構之前,印表機驅動程式可以呼叫此函式來確認結構是否有效。 此函式只會驗證 DEVMODE 結構的公用成員。 它不會檢查 結構的私用成員。

DEVMODE 結構的 dmSize 成員會指定 DEVMODE 結構的大小,不包括附加至 結構的任何私用驅動程式指定數據。 dmDriverExtra 成員會指定附加至結構的私人數據大小,如果有的話。 只有在呼叫端可以保證輸入緩衝區大小至少為該大時,呼叫端才應將 DevModeSize 設定為 dmSize+dmDriverExtra

此函式不需要呼叫端取得提升的許可權。

規格需求

需求
目標平台 桌面
標頭 winspool.h (包含 Winspool.h)
程式庫 Winspool.lib
Dll Winspool.drv

另請參閱

DEVMODE