GetForm 函式

GetForm 函式會擷取指定表單的相關資訊。

語法

BOOL GetForm(
  _In_  HANDLE  hPrinter,
  _In_  LPTSTR  pFormName,
  _In_  DWORD   Level,
  _Out_ LPBYTE  pForm,
  _In_  DWORD   cbBuf,
  _Out_ LPDWORD pcbNeeded
);

參數

hPrinter [in]

印表機的控制碼。 使用 OpenPrinterAddPrinter 函式來擷取印表機控制碼。

pFormName [in]

指定表單名稱之 Null 終止字串的指標。 若要取得印表機支援的表單名稱,請呼叫 EnumForms 函式。

層級 [in]

pForm指向的結構版本。 此值必須是 1 或 2。

pForm [out]

接收初始化 FORM_INFO_1FORM_INFO_2 結構的位元組陣列指標。

cbBuf [in]

pForm陣列的大小,以位元組為單位。

vmNeeded [out]

值的指標,指定函式成功時所複製的位元組數目,或 cbBuf 太小時所需的位元組數目。

傳回值

如果函式成功,則傳回值是非零值。

如果此函式失敗,則傳回值為零。

備註

注意

這是封鎖或同步函式,可能不會立即傳回。 此函式傳回的速度取決於執行時間因素,例如網路狀態、列印伺服器設定,以及撰寫應用程式時難以預測的印表機驅動程式實作因素。 從管理與使用者介面互動的執行緒呼叫此函式,可能會使應用程式看起來沒有回應。

如果呼叫端為遠端,而Level為 2,則傳回之FORM_INFO_2StringType值一律會STRING_LANGPAIR。

規格需求

需求
最低支援的用戶端
Windows 2000 Professional [僅限傳統型應用程式]
最低支援的伺服器
Windows 2000 Server [僅限桌面應用程式]
標頭
Winspool.h (包含 Windows.h)
程式庫
Winspool.lib
DLL
Winspool.drv
Unicode 與 ANSI 名稱
GetFormW (Unicode) 和 GetFormA (ANSI)

另請參閱

列印

列印多工緩衝處理器 API 函式

AddForm

DeleteForm

OpenPrinter

SetForm