EnumForms

The EnumForms function enumerates the forms supported by the specified printer.

BOOL EnumForms(

HANDLE hPrinter, // handle to printer object
DWORD Level, // data-structure level
LPBYTE pForm, // points to buffer that receives form info. structure array
DWORD cbBuf, // count of bytes in buffer
LPDWORD pcbNeeded, // points to variable to receive count of bytes copied or required
LPDWORD pcReturned // points to variable to receive count of structures copied
);  

Parameters

hPrinter

Identifies the printer for which the forms should be enumerated.

Level

Specifies the version of the structure to which pForm points. This value must be 1.

pForm

Points to a FORM_INFO_1 structure.

cbBuf

Specifies the size, in bytes, of the buffer to which pForm points.

pcbNeeded

Points to a variable that receives the number of bytes copied to or the number of bytes required for the array to which pForm points. If cbBuf is too small, this value specifies the number of bytes required; otherwise, this value specifies the number of bytes copied.

pcReturned

Points to a variable that receives the number of FORM_INFO_1 structures copied into the array to which pForm points.

Return Values

If the function succeeds, the return value is nonzero.

If the function fails, the return value is zero. To get extended error information, call GetLastError.

Remarks

The printer-object handle hPrinter is normally obtained by calling the OpenPrinter function. The AddPrinter function can also be used.

See Also

AddPrinter, FORM_INFO_1, OpenPrinter