1 /******************************************************************
\r
2 * SPOOLSS regression testing code for Samba print servers
\r
4 *****************************************************************/
\r
8 #include "printlib.h"
\r
10 int main (int argc, char* argv[])
\r
14 DWORD returned, needed, i;
\r
15 PFORM_INFO_1 buffer1 = NULL;
\r
19 fprintf (stderr, "useage: %s <printername>\n", argv[0]);
\r
23 /* open the printer */
\r
24 if (!OpenPrinter (argv[1], &printer, NULL))
\r
26 fprintf (stderr, "Unable to open %s!\n", argv[1]);
\r
31 printf ("Printer [%s] opened successfully.\n\n", argv[1]);
\r
35 EnumForms(printer, 1, (LPBYTE)buffer1, 0, &needed, &returned);
\r
36 if (GetLastError() != ERROR_INSUFFICIENT_BUFFER)
\r
38 fprintf (stderr, "Error getting form information for [%s] using NULL buffer.\n", argv[1]);
\r
42 if ((buffer1 = (LPBYTE)malloc(needed)) == NULL)
\r
44 fprintf (stderr, "Unable to malloc memory for FORM_INFO_1 buffer!\n");
\r
47 if (!EnumForms(printer, 1, (LPBYTE)buffer1, needed, &needed, &returned))
\r
49 fprintf (stderr, "Error getting form information for [%s].\nSize of buffer = %d\n",
\r
54 printf ("Form Info Level 1:\n");
\r
55 for (i=0; i<returned; i++)
\r
57 print_form_info_1 (&buffer1[i]);
\r
63 /* close the printer */
\r
64 if (!ClosePrinter(printer))
\r
66 fprintf (stderr, "Error closing printer!\n");
\r
71 printf ("Printer [%s] closed successfully.\n", argv[1]);
\r