다음을 통해 공유


EnumForms 함수

EnumForms 함수는 지정된 프린터에서 지원하는 양식을 열거합니다.

구문

BOOL EnumForms(
  _In_  HANDLE  hPrinter,
  _In_  DWORD   Level,
  _Out_ LPBYTE  pForm,
  _In_  DWORD   cbBuf,
  _Out_ LPDWORD pcbNeeded,
  _Out_ LPDWORD pcReturned
);

매개 변수

hPrinter [in]

폼을 열거해야 하는 프린터에 대한 핸들입니다. OpenPrinter 또는 AddPrinter 함수를 사용하여 프린터 핸들을 검색합니다.

수준 [in]

pForm이 가리키는 구조체의 버전을 지정합니다. 이 값은 1 또는 2여야 합니다.

pForm [out]

하나 이상의 FORM_INFO_1 구조체 또는 하나 이상의 FORM_INFO_2 구조체에 대한 포인터입니다. 모든 구조체는 동일한 수준을 갖습니다.

cbBuf [in]

pForm이 가리키는 버퍼의 크기(바이트)를 지정합니다.

pcbNeeded [out]

pForm이 가리키는 배열에 복사된 바이트 수(작업이 성공하는 경우) 또는 필요한 바이트 수를 수신하는 변수에 대한 포인터입니다(cbBuf가 너무 작기 때문에 실패하는 경우).

pcReturned [out]

pForm이 가리키는 배열에 복사된 구조체 수를 수신하는 변수에 대한 포인터입니다.

반환 값

함수가 성공하면 반환 값은 0이 아닌 값입니다.

함수가 실패하면 반환 값은 0입니다.

설명

참고

이는 차단 또는 동기 함수이며 즉시 반환되지 않을 수 있습니다. 이 함수가 얼마나 빨리 반환되는지는 네트워크 상태, 인쇄 서버 구성 및 애플리케이션을 작성할 때 예측하기 어려운 프린터 드라이버 구현 요소와 같은 런타임 요인에 따라 달라집니다. 사용자 인터페이스와의 상호 작용을 관리하는 스레드에서 이 함수를 호출하면 애플리케이션이 응답하지 않는 것처럼 보일 수 있습니다.

호출자가 원격이고 Level이 2이면 반환된 FORM_INFO_2 구조체의 StringType 값은 항상 STRING_LANGPAIR.

Windows Vista에서 EnumForms 에서 반환된 양식 데이터는 hPrinter 가 인쇄 서버에서 호스트하는 원격 인쇄 서버 또는 프린터를 참조하고 원격 인쇄 서버의 프린터에 대해 하나 이상의 열린 연결이 있는 경우 로컬 캐시에서 검색됩니다. 다른 모든 구성에서 양식 데이터는 원격 인쇄 서버에서 쿼리됩니다.

요구 사항

요구 사항
지원되는 최소 클라이언트
Windows 2000 Professional[데스크톱 앱만]
지원되는 최소 서버
Windows 2000 Server[데스크톱 앱만]
헤더
Winspool.h(Windows.h 포함)
라이브러리
Winspool.lib
DLL
Winspool.drv
유니코드 및 ANSI 이름
EnumFormsW (유니코드) 및 EnumFormsA (ANSI)

추가 정보

인쇄

인쇄 스풀러 API 함수

AddPrinter

FORM_INFO_1

OpenPrinter