1 /******************************************************************
\r
2 * SPOOLSS regression testing code for Samba print servers
\r
4 *****************************************************************/
\r
8 #include "printlib.h"
\r
11 int main (int argc, char* argv[])
\r
22 fprintf (stderr, "useage: %s <printername> <Job ID>\n", argv[0]);
\r
26 /* open the printer */
\r
27 if (!OpenPrinter (argv[1], &printer, NULL))
\r
29 fprintf (stderr, "Unable to open %s!\n", argv[1]);
\r
34 printf ("Printer [%s] opened successfully.\n\n", argv[1]);
\r
38 docinfo.lpszDocName = strdup (argv[2]);
\r
39 docinfo.lpszOutput = NULL;
\r
40 docinfo.lpszDatatype = strdup ("RAW");
\r
42 docinfo.cbSize = sizeof (docinfo);
\r
44 dwJobId = StartDoc (NULL, &docinfo);
\r
45 printf ("JobId = %d\n", dwJobId);
\r
48 FormatMessage( FORMAT_MESSAGE_ALLOCATE_BUFFER | FORMAT_MESSAGE_FROM_SYSTEM |
\r
49 FORMAT_MESSAGE_IGNORE_INSERTS, NULL, GetLastError(),
\r
50 MAKELANGID(LANG_NEUTRAL, SUBLANG_DEFAULT), // Default language
\r
51 (LPTSTR) &lpMsgBuf, 0, NULL);
\r
52 printf ("ERROR : %s\n", (char*)lpMsgBuf);
\r
53 LocalFree (lpMsgBuf);
\r
57 printf ("StartDoc called successfully. Job ID = %d\n", dwJobId);
\r
61 dwJobId = atoi (argv[2]);
\r
63 printf ("command = JOB_CONTROL_PAUSE\n");
\r
64 if (SetJob(printer, dwJobId, 0, NULL, JOB_CONTROL_PAUSE))
\r
66 printf ("Job Id [%d] paused successfully\n", dwJobId);
\r
70 FormatMessage( FORMAT_MESSAGE_ALLOCATE_BUFFER | FORMAT_MESSAGE_FROM_SYSTEM |
\r
71 FORMAT_MESSAGE_IGNORE_INSERTS, NULL, GetLastError(),
\r
72 MAKELANGID(LANG_NEUTRAL, SUBLANG_DEFAULT), // Default language
\r
73 (LPTSTR) &lpMsgBuf, 0, NULL);
\r
74 printf ("ERROR : %s\n", (char*)lpMsgBuf);
\r
75 LocalFree (lpMsgBuf);
\r
79 printf ("command = JOB_CONTROL_RESUME\n");
\r
80 if (SetJob(printer, dwJobId, 0, NULL, JOB_CONTROL_RESUME))
\r
82 printf ("Job Id [%d] resumed successfully\n", dwJobId);
\r
86 FormatMessage( FORMAT_MESSAGE_ALLOCATE_BUFFER | FORMAT_MESSAGE_FROM_SYSTEM |
\r
87 FORMAT_MESSAGE_IGNORE_INSERTS, NULL, GetLastError(),
\r
88 MAKELANGID(LANG_NEUTRAL, SUBLANG_DEFAULT), // Default language
\r
89 (LPTSTR) &lpMsgBuf, 0, NULL);
\r
90 printf ("ERROR : %s\n", (char*)lpMsgBuf);
\r
91 LocalFree (lpMsgBuf);
\r
95 printf ("command = JOB_CONTROL_RESTART\n");
\r
96 if (SetJob(printer, dwJobId, 0, NULL, JOB_CONTROL_RESTART))
\r
98 printf ("Job Id [%d] restarted successfully\n", dwJobId);
\r
102 FormatMessage( FORMAT_MESSAGE_ALLOCATE_BUFFER | FORMAT_MESSAGE_FROM_SYSTEM |
\r
103 FORMAT_MESSAGE_IGNORE_INSERTS, NULL, GetLastError(),
\r
104 MAKELANGID(LANG_NEUTRAL, SUBLANG_DEFAULT), // Default language
\r
105 (LPTSTR) &lpMsgBuf, 0, NULL);
\r
106 printf ("ERROR : %s\n", (char*)lpMsgBuf);
\r
107 LocalFree (lpMsgBuf);
\r
112 printf ("command = JOB_CONTROL_DELETE\n");
\r
113 if (SetJob(printer, dwJobId, 0, NULL, JOB_CONTROL_DELETE))
\r
115 printf ("Job Id [%d] deleted successfully\n", dwJobId);
\r
119 FormatMessage( FORMAT_MESSAGE_ALLOCATE_BUFFER | FORMAT_MESSAGE_FROM_SYSTEM |
\r
120 FORMAT_MESSAGE_IGNORE_INSERTS, NULL, GetLastError(),
\r
121 MAKELANGID(LANG_NEUTRAL, SUBLANG_DEFAULT), // Default language
\r
122 (LPTSTR) &lpMsgBuf, 0, NULL);
\r
123 printf ("ERROR : %s\n", (char*)lpMsgBuf);
\r
124 LocalFree (lpMsgBuf);
\r
128 /* close the printer */
\r
129 if (!ClosePrinter(printer))
\r
131 fprintf (stderr, "Error closing printer!\n");
\r
136 printf ("Printer [%s] closed successfully.\n", argv[1]);
\r