DIB Engine: Implement Polygon
[wine/hacks.git] / include / winspool.h
blobfcbcd0adf6268eafddfd92fd9a3f3a4115adc3a5
1 /* Definitions for printing
3 * Copyright 1998 Huw Davies, Andreas Mohr
5 * Portions Copyright (c) 1999 Corel Corporation
6 * (Paul Quinn, Albert Den Haan)
8 * This library is free software; you can redistribute it and/or
9 * modify it under the terms of the GNU Lesser General Public
10 * License as published by the Free Software Foundation; either
11 * version 2.1 of the License, or (at your option) any later version.
13 * This library is distributed in the hope that it will be useful,
14 * but WITHOUT ANY WARRANTY; without even the implied warranty of
15 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
16 * Lesser General Public License for more details.
18 * You should have received a copy of the GNU Lesser General Public
19 * License along with this library; if not, write to the Free Software
20 * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
22 #ifndef __WINE_WINSPOOL_H
23 #define __WINE_WINSPOOL_H
25 #ifdef __cplusplus
26 extern "C" {
27 #endif
29 /* DEFINES */
31 #define PRINTER_ATTRIBUTE_QUEUED 0x00000001
32 #define PRINTER_ATTRIBUTE_DIRECT 0x00000002
33 #define PRINTER_ATTRIBUTE_DEFAULT 0x00000004
34 #define PRINTER_ATTRIBUTE_SHARED 0x00000008
35 #define PRINTER_ATTRIBUTE_NETWORK 0x00000010
36 #define PRINTER_ATTRIBUTE_HIDDEN 0x00000020
37 #define PRINTER_ATTRIBUTE_LOCAL 0x00000040
38 #define PRINTER_ATTRIBUTE_ENABLE_DEVQ 0x00000080
39 #define PRINTER_ATTRIBUTE_KEEPPRINTEDJOBS 0x00000100
40 #define PRINTER_ATTRIBUTE_DO_COMPLETE_FIRST 0x00000200
41 #define PRINTER_ATTRIBUTE_WORK_OFFLINE 0x00000400
42 #define PRINTER_ATTRIBUTE_ENABLE_BIDI 0x00000800
43 #define PRINTER_ATTRIBUTE_RAW_ONLY 0x00001000
44 #define PRINTER_ATTRIBUTE_PUBLISHED 0x00002000
46 #define PRINTER_CONTROL_PAUSE 1
47 #define PRINTER_CONTROL_RESUME 2
48 #define PRINTER_CONTROL_PURGE 3
49 #define PRINTER_CONTROL_SET_STATUS 4
51 #define PRINTER_ENUM_DEFAULT 0x00000001
52 #define PRINTER_ENUM_LOCAL 0x00000002
53 #define PRINTER_ENUM_CONNECTIONS 0x00000004
54 #define PRINTER_ENUM_FAVORITE 0x00000004
55 #define PRINTER_ENUM_NAME 0x00000008
56 #define PRINTER_ENUM_REMOTE 0x00000010
57 #define PRINTER_ENUM_SHARED 0x00000020
58 #define PRINTER_ENUM_NETWORK 0x00000040
60 #define PRINTER_ENUM_EXPAND 0x00004000
61 #define PRINTER_ENUM_CONTAINER 0x00008000
63 #define PRINTER_ENUM_ICONMASK 0x00ff0000
64 #define PRINTER_ENUM_ICON1 0x00010000
65 #define PRINTER_ENUM_ICON2 0x00020000
66 #define PRINTER_ENUM_ICON3 0x00040000
67 #define PRINTER_ENUM_ICON4 0x00080000
68 #define PRINTER_ENUM_ICON5 0x00100000
69 #define PRINTER_ENUM_ICON6 0x00200000
70 #define PRINTER_ENUM_ICON7 0x00400000
71 #define PRINTER_ENUM_ICON8 0x00800000
72 #define PRINTER_ENUM_HIDE 0x01000000
75 /* various printer statuses */
76 #define PRINTER_STATUS_PAUSED 0x00000001
77 #define PRINTER_STATUS_ERROR 0x00000002
78 #define PRINTER_STATUS_PENDING_DELETION 0x00000004
79 #define PRINTER_STATUS_PAPER_JAM 0x00000008
80 #define PRINTER_STATUS_PAPER_OUT 0x00000010
81 #define PRINTER_STATUS_MANUAL_FEED 0x00000020
82 #define PRINTER_STATUS_PAPER_PROBLEM 0x00000040
83 #define PRINTER_STATUS_OFFLINE 0x00000080
84 #define PRINTER_STATUS_IO_ACTIVE 0x00000100
85 #define PRINTER_STATUS_BUSY 0x00000200
86 #define PRINTER_STATUS_PRINTING 0x00000400
87 #define PRINTER_STATUS_OUTPUT_BIN_FULL 0x00000800
88 #define PRINTER_STATUS_NOT_AVAILABLE 0x00001000
89 #define PRINTER_STATUS_WAITING 0x00002000
90 #define PRINTER_STATUS_PROCESSING 0x00004000
91 #define PRINTER_STATUS_INITIALIZING 0x00008000
92 #define PRINTER_STATUS_WARMING_UP 0x00010000
93 #define PRINTER_STATUS_TONER_LOW 0x00020000
94 #define PRINTER_STATUS_NO_TONER 0x00040000
95 #define PRINTER_STATUS_PAGE_PUNT 0x00080000
96 #define PRINTER_STATUS_USER_INTERVENTION 0x00100000
97 #define PRINTER_STATUS_OUT_OF_MEMORY 0x00200000
98 #define PRINTER_STATUS_DOOR_OPEN 0x00400000
99 #define PRINTER_STATUS_SERVER_UNKNOWN 0x00800000
100 #define PRINTER_STATUS_POWER_SAVE 0x01000000
102 #define NO_PRIORITY 0
103 #define MAX_PRIORITY 99
104 #define MIN_PRIORITY 1
105 #define DEF_PRIORITY 1
107 #define JOB_CONTROL_PAUSE 1
108 #define JOB_CONTROL_RESUME 2
109 #define JOB_CONTROL_CANCEL 3
110 #define JOB_CONTROL_RESTART 4
111 #define JOB_CONTROL_DELETE 5
112 #define JOB_CONTROL_SENT_TO_PRINTER 6
113 #define JOB_CONTROL_LAST_PAGE_EJECTED 7
115 #define JOB_STATUS_PAUSED 0x0001
116 #define JOB_STATUS_ERROR 0x0002
117 #define JOB_STATUS_DELETING 0x0004
118 #define JOB_STATUS_SPOOLING 0x0008
119 #define JOB_STATUS_PRINTING 0x0010
120 #define JOB_STATUS_OFFLINE 0x0020
121 #define JOB_STATUS_PAPEROUT 0x0040
122 #define JOB_STATUS_PRINTED 0x0080
123 #define JOB_STATUS_DELETED 0x0100
124 #define JOB_STATUS_BLOCKED_DEVQ 0x0200
125 #define JOB_STATUS_USER_INTERVENTION 0x0400
127 #define JOB_POSITION_UNSPECIFIED 1
129 #define DI_CHANNEL 1
130 #define DI_READ_SPOOL_JOB 3
132 #define FORM_USER 0
133 #define FORM_BUILTIN 1
134 #define FORM_PRINTER 2
136 #define PORT_TYPE_WRITE 1
137 #define PORT_TYPE_READ 2
138 #define PORT_TYPE_REDIRECTED 4
139 #define PORT_TYPE_NET_ATTACHED 8
141 #define PORT_STATUS_TYPE_ERROR 1
142 #define PORT_STATUS_TYPE_WARNING 2
143 #define PORT_STATUS_TYPE_INFO 3
145 #define PORT_STATUS_OFFLINE 1
146 #define PORT_STATUS_PAPER_JAM 2
147 #define PORT_STATUS_PAPER_OUT 3
148 #define PORT_STATUS_OUTPUT_BIN_FULL 4
149 #define PORT_STATUS_PAPER_PROBLEM 5
150 #define PORT_STATUS_NO_TONER 6
151 #define PORT_STATUS_DOOR_OPEN 7
152 #define PORT_STATUS_USER_INTERVENTION 8
153 #define PORT_STATUS_OUT_OF_MEMORY 9
154 #define PORT_STATUS_TONER_LOW 10
155 #define PORT_STATUS_WARMING_UP 11
156 #define PORT_STATUS_POWER_SAVE 12
158 #define PRINTER_NOTIFY_TYPE 0
159 #define JOB_NOTIFY_TYPE 1
161 #define PRINTER_NOTIFY_FIELD_SERVER_NAME 0x00
162 #define PRINTER_NOTIFY_FIELD_PRINTER_NAME 0x01
163 #define PRINTER_NOTIFY_FIELD_SHARE_NAME 0x02
164 #define PRINTER_NOTIFY_FIELD_PORT_NAME 0x03
165 #define PRINTER_NOTIFY_FIELD_DRIVER_NAME 0x04
166 #define PRINTER_NOTIFY_FIELD_COMMENT 0x05
167 #define PRINTER_NOTIFY_FIELD_LOCATION 0x06
168 #define PRINTER_NOTIFY_FIELD_DEVMODE 0x07
169 #define PRINTER_NOTIFY_FIELD_SEPFILE 0x08
170 #define PRINTER_NOTIFY_FIELD_PRINT_PROCESSOR 0x09
171 #define PRINTER_NOTIFY_FIELD_PARAMETERS 0x0a
172 #define PRINTER_NOTIFY_FIELD_DATATYPE 0x0b
173 #define PRINTER_NOTIFY_FIELD_SECURITY_DESCRIPTOR 0x0c
174 #define PRINTER_NOTIFY_FIELD_ATTRIBUTES 0x0d
175 #define PRINTER_NOTIFY_FIELD_PRIORITY 0x0e
176 #define PRINTER_NOTIFY_FIELD_DEFAULT_PRIORITY 0x0f
177 #define PRINTER_NOTIFY_FIELD_START_TIME 0x10
178 #define PRINTER_NOTIFY_FIELD_UNTIL_TIME 0x11
179 #define PRINTER_NOTIFY_FIELD_STATUS 0x12
180 #define PRINTER_NOTIFY_FIELD_STATUS_STRING 0x13
181 #define PRINTER_NOTIFY_FIELD_CJOBS 0x14
182 #define PRINTER_NOTIFY_FIELD_AVERAGE_PPM 0x15
183 #define PRINTER_NOTIFY_FIELD_TOTAL_PAGES 0x16
184 #define PRINTER_NOTIFY_FIELD_PAGES_PRINTED 0x17
185 #define PRINTER_NOTIFY_FIELD_TOTAL_BYTES 0x18
186 #define PRINTER_NOTIFY_FIELD_BYTES_PRINTED 0x19
188 #define JOB_NOTIFY_FIELD_PRINTER_NAME 0x00
189 #define JOB_NOTIFY_FIELD_MACHINE_NAME 0x01
190 #define JOB_NOTIFY_FIELD_PORT_NAME 0x02
191 #define JOB_NOTIFY_FIELD_USER_NAME 0x03
192 #define JOB_NOTIFY_FIELD_NOTIFY_NAME 0x04
193 #define JOB_NOTIFY_FIELD_DATATYPE 0x05
194 #define JOB_NOTIFY_FIELD_PRINT_PROCESSOR 0x06
195 #define JOB_NOTIFY_FIELD_PARAMETERS 0x07
196 #define JOB_NOTIFY_FIELD_DRIVER_NAME 0x08
197 #define JOB_NOTIFY_FIELD_DEVMODE 0x09
198 #define JOB_NOTIFY_FIELD_STATUS 0x0a
199 #define JOB_NOTIFY_FIELD_STATUS_STRING 0x0b
200 #define JOB_NOTIFY_FIELD_SECURITY_DESCRIPTOR 0x0c
201 #define JOB_NOTIFY_FIELD_DOCUMENT 0x0d
202 #define JOB_NOTIFY_FIELD_PRIORITY 0x0e
203 #define JOB_NOTIFY_FIELD_POSITION 0x0f
204 #define JOB_NOTIFY_FIELD_SUBMITTED 0x10
205 #define JOB_NOTIFY_FIELD_START_TIME 0x11
206 #define JOB_NOTIFY_FIELD_UNTIL_TIME 0x12
207 #define JOB_NOTIFY_FIELD_TIME 0x13
208 #define JOB_NOTIFY_FIELD_TOTAL_PAGES 0x14
209 #define JOB_NOTIFY_FIELD_PAGES_PRINTED 0x15
210 #define JOB_NOTIFY_FIELD_TOTAL_BYTES 0x16
211 #define JOB_NOTIFY_FIELD_BYTES_PRINTED 0x17
213 #define PRINTER_NOTIFY_OPTIONS_REFRESH 1
214 #define PRINTER_NOTIFY_INFO_DISCARDED 1
216 #define PRINTER_CHANGE_ADD_PRINTER 0x00000001
217 #define PRINTER_CHANGE_SET_PRINTER 0x00000002
218 #define PRINTER_CHANGE_DELETE_PRINTER 0x00000004
219 #define PRINTER_CHANGE_FAILED_CONNECTION_PRINTER 0x00000008
220 #define PRINTER_CHANGE_PRINTER 0x000000ff
221 #define PRINTER_CHANGE_ADD_JOB 0x00000100
222 #define PRINTER_CHANGE_SET_JOB 0x00000200
223 #define PRINTER_CHANGE_DELETE_JOB 0x00000400
224 #define PRINTER_CHANGE_WRITE_JOB 0x00000800
225 #define PRINTER_CHANGE_JOB 0x0000ff00
226 #define PRINTER_CHANGE_ADD_FORM 0x00010000
227 #define PRINTER_CHANGE_SET_FORM 0x00020000
228 #define PRINTER_CHANGE_DELETE_FORM 0x00040000
229 #define PRINTER_CHANGE_FORM 0x00070000
230 #define PRINTER_CHANGE_ADD_PORT 0x00100000
231 #define PRINTER_CHANGE_CONFIGURE_PORT 0x00200000
232 #define PRINTER_CHANGE_DELETE_PORT 0x00400000
233 #define PRINTER_CHANGE_PORT 0x00700000
234 #define PRINTER_CHANGE_ADD_PRINT_PROCESSOR 0x01000000
235 #define PRINTER_CHANGE_DELETE_PRINTER_PROCESSOR 0x04000000
236 #define PRINTER_CHANGE_PRINT_PROCESSOR 0x07000000
237 #define PRINTER_CHANGE_ADD_PRINTER_DRIVER 0x10000000
238 #define PRINTER_CHANGE_SET_PRINTER_DRIVER 0x20000000
239 #define PRINTER_CHANGE_DELETE_PRINTER_DRIVER 0x40000000
240 #define PRINTER_CHANGE_PRINTER_DRIVER 0x70000000
241 #define PRINTER_CHANGE_TIMEOUT 0x80000000
242 #define PRINTER_CHANGE_ALL 0x7777ffff
244 #define PRINTER_ERROR_INFORMATION 0x80000000
245 #define PRINTER_ERROR_WARNING 0x40000000
246 #define PRINTER_ERROR_SEVERE 0x20000000
248 #define PRINTER_ERROR_OUTODPAPER 0x00000001
249 #define PRINTER_ERROR_JAM 0x00000002
250 #define PRINTER_ERROR_OUTOFTONER 0x00000004
252 /* Access Rights for Printserver, Printers and Printjobs */
253 #define SERVER_ACCESS_ADMINISTER 0x00000001
254 #define SERVER_ACCESS_ENUMERATE 0x00000002
255 #define SERVER_READ (STANDARD_RIGHTS_READ | SERVER_ACCESS_ENUMERATE)
256 #define SERVER_WRITE (STANDARD_RIGHTS_WRITE | \
257 SERVER_ACCESS_ADMINISTER | SERVER_ACCESS_ENUMERATE)
258 #define SERVER_EXECUTE (STANDARD_RIGHTS_EXECUTE | SERVER_ACCESS_ENUMERATE)
259 #define SERVER_ALL_ACCESS (STANDARD_RIGHTS_REQUIRED | \
260 SERVER_ACCESS_ADMINISTER | SERVER_ACCESS_ENUMERATE)
262 #define PRINTER_ACCESS_ADMINISTER 0x00000004
263 #define PRINTER_ACCESS_USE 0x00000008
264 #define PRINTER_READ (STANDARD_RIGHTS_READ | PRINTER_ACCESS_USE)
265 #define PRINTER_WRITE (STANDARD_RIGHTS_WRITE | PRINTER_ACCESS_USE)
266 #define PRINTER_EXECUTE (STANDARD_RIGHTS_EXECUTE | PRINTER_ACCESS_USE)
267 #define PRINTER_ALL_ACCESS (STANDARD_RIGHTS_REQUIRED | \
268 PRINTER_ACCESS_ADMINISTER | PRINTER_ACCESS_USE)
270 #define JOB_ACCESS_ADMINISTER 0x00000010
271 #define JOB_READ (STANDARD_RIGHTS_READ | JOB_ACCESS_ADMINISTER)
272 #define JOB_WRITE (STANDARD_RIGHTS_WRITE | JOB_ACCESS_ADMINISTER)
273 #define JOB_EXECUTE (STANDARD_RIGHTS_EXECUTE | JOB_ACCESS_ADMINISTER)
274 #define JOB_ALL_ACCESS (STANDARD_RIGHTS_REQUIRED | JOB_ACCESS_ADMINISTER)
277 /* Flags for printer drivers */
278 #define DRIVER_KERNELMODE 0x00000001
279 #define DRIVER_USERMODE 0x00000002
281 #define APD_STRICT_UPGRADE 0x00000001
282 #define APD_STRICT_DOWNGRADE 0x00000002
283 #define APD_COPY_ALL_FILES 0x00000004
284 #define APD_COPY_NEW_FILES 0x00000008
285 #define APD_COPY_FROM_DIRECTORY 0x00000010
287 #define DPD_DELETE_UNUSED_FILES 0x00000001
288 #define DPD_DELETE_SPECIFIC_VERSION 0x00000002
289 #define DPD_DELETE_ALL_FILES 0x00000004
291 /* dwAction for PRINTER_INFO_7 */
292 #define DSPRINT_PUBLISH 0x00000001
293 #define DSPRINT_UPDATE 0x00000002
294 #define DSPRINT_UNPUBLISH 0x00000004
295 #define DSPRINT_REPUBLISH 0x00000008
296 #define DSPRINT_PENDING 0x80000000
298 /* ##################################### */
300 /* TYPES */
301 typedef struct _PRINTER_DEFAULTSA {
302 LPSTR pDatatype;
303 LPDEVMODEA pDevMode;
304 ACCESS_MASK DesiredAccess;
305 } PRINTER_DEFAULTSA, *LPPRINTER_DEFAULTSA;
307 typedef struct _PRINTER_DEFAULTSW {
308 LPWSTR pDatatype;
309 LPDEVMODEW pDevMode;
310 ACCESS_MASK DesiredAccess;
311 } PRINTER_DEFAULTSW, *LPPRINTER_DEFAULTSW;
313 DECL_WINELIB_TYPE_AW(PRINTER_DEFAULTS)
314 DECL_WINELIB_TYPE_AW(LPPRINTER_DEFAULTS)
316 typedef struct _DRIVER_INFO_1A {
317 LPSTR pName;
318 } DRIVER_INFO_1A, *PDRIVER_INFO_1A, *LPDRIVER_INFO_1A;
320 typedef struct _DRIVER_INFO_1W {
321 LPWSTR pName;
322 } DRIVER_INFO_1W, *PDRIVER_INFO_1W, *LPDRIVER_INFO_1W;
324 DECL_WINELIB_TYPE_AW(DRIVER_INFO_1)
325 DECL_WINELIB_TYPE_AW(PDRIVER_INFO_1)
326 DECL_WINELIB_TYPE_AW(LPDRIVER_INFO_1)
328 typedef struct _DRIVER_INFO_2A {
329 DWORD cVersion;
330 LPSTR pName;
331 LPSTR pEnvironment;
332 LPSTR pDriverPath;
333 LPSTR pDataFile;
334 LPSTR pConfigFile;
335 } DRIVER_INFO_2A, *PDRIVER_INFO_2A, *LPDRIVER_INFO_2A;
337 typedef struct _DRIVER_INFO_2W {
338 DWORD cVersion;
339 LPWSTR pName;
340 LPWSTR pEnvironment;
341 LPWSTR pDriverPath;
342 LPWSTR pDataFile;
343 LPWSTR pConfigFile;
344 } DRIVER_INFO_2W, *PDRIVER_INFO_2W, *LPDRIVER_INFO_2W;
346 DECL_WINELIB_TYPE_AW(DRIVER_INFO_2)
347 DECL_WINELIB_TYPE_AW(PDRIVER_INFO_2)
348 DECL_WINELIB_TYPE_AW(LPDRIVER_INFO_2)
350 typedef struct _DRIVER_INFO_3A {
351 DWORD cVersion;
352 LPSTR pName;
353 LPSTR pEnvironment;
354 LPSTR pDriverPath;
355 LPSTR pDataFile;
356 LPSTR pConfigFile;
357 LPSTR pHelpFile;
358 LPSTR pDependentFiles;
359 LPSTR pMonitorName;
360 LPSTR pDefaultDataType;
361 } DRIVER_INFO_3A, *PDRIVER_INFO_3A, *LPDRIVER_INFO_3A;
363 typedef struct _DRIVER_INFO_3W {
364 DWORD cVersion;
365 LPWSTR pName;
366 LPWSTR pEnvironment;
367 LPWSTR pDriverPath;
368 LPWSTR pDataFile;
369 LPWSTR pConfigFile;
370 LPWSTR pHelpFile;
371 LPWSTR pDependentFiles;
372 LPWSTR pMonitorName;
373 LPWSTR pDefaultDataType;
374 } DRIVER_INFO_3W, *PDRIVER_INFO_3W, *LPDRIVER_INFO_3W;
376 DECL_WINELIB_TYPE_AW(DRIVER_INFO_3)
377 DECL_WINELIB_TYPE_AW(PDRIVER_INFO_3)
378 DECL_WINELIB_TYPE_AW(LPDRIVER_INFO_3)
380 typedef struct _DRIVER_INFO_4A {
381 DWORD cVersion;
382 LPSTR pName;
383 LPSTR pEnvironment;
384 LPSTR pDriverPath;
385 LPSTR pDataFile;
386 LPSTR pConfigFile;
387 LPSTR pHelpFile;
388 LPSTR pDependentFiles;
389 LPSTR pMonitorName;
390 LPSTR pDefaultDataType;
391 LPSTR pszzPreviousNames;
392 } DRIVER_INFO_4A, *PDRIVER_INFO_4A, *LPDRIVER_INFO_4A;
394 typedef struct _DRIVER_INFO_4W {
395 DWORD cVersion;
396 LPWSTR pName;
397 LPWSTR pEnvironment;
398 LPWSTR pDriverPath;
399 LPWSTR pDataFile;
400 LPWSTR pConfigFile;
401 LPWSTR pHelpFile;
402 LPWSTR pDependentFiles;
403 LPWSTR pMonitorName;
404 LPWSTR pDefaultDataType;
405 LPWSTR pszzPreviousNames;
406 } DRIVER_INFO_4W, *PDRIVER_INFO_4W, *LPDRIVER_INFO_4W;
408 DECL_WINELIB_TYPE_AW(DRIVER_INFO_4)
409 DECL_WINELIB_TYPE_AW(PDRIVER_INFO_4)
410 DECL_WINELIB_TYPE_AW(LPDRIVER_INFO_4)
413 typedef struct _DRIVER_INFO_5A {
414 DWORD cVersion;
415 LPSTR pName;
416 LPSTR pEnvironment;
417 LPSTR pDriverPath;
418 LPSTR pDataFile;
419 LPSTR pConfigFile;
420 DWORD dwDriverAttributes;
421 DWORD dwConfigVersion;
422 DWORD dwDriverVersion;
423 } DRIVER_INFO_5A, *PDRIVER_INFO_5A, *LPDRIVER_INFO_5A;
425 typedef struct _DRIVER_INFO_5W {
426 DWORD cVersion;
427 LPWSTR pName;
428 LPWSTR pEnvironment;
429 LPWSTR pDriverPath;
430 LPWSTR pDataFile;
431 LPWSTR pConfigFile;
432 DWORD dwDriverAttributes;
433 DWORD dwConfigVersion;
434 DWORD dwDriverVersion;
435 } DRIVER_INFO_5W, *PDRIVER_INFO_5W, *LPDRIVER_INFO_5W;
437 DECL_WINELIB_TYPE_AW(DRIVER_INFO_5)
438 DECL_WINELIB_TYPE_AW(PDRIVER_INFO_5)
439 DECL_WINELIB_TYPE_AW(LPDRIVER_INFO_5)
441 typedef struct _DRIVER_INFO_6A {
442 DWORD cVersion;
443 LPSTR pName;
444 LPSTR pEnvironment;
445 LPSTR pDriverPath;
446 LPSTR pDataFile;
447 LPSTR pConfigFile;
448 LPSTR pHelpFile;
449 LPSTR pDependentFiles;
450 LPSTR pMonitorName;
451 LPSTR pDefaultDataType;
452 LPSTR pszzPreviousNames;
453 FILETIME ftDriverDate;
454 DWORDLONG dwlDriverVersion;
455 LPSTR pszMfgName;
456 LPSTR pszOEMUrl;
457 LPSTR pszHardwareID;
458 LPSTR pszProvider;
459 } DRIVER_INFO_6A, *PDRIVER_INFO_6A, *LPDRIVER_INFO_6A;
461 typedef struct _DRIVER_INFO_6W {
462 DWORD cVersion;
463 LPWSTR pName;
464 LPWSTR pEnvironment;
465 LPWSTR pDriverPath;
466 LPWSTR pDataFile;
467 LPWSTR pConfigFile;
468 LPWSTR pHelpFile;
469 LPWSTR pDependentFiles;
470 LPWSTR pMonitorName;
471 LPWSTR pDefaultDataType;
472 LPWSTR pszzPreviousNames;
473 FILETIME ftDriverDate;
474 DWORDLONG dwlDriverVersion;
475 LPWSTR pszMfgName;
476 LPWSTR pszOEMUrl;
477 LPWSTR pszHardwareID;
478 LPWSTR pszProvider;
479 } DRIVER_INFO_6W, *PDRIVER_INFO_6W, *LPDRIVER_INFO_6W;
481 DECL_WINELIB_TYPE_AW(DRIVER_INFO_6)
482 DECL_WINELIB_TYPE_AW(PDRIVER_INFO_6)
483 DECL_WINELIB_TYPE_AW(LPDRIVER_INFO_6)
485 /* DRIVER_INFO_7 is not defined in native winspool.h and not found in the www */
487 typedef struct _DRIVER_INFO_8A {
488 DWORD cVersion;
489 LPSTR pName;
490 LPSTR pEnvironment;
491 LPSTR pDriverPath;
492 LPSTR pDataFile;
493 LPSTR pConfigFile;
494 LPSTR pHelpFile;
495 LPSTR pDependentFiles;
496 LPSTR pMonitorName;
497 LPSTR pDefaultDataType;
498 LPSTR pszzPreviousNames;
499 FILETIME ftDriverDate;
500 DWORDLONG dwlDriverVersion;
501 LPSTR pszMfgName;
502 LPSTR pszOEMUrl;
503 LPSTR pszHardwareID;
504 LPSTR pszProvider;
505 LPSTR pszPrintProcessor;
506 LPSTR pszVendorSetup;
507 LPSTR pszzColorProfiles;
508 LPSTR pszInfPath;
509 DWORD dwPrinterDriverAttributes;
510 LPSTR pszzCoreDriverDependencies;
511 FILETIME ftMinInboxDriverVerDate;
512 DWORDLONG dwlMinInboxDriverVerVersion;
513 } DRIVER_INFO_8A, *PDRIVER_INFO_8A, *LPDRIVER_INFO_8A;
515 typedef struct _DRIVER_INFO_8W {
516 DWORD cVersion;
517 LPWSTR pName;
518 LPWSTR pEnvironment;
519 LPWSTR pDriverPath;
520 LPWSTR pDataFile;
521 LPWSTR pConfigFile;
522 LPWSTR pHelpFile;
523 LPWSTR pDependentFiles;
524 LPWSTR pMonitorName;
525 LPWSTR pDefaultDataType;
526 LPWSTR pszzPreviousNames;
527 FILETIME ftDriverDate;
528 DWORDLONG dwlDriverVersion;
529 LPWSTR pszMfgName;
530 LPWSTR pszOEMUrl;
531 LPWSTR pszHardwareID;
532 LPWSTR pszProvider;
533 LPWSTR pszPrintProcessor;
534 LPWSTR pszVendorSetup;
535 LPWSTR pszzColorProfiles;
536 LPWSTR pszInfPath;
537 DWORD dwPrinterDriverAttributes;
538 LPWSTR pszzCoreDriverDependencies;
539 FILETIME ftMinInboxDriverVerDate;
540 DWORDLONG dwlMinInboxDriverVerVersion;
541 } DRIVER_INFO_8W, *PDRIVER_INFO_8W, *LPDRIVER_INFO_8W;
543 DECL_WINELIB_TYPE_AW(DRIVER_INFO_8)
544 DECL_WINELIB_TYPE_AW(PDRIVER_INFO_8)
545 DECL_WINELIB_TYPE_AW(LPDRIVER_INFO_8)
548 typedef struct _PRINTER_INFO_1A {
549 DWORD Flags;
550 LPSTR pDescription;
551 LPSTR pName;
552 LPSTR pComment;
553 } PRINTER_INFO_1A, *PPRINTER_INFO_1A, *LPPRINTER_INFO_1A;
555 typedef struct _PRINTER_INFO_1W {
556 DWORD Flags;
557 LPWSTR pDescription;
558 LPWSTR pName;
559 LPWSTR pComment;
560 } PRINTER_INFO_1W, *PPRINTER_INFO_1W, *LPPRINTER_INFO_1W;
562 DECL_WINELIB_TYPE_AW(PRINTER_INFO_1)
563 DECL_WINELIB_TYPE_AW(PPRINTER_INFO_1)
564 DECL_WINELIB_TYPE_AW(LPPRINTER_INFO_1)
566 /* FIXME: winspool.h declares some structure members with the name Status.
567 * unfortunately <X11/ICE/ICElib.h> #defines Status to the type 'int'
568 * therefore the following hack */
569 #ifndef Status
571 typedef struct _PRINTER_INFO_2A {
572 LPSTR pServerName;
573 LPSTR pPrinterName;
574 LPSTR pShareName;
575 LPSTR pPortName;
576 LPSTR pDriverName;
577 LPSTR pComment;
578 LPSTR pLocation;
579 LPDEVMODEA pDevMode;
580 LPSTR pSepFile;
581 LPSTR pPrintProcessor;
582 LPSTR pDatatype;
583 LPSTR pParameters;
584 PSECURITY_DESCRIPTOR pSecurityDescriptor;
585 DWORD Attributes;
586 DWORD Priority;
587 DWORD DefaultPriority;
588 DWORD StartTime;
589 DWORD UntilTime;
590 DWORD Status;
591 DWORD cJobs;
592 DWORD AveragePPM;
593 } PRINTER_INFO_2A, *PPRINTER_INFO_2A, *LPPRINTER_INFO_2A;
595 typedef struct _PRINTER_INFO_2W {
596 LPWSTR pServerName;
597 LPWSTR pPrinterName;
598 LPWSTR pShareName;
599 LPWSTR pPortName;
600 LPWSTR pDriverName;
601 LPWSTR pComment;
602 LPWSTR pLocation;
603 LPDEVMODEW pDevMode;
604 LPWSTR pSepFile;
605 LPWSTR pPrintProcessor;
606 LPWSTR pDatatype;
607 LPWSTR pParameters;
608 PSECURITY_DESCRIPTOR pSecurityDescriptor;
609 DWORD Attributes;
610 DWORD Priority;
611 DWORD DefaultPriority;
612 DWORD StartTime;
613 DWORD UntilTime;
614 DWORD Status;
615 DWORD cJobs;
616 DWORD AveragePPM;
617 } PRINTER_INFO_2W, *PPRINTER_INFO_2W, *LPPRINTER_INFO_2W;
619 DECL_WINELIB_TYPE_AW(PRINTER_INFO_2)
620 DECL_WINELIB_TYPE_AW(PPRINTER_INFO_2)
621 DECL_WINELIB_TYPE_AW(LPPRINTER_INFO_2)
623 typedef struct _PRINTER_INFO_3 {
624 PSECURITY_DESCRIPTOR pSecurityDescriptor;
625 } PRINTER_INFO_3, *PPRINTER_INFO_3, *LPPRINTER_INFO_3;
627 typedef struct _PRINTER_INFO_4A {
628 LPSTR pPrinterName;
629 LPSTR pServerName;
630 DWORD Attributes;
631 } PRINTER_INFO_4A, *PPRINTER_INFO_4A, *LPPRINTER_INFO_4A;
633 typedef struct _PRINTER_INFO_4W {
634 LPWSTR pPrinterName;
635 LPWSTR pServerName;
636 DWORD Attributes;
637 } PRINTER_INFO_4W, *PPRINTER_INFO_4W, *LPPRINTER_INFO_4W;
639 DECL_WINELIB_TYPE_AW(PRINTER_INFO_4)
640 DECL_WINELIB_TYPE_AW(PPRINTER_INFO_4)
641 DECL_WINELIB_TYPE_AW(LPPRINTER_INFO_4)
643 typedef struct _PRINTER_INFO_5A {
644 LPSTR pPrinterName;
645 LPSTR pPortName;
646 DWORD Attributes;
647 DWORD DeviceNotSelectedTimeout;
648 DWORD TransmissionRetryTimeout;
649 } PRINTER_INFO_5A, *PPRINTER_INFO_5A, *LPPRINTER_INFO_5A;
651 typedef struct _PRINTER_INFO_5W {
652 LPWSTR pPrinterName;
653 LPWSTR pPortName;
654 DWORD Attributes;
655 DWORD DeviceNotSelectedTimeout;
656 DWORD TransmissionRetryTimeout;
657 } PRINTER_INFO_5W, *PPRINTER_INFO_5W, *LPPRINTER_INFO_5W;
659 DECL_WINELIB_TYPE_AW(PRINTER_INFO_5)
660 DECL_WINELIB_TYPE_AW(PPRINTER_INFO_5)
661 DECL_WINELIB_TYPE_AW(LPPRINTER_INFO_5)
663 typedef struct _PRINTER_INFO_6 {
664 DWORD dwStatus;
665 } PRINTER_INFO_6, *PPRINTER_INFO_6, *LPPRINTER_INFO_6;
667 typedef struct _PRINTER_INFO_7A {
668 LPSTR pszObjectGUID;
669 DWORD dwAction;
670 } PRINTER_INFO_7A, *PPRINTER_INFO_7A, *LPPRINTER_INFO_7A;
672 typedef struct _PRINTER_INFO_7W {
673 LPWSTR pszObjectGUID;
674 DWORD dwAction;
675 } PRINTER_INFO_7W, *PPRINTER_INFO_7W, *LPPRINTER_INFO_7W;
677 DECL_WINELIB_TYPE_AW(PRINTER_INFO_7)
678 DECL_WINELIB_TYPE_AW(PPRINTER_INFO_7)
679 DECL_WINELIB_TYPE_AW(LPPRINTER_INFO_7)
681 typedef struct _PRINTER_INFO_8A {
682 LPDEVMODEA pDevMode;
683 } PRINTER_INFO_8A, *PPRINTER_INFO_8A, *LPPRINTER_INFO_8A;
685 typedef struct _PRINTER_INFO_8W {
686 LPDEVMODEW pDevMode;
687 } PRINTER_INFO_8W, *PPRINTER_INFO_8W, *LPPRINTER_INFO_8W;
689 DECL_WINELIB_TYPE_AW(PRINTER_INFO_8)
690 DECL_WINELIB_TYPE_AW(PPRINTER_INFO_8)
691 DECL_WINELIB_TYPE_AW(LPPRINTER_INFO_8)
693 typedef struct _PRINTER_INFO_9A {
694 LPDEVMODEA pDevMode;
695 } PRINTER_INFO_9A, *PPRINTER_INFO_9A, *LPPRINTER_INFO_9A;
697 typedef struct _PRINTER_INFO_9W {
698 LPDEVMODEW pDevMode;
699 } PRINTER_INFO_9W, *PPRINTER_INFO_9W, *LPPRINTER_INFO_9W;
701 DECL_WINELIB_TYPE_AW(PRINTER_INFO_9)
702 DECL_WINELIB_TYPE_AW(PPRINTER_INFO_9)
703 DECL_WINELIB_TYPE_AW(LPPRINTER_INFO_9)
706 typedef struct _JOB_INFO_1A {
707 DWORD JobId;
708 LPSTR pPrinterName;
709 LPSTR pMachineName;
710 LPSTR pUserName;
711 LPSTR pDocument;
712 LPSTR pDatatype;
713 LPSTR pStatus;
714 DWORD Status;
715 DWORD Priority;
716 DWORD Position;
717 DWORD TotalPages;
718 DWORD PagesPrinted;
719 SYSTEMTIME Submitted;
720 } JOB_INFO_1A, *PJOB_INFO_1A, *LPJOB_INFO_1A;
722 typedef struct _JOB_INFO_1W {
723 DWORD JobId;
724 LPWSTR pPrinterName;
725 LPWSTR pMachineName;
726 LPWSTR pUserName;
727 LPWSTR pDocument;
728 LPWSTR pDatatype;
729 LPWSTR pStatus;
730 DWORD Status;
731 DWORD Priority;
732 DWORD Position;
733 DWORD TotalPages;
734 DWORD PagesPrinted;
735 SYSTEMTIME Submitted;
736 } JOB_INFO_1W, *PJOB_INFO_1W, *LPJOB_INFO_1W;
738 DECL_WINELIB_TYPE_AW(JOB_INFO_1)
739 DECL_WINELIB_TYPE_AW(PJOB_INFO_1)
740 DECL_WINELIB_TYPE_AW(LPJOB_INFO_1)
742 typedef struct _JOB_INFO_2A {
743 DWORD JobId;
744 LPSTR pPrinterName;
745 LPSTR pMachineName;
746 LPSTR pUserName;
747 LPSTR pDocument;
748 LPSTR pNotifyName;
749 LPSTR pDatatype;
750 LPSTR pPrintProcessor;
751 LPSTR pParameters;
752 LPSTR pDriverName;
753 LPDEVMODEA pDevMode;
754 LPSTR pStatus;
755 PSECURITY_DESCRIPTOR pSecurityDescriptor;
756 DWORD Status;
757 DWORD Priority;
758 DWORD Position;
759 DWORD StartTime;
760 DWORD UntilTime;
761 DWORD TotalPages;
762 DWORD Size;
763 SYSTEMTIME Submitted;
764 DWORD Time;
765 DWORD PagesPrinted;
766 } JOB_INFO_2A, *PJOB_INFO_2A, *LPJOB_INFO_2A;
768 typedef struct _JOB_INFO_2W {
769 DWORD JobId;
770 LPWSTR pPrinterName;
771 LPWSTR pMachineName;
772 LPWSTR pUserName;
773 LPWSTR pDocument;
774 LPWSTR pNotifyName;
775 LPWSTR pDatatype;
776 LPWSTR pPrintProcessor;
777 LPWSTR pParameters;
778 LPWSTR pDriverName;
779 LPDEVMODEW pDevMode;
780 LPWSTR pStatus;
781 PSECURITY_DESCRIPTOR pSecurityDescriptor;
782 DWORD Status;
783 DWORD Priority;
784 DWORD Position;
785 DWORD StartTime;
786 DWORD UntilTime;
787 DWORD TotalPages;
788 DWORD Size;
789 SYSTEMTIME Submitted;
790 DWORD Time;
791 DWORD PagesPrinted;
792 } JOB_INFO_2W, *PJOB_INFO_2W, *LPJOB_INFO_2W;
794 DECL_WINELIB_TYPE_AW(JOB_INFO_2)
795 DECL_WINELIB_TYPE_AW(PJOB_INFO_2)
796 DECL_WINELIB_TYPE_AW(LPJOB_INFO_2)
798 typedef struct _JOB_INFO_3 {
799 DWORD JobId;
800 DWORD NextJobId;
801 DWORD Reserved;
802 } JOB_INFO_3, *PJOB_INFO_3, *LPJOB_INFO_3;
804 typedef struct _ADDJOB_INFO_1A {
805 LPSTR Path;
806 DWORD JobId;
807 } ADDJOB_INFO_1A, *PADDJOB_INFO_1A, *LPADDJOB_INFO_1A;
809 typedef struct _ADDJOB_INFO_1W {
810 LPWSTR Path;
811 DWORD JobId;
812 } ADDJOB_INFO_1W, *PADDJOB_INFO_1W, *LPADDJOB_INFO_1W;
814 DECL_WINELIB_TYPE_AW(ADDJOB_INFO_1)
815 DECL_WINELIB_TYPE_AW(PADDJOB_INFO_1)
816 DECL_WINELIB_TYPE_AW(LPADDJOB_INFO_1)
818 typedef struct _DOC_INFO_1A {
819 LPSTR pDocName;
820 LPSTR pOutputFile;
821 LPSTR pDatatype;
822 } DOC_INFO_1A, *PDOC_INFO_1A, *LPDOC_INFO_1A;
824 typedef struct _DOC_INFO_1W {
825 LPWSTR pDocName;
826 LPWSTR pOutputFile;
827 LPWSTR pDatatype;
828 } DOC_INFO_1W, *PDOC_INFO_1W, *LPDOC_INFO_1W;
830 DECL_WINELIB_TYPE_AW(DOC_INFO_1)
831 DECL_WINELIB_TYPE_AW(PDOC_INFO_1)
832 DECL_WINELIB_TYPE_AW(LPDOC_INFO_1)
834 typedef struct _DOC_INFO_2A {
835 LPSTR pDocName;
836 LPSTR pOutputFile;
837 LPSTR pDatatype;
838 DWORD dwMode;
839 DWORD JobId;
840 } DOC_INFO_2A, *PDOC_INFO_2A, *LPDOC_INFO_2A;
842 typedef struct _DOC_INFO_2W {
843 LPWSTR pDocName;
844 LPWSTR pOutputFile;
845 LPWSTR pDatatype;
846 DWORD dwMode;
847 DWORD JobId;
848 } DOC_INFO_2W, *PDOC_INFO_2W, *LPDOC_INFO_2W;
850 DECL_WINELIB_TYPE_AW(DOC_INFO_2)
851 DECL_WINELIB_TYPE_AW(PDOC_INFO_2)
852 DECL_WINELIB_TYPE_AW(LPDOC_INFO_2)
854 typedef struct _FORM_INFO_1A {
855 DWORD Flags;
856 LPSTR pName;
857 SIZEL Size;
858 RECTL ImageableArea;
859 } FORM_INFO_1A, *PFORM_INFO_1A, *LPFORM_INFO_1A;
861 typedef struct _FORM_INFO_1W {
862 DWORD Flags;
863 LPWSTR pName;
864 SIZEL Size;
865 RECTL ImageableArea;
866 } FORM_INFO_1W, *PFORM_INFO_1W, *LPFORM_INFO_1W;
868 DECL_WINELIB_TYPE_AW(FORM_INFO_1)
869 DECL_WINELIB_TYPE_AW(PFORM_INFO_1)
870 DECL_WINELIB_TYPE_AW(LPFORM_INFO_1)
872 typedef struct _FORM_INFO_2A {
873 DWORD Flags;
874 LPSTR pName;
875 SIZEL Size;
876 RECTL ImageableArea;
877 LPCSTR pKeyword;
878 DWORD StringType;
879 LPSTR pMuiDll;
880 DWORD dwResourceId;
881 LPSTR pDisplayName;
882 LANGID wLangId;
883 } FORM_INFO_2A, *PFORM_INFO_2A, *LPFORM_INFO_2A;
885 typedef struct _FORM_INFO_2W {
886 DWORD Flags;
887 LPWSTR pName;
888 SIZEL Size;
889 RECTL ImageableArea;
890 LPCSTR pKeyword;
891 DWORD StringType;
892 LPWSTR pMuiDll;
893 DWORD dwResourceId;
894 LPWSTR pDisplayName;
895 LANGID wLangId;
896 } FORM_INFO_2W, *PFORM_INFO_2W, *LPFORM_INFO_2W;
898 DECL_WINELIB_TYPE_AW(FORM_INFO_2)
899 DECL_WINELIB_TYPE_AW(PFORM_INFO_2)
900 DECL_WINELIB_TYPE_AW(LPFORM_INFO_2)
902 typedef struct _PRINTPROCESSOR_INFO_1A {
903 LPSTR pName;
904 } PRINTPROCESSOR_INFO_1A, *PPRINTPROCESSOR_INFO_1A,
905 *LPPRINTPROCESSOR_INFO_1A;
907 typedef struct _PRINTPROCESSOR_INFO_1W {
908 LPWSTR pName;
909 } PRINTPROCESSOR_INFO_1W, *PPRINTPROCESSOR_INFO_1W,
910 *LPPRINTPROCESSOR_INFO_1W;
912 DECL_WINELIB_TYPE_AW(PRINTPROCESSOR_INFO_1)
913 DECL_WINELIB_TYPE_AW(PPRINTPROCESSOR_INFO_1)
914 DECL_WINELIB_TYPE_AW(LPPRINTPROCESSOR_INFO_1)
916 typedef struct _PORT_INFO_1A {
917 LPSTR pName;
918 } PORT_INFO_1A, *PPORT_INFO_1A, *LPPORT_INFO_1A;
920 typedef struct _PORT_INFO_1W {
921 LPWSTR pName;
922 } PORT_INFO_1W, *PPORT_INFO_1W, *LPPORT_INFO_1W;
924 DECL_WINELIB_TYPE_AW(PORT_INFO_1)
925 DECL_WINELIB_TYPE_AW(PPORT_INFO_1)
926 DECL_WINELIB_TYPE_AW(LPPORT_INFO_1)
928 typedef struct _PORT_INFO_2A {
929 LPSTR pPortName;
930 LPSTR pMonitorName;
931 LPSTR pDescription;
932 DWORD fPortType;
933 DWORD Reserved;
934 } PORT_INFO_2A, *PPORT_INFO_2A, *LPPORT_INFO_2A;
936 typedef struct _PORT_INFO_2W {
937 LPWSTR pPortName;
938 LPWSTR pMonitorName;
939 LPWSTR pDescription;
940 DWORD fPortType;
941 DWORD Reserved;
942 } PORT_INFO_2W, *PPORT_INFO_2W, *LPPORT_INFO_2W;
944 DECL_WINELIB_TYPE_AW(PORT_INFO_2)
945 DECL_WINELIB_TYPE_AW(PPORT_INFO_2)
946 DECL_WINELIB_TYPE_AW(LPPORT_INFO_2)
948 typedef struct _PORT_INFO_3A {
949 DWORD dwStatus;
950 LPSTR pszStatus;
951 DWORD dwSeverity;
952 } PORT_INFO_3A, *PPORT_INFO_3A, *LPPORT_INFO_3A;
954 typedef struct _PORT_INFO_3W {
955 DWORD dwStatus;
956 LPWSTR pszStatus;
957 DWORD dwSeverity;
958 } PORT_INFO_3W, *PPORT_INFO_3W, *LPPORT_INFO_3W;
960 DECL_WINELIB_TYPE_AW(PORT_INFO_3)
961 DECL_WINELIB_TYPE_AW(PPORT_INFO_3)
962 DECL_WINELIB_TYPE_AW(LPPORT_INFO_3)
964 typedef struct _MONITOR_INFO_1A {
965 LPSTR pName;
966 } MONITOR_INFO_1A, *PMONITOR_INFO_1A, *LPMONITOR_INFO_1A;
968 typedef struct _MONITOR_INFO_1W {
969 LPWSTR pName;
970 } MONITOR_INFO_1W, *PMONITOR_INFO_1W, *LPMONITOR_INFO_1W;
972 DECL_WINELIB_TYPE_AW(MONITOR_INFO_1)
973 DECL_WINELIB_TYPE_AW(PMONITOR_INFO_1)
974 DECL_WINELIB_TYPE_AW(LPMONITOR_INFO_1)
976 #endif /* Status */
979 typedef struct _MONITOR_INFO_2A {
980 LPSTR pName;
981 LPSTR pEnvironment;
982 LPSTR pDLLName;
983 } MONITOR_INFO_2A, *PMONITOR_INFO_2A, *LPMONITOR_INFO_2A;
985 typedef struct _MONITOR_INFO_2W {
986 LPWSTR pName;
987 LPWSTR pEnvironment;
988 LPWSTR pDLLName;
989 } MONITOR_INFO_2W, *PMONITOR_INFO_2W, *LPMONITOR_INFO_2W;
991 DECL_WINELIB_TYPE_AW(MONITOR_INFO_2)
992 DECL_WINELIB_TYPE_AW(PMONITOR_INFO_2)
993 DECL_WINELIB_TYPE_AW(LPMONITOR_INFO_2)
995 typedef struct _DATATYPES_INFO_1A {
996 LPSTR pName;
997 } DATATYPES_INFO_1A, *PDATATYPES_INFO_1A, *LPDATATYPES_INFO_1A;
999 typedef struct _DATATYPES_INFO_1W {
1000 LPWSTR pName;
1001 } DATATYPES_INFO_1W, *PDATATYPES_INFO_1W, *LPDATATYPES_INFO_1W;
1003 DECL_WINELIB_TYPE_AW(DATATYPES_INFO_1)
1004 DECL_WINELIB_TYPE_AW(PDATATYPES_INFO_1)
1005 DECL_WINELIB_TYPE_AW(LPDATATYPES_INFO_1)
1007 typedef struct _PRINTER_NOTIFY_OPTIONS_TYPE {
1008 WORD Type;
1009 WORD Reserved0;
1010 DWORD Reserved1;
1011 DWORD Reserved2;
1012 DWORD Count;
1013 PWORD pFields;
1014 } PRINTER_NOTIFY_OPTIONS_TYPE, *PPRINTER_NOTIFY_OPTIONS_TYPE,
1015 *LPPRINTER_NOTIFY_OPTIONS_TYPE;
1017 typedef struct _PRINTER_NOTIFY_OPTIONS {
1018 DWORD Version;
1019 DWORD Flags;
1020 DWORD Count;
1021 PPRINTER_NOTIFY_OPTIONS_TYPE pTypes;
1022 } PRINTER_NOTIFY_OPTIONS, *PPRINTER_NOTIFY_OPTIONS, *LPPRINTER_NOTIFY_OPTIONS;
1024 typedef struct _PRINTER_NOTIFY_INFO_DATA {
1025 WORD Type;
1026 WORD Field;
1027 DWORD Reserved;
1028 DWORD Id;
1029 union {
1030 DWORD adwData[2];
1031 struct {
1032 DWORD cbBuf;
1033 LPVOID pBuf;
1034 } Data;
1035 } NotifyData;
1036 } PRINTER_NOTIFY_INFO_DATA, *PPRINTER_NOTIFY_INFO_DATA,
1037 *LPPRINTER_NOTIFY_INFO_DATA;
1039 typedef struct _PRINTER_NOTIFY_INFO {
1040 DWORD Version;
1041 DWORD Flags;
1042 DWORD Count;
1043 PRINTER_NOTIFY_INFO_DATA aData[1];
1044 } PRINTER_NOTIFY_INFO, *PPRINTER_NOTIFY_INFO, *LPPRINTER_NOTIFY_INFO;
1046 typedef struct _PROVIDOR_INFO_1A {
1047 LPSTR pName;
1048 LPSTR pEnvironment;
1049 LPSTR pDLLName;
1050 } PROVIDOR_INFO_1A, *PPROVIDOR_INFO_1A, *LPPROVIDOR_INFO_1A;
1052 typedef struct _PROVIDOR_INFO_1W {
1053 LPWSTR pName;
1054 LPWSTR pEnvironment;
1055 LPWSTR pDLLName;
1056 } PROVIDOR_INFO_1W, *PPROVIDOR_INFO_1W, *LPPROVIDOR_INFO_1W;
1058 DECL_WINELIB_TYPE_AW(PROVIDOR_INFO_1)
1059 DECL_WINELIB_TYPE_AW(PPROVIDOR_INFO_1)
1060 DECL_WINELIB_TYPE_AW(LPPROVIDOR_INFO_1)
1062 typedef struct _PRINTER_ENUM_VALUESA {
1063 LPSTR pValueName;
1064 DWORD cbValueName;
1065 DWORD dwType;
1066 LPBYTE pData;
1067 DWORD cbData;
1068 } PRINTER_ENUM_VALUESA, *PPRINTER_ENUM_VALUESA;
1070 typedef struct _PRINTER_ENUM_VALUESW {
1071 LPWSTR pValueName;
1072 DWORD cbValueName;
1073 DWORD dwType;
1074 LPBYTE pData;
1075 DWORD cbData;
1076 } PRINTER_ENUM_VALUESW, *PPRINTER_ENUM_VALUESW;
1078 DECL_WINELIB_TYPE_AW(PRINTER_ENUM_VALUES)
1079 DECL_WINELIB_TYPE_AW(PPRINTER_ENUM_VALUES)
1081 typedef enum {
1082 BIDI_NULL = 0,
1083 BIDI_INT,
1084 BIDI_FLOAT,
1085 BIDI_BOOL,
1086 BIDI_STRING,
1087 BIDI_TEXT,
1088 BIDI_ENUM,
1089 BIDI_BLOB
1090 } BIDI_TYPE;
1092 typedef struct _BINARY_CONTAINER {
1093 DWORD cbBuf;
1094 LPBYTE pData;
1095 } BINARY_CONTAINER, *PBINARY_CONTAINER;
1097 typedef struct _BIDI_DATA {
1098 DWORD dwBidiType;
1099 union
1101 BOOL bData;
1102 INT iData;
1103 LPWSTR sData;
1104 FLOAT fData;
1105 BINARY_CONTAINER biData;
1106 } u;
1107 } BIDI_DATA, *LPBIDI_DATA, *PBIDI_DATA;
1109 typedef struct _BIDI_REQUEST_DATA {
1110 DWORD dwReqNumber;
1111 LPWSTR pSchema;
1112 BIDI_DATA data;
1113 } BIDI_REQUEST_DATA, *LPBIDI_REQUEST_DATA, *PBIDI_REQUEST_DATA;
1115 typedef struct _BIDI_REQUEST_CONTAINER {
1116 DWORD Version;
1117 DWORD Flags;
1118 DWORD Count;
1119 BIDI_REQUEST_DATA aData[1];
1120 } BIDI_REQUEST_CONTAINER, *LPBIDI_REQUEST_CONTAINER, *PBIDI_REQUEST_CONTAINER;
1122 typedef struct _BIDI_RESPONSE_DATA {
1123 DWORD dwResult;
1124 DWORD dwReqNumber;
1125 LPWSTR pSchema;
1126 BIDI_DATA data;
1127 } BIDI_RESPONSE_DATA, *LPBIDI_RESPONSE_DATA, *PBIDI_RESPONSE_DATA;
1129 typedef struct _BIDI_RESPONSE_CONTAINER {
1130 DWORD Version;
1131 DWORD Flags;
1132 DWORD Count;
1133 BIDI_RESPONSE_DATA aData[1];
1134 } BIDI_RESPONSE_CONTAINER, *LPBIDI_RESPONSE_CONTAINER, *PBIDI_RESPONSE_CONTAINER;
1136 /* string constants */
1138 #define SPLREG_DEFAULT_SPOOL_DIRECTORYA "DefaultSpoolDirectory"
1139 #ifdef _MSC_VER
1140 #define SPLREG_DEFAULT_SPOOL_DIRECTORYW L"DefaultSpoolDirectory"
1141 #elif defined(__GNUC__)
1142 #define SPLREG_DEFAULT_SPOOL_DIRECTORYW (const WCHAR[]){'D','e','f','a','u','l','t','S','p','o','o','l','D','i','r','e','c','t','o','r','y',0}
1143 #else
1144 static const WCHAR SPLREG_DEFAULT_SPOOL_DIRECTORYW[] = {'D','e','f','a','u','l','t','S','p','o','o','l','D','i','r','e','c','t','o','r','y',0};
1145 #endif
1146 #define SPLREG_DEFAULT_SPOOL_DIRECTORY WINELIB_NAME_AW(SPLREG_DEFAULT_SPOOL_DIRECTORY)
1148 #define SPLREG_PORT_THREAD_PRIORITY_DEFAULTA "PortThreadPriorityDefault"
1149 #ifdef _MSC_VER
1150 #define SPLREG_PORT_THREAD_PRIORITY_DEFAULTW L"PortThreadPriorityDefault"
1151 #elif defined(__GNUC__)
1152 #define SPLREG_PORT_THREAD_PRIORITY_DEFAULTW (const WCHAR[]){'P','o','r','t','T','h','r','e','a','d','P','r','i','o','r','i','t','y','D','e','f','a','u','l','t',0}
1153 #else
1154 static const WCHAR SPLREG_PORT_THREAD_PRIORITY_DEFAULTW[] = {'P','o','r','t','T','h','r','e','a','d','P','r','i','o','r','i','t','y','D','e','f','a','u','l','t',0};
1155 #endif
1156 #define SPLREG_PORT_THREAD_PRIORITY_DEFAULT WINELIB_NAME_AW(SPLREG_PORT_THREAD_PRIORITY_DEFAULT)
1158 #define SPLREG_PORT_THREAD_PRIORITYA "PortThreadPriority"
1159 #ifdef _MSC_VER
1160 #define SPLREG_PORT_THREAD_PRIORITYW L"PortThreadPriority"
1161 #elif defined(__GNUC__)
1162 #define SPLREG_PORT_THREAD_PRIORITYW (const WCHAR[]){'P','o','r','t','T','h','r','e','a','d','P','r','i','o','r','i','t','y',0}
1163 #else
1164 static const WCHAR SPLREG_PORT_THREAD_PRIORITYW[] = {'P','o','r','t','T','h','r','e','a','d','P','r','i','o','r','i','t','y',0};
1165 #endif
1166 #define SPLREG_PORT_THREAD_PRIORITY WINELIB_NAME_AW(SPLREG_PORT_THREAD_PRIORITY)
1168 #define SPLREG_SCHEDULER_THREAD_PRIORITY_DEFAULTA "SchedulerThreadPriorityDefault"
1169 #ifdef _MSC_VER
1170 #define SPLREG_SCHEDULER_THREAD_PRIORITY_DEFAULTW L"SchedulerThreadPriorityDefault"
1171 #elif defined(__GNUC__)
1172 #define SPLREG_SCHEDULER_THREAD_PRIORITY_DEFAULTW (const WCHAR[]){'S','c','h','e','d','u','l','e','r','T','h','r','e','a','d','P','r','i','o','r','i','t','y','D','e','f','a','u','l','t',0}
1173 #else
1174 static const WCHAR SPLREG_SCHEDULER_THREAD_PRIORITY_DEFAULTW[] = {'S','c','h','e','d','u','l','e','r','T','h','r','e','a','d','P','r','i','o','r','i','t','y','D','e','f','a','u','l','t',0};
1175 #endif
1176 #define SPLREG_SCHEDULER_THREAD_PRIORITY_DEFAULT WINELIB_NAME_AW(SPLREG_SCHEDULER_THREAD_PRIORITY_DEFAULT)
1178 #define SPLREG_SCHEDULER_THREAD_PRIORITYA "SchedulerThreadPriority"
1179 #ifdef _MSC_VER
1180 #define SPLREG_SCHEDULER_THREAD_PRIORITYW L"SchedulerThreadPriority"
1181 #elif defined(__GNUC__)
1182 #define SPLREG_SCHEDULER_THREAD_PRIORITYW (const WCHAR[]){'S','c','h','e','d','u','l','e','r','T','h','r','e','a','d','P','r','i','o','r','i','t','y',0}
1183 #else
1184 static const WCHAR SPLREG_SCHEDULER_THREAD_PRIORITYW[] = {'S','c','h','e','d','u','l','e','r','T','h','r','e','a','d','P','r','i','o','r','i','t','y',0};
1185 #endif
1186 #define SPLREG_SCHEDULER_THREAD_PRIORITY WINELIB_NAME_AW(SPLREG_SCHEDULER_THREAD_PRIORITY)
1188 #define SPLREG_BEEP_ENABLEDA "BeepEnabled"
1189 #ifdef _MSC_VER
1190 #define SPLREG_BEEP_ENABLEDW L"BeepEnabled"
1191 #elif defined(__GNUC__)
1192 #define SPLREG_BEEP_ENABLEDW (const WCHAR[]){'B','e','e','p','E','n','a','b','l','e','d',0}
1193 #else
1194 static const WCHAR SPLREG_BEEP_ENABLEDW[] = {'B','e','e','p','E','n','a','b','l','e','d',0};
1195 #endif
1196 #define SPLREG_BEEP_ENABLED WINELIB_NAME_AW(SPLREG_BEEP_ENABLED)
1198 #define SPLREG_NET_POPUPA "NetPopup"
1199 #ifdef _MSC_VER
1200 #define SPLREG_NET_POPUPW L"NetPopup"
1201 #elif defined(__GNUC__)
1202 #define SPLREG_NET_POPUPW (const WCHAR[]){'N','e','t','P','o','p','u','p',0}
1203 #else
1204 static const WCHAR SPLREG_NET_POPUPW[] = {'N','e','t','P','o','p','u','p',0};
1205 #endif
1206 #define SPLREG_NET_POPUP WINELIB_NAME_AW(SPLREG_NET_POPUP)
1208 #define SPLREG_RETRY_POPUPA "RetryPopup"
1209 #ifdef _MSC_VER
1210 #define SPLREG_RETRY_POPUPW L"RetryPopup"
1211 #elif defined(__GNUC__)
1212 #define SPLREG_RETRY_POPUPW (const WCHAR[]){'R','e','t','r','y','P','o','p','u','p',0}
1213 #else
1214 static const WCHAR SPLREG_RETRY_POPUPW[] = {'R','e','t','r','y','P','o','p','u','p',0};
1215 #endif
1216 #define SPLREG_RETRY_POPUP WINELIB_NAME_AW(SPLREG_RETRY_POPUP)
1218 #define SPLREG_NET_POPUP_TO_COMPUTERA "NetPopupToComputer"
1219 #ifdef _MSC_VER
1220 #define SPLREG_NET_POPUP_TO_COMPUTERW L"NetPopupToComputer"
1221 #elif defined(__GNUC__)
1222 #define SPLREG_NET_POPUP_TO_COMPUTERW (const WCHAR[]){'N','e','t','P','o','p','u','p','T','o','C','o','m','p','u','t','e','r',0}
1223 #else
1224 static const WCHAR SPLREG_NET_POPUP_TO_COMPUTERW[] = {'N','e','t','P','o','p','u','p','T','o','C','o','m','p','u','t','e','r',0};
1225 #endif
1226 #define SPLREG_NET_POPUP_TO_COMPUTER WINELIB_NAME_AW(SPLREG_NET_POPUP_TO_COMPUTER)
1228 #define SPLREG_EVENT_LOGA "EventLog"
1229 #ifdef _MSC_VER
1230 #define SPLREG_EVENT_LOGW L"EventLog"
1231 #elif defined(__GNUC__)
1232 #define SPLREG_EVENT_LOGW (const WCHAR[]){'E','v','e','n','t','L','o','g',0}
1233 #else
1234 static const WCHAR SPLREG_EVENT_LOGW[] = {'E','v','e','n','t','L','o','g',0};
1235 #endif
1236 #define SPLREG_EVENT_LOG WINELIB_NAME_AW(SPLREG_EVENT_LOG)
1238 #define SPLREG_MAJOR_VERSIONA "MajorVersion"
1239 #ifdef _MSC_VER
1240 #define SPLREG_MAJOR_VERSIONW L"MajorVersion"
1241 #elif defined(__GNUC__)
1242 #define SPLREG_MAJOR_VERSIONW (const WCHAR[]){'M','a','j','o','r','V','e','r','s','i','o','n',0}
1243 #else
1244 static const WCHAR SPLREG_MAJOR_VERSIONW[] = {'M','a','j','o','r','V','e','r','s','i','o','n',0};
1245 #endif
1246 #define SPLREG_MAJOR_VERSION WINELIB_NAME_AW(SPLREG_MAJOR_VERSION)
1248 #define SPLREG_MINOR_VERSIONA "MinorVersion"
1249 #ifdef _MSC_VER
1250 #define SPLREG_MINOR_VERSIONW L"MinorVersion"
1251 #elif defined(__GNUC__)
1252 #define SPLREG_MINOR_VERSIONW (const WCHAR[]){'M','i','n','o','r','V','e','r','s','i','o','n',0}
1253 #else
1254 static const WCHAR SPLREG_MINOR_VERSIONW[] = {'M','i','n','o','r','V','e','r','s','i','o','n',0};
1255 #endif
1256 #define SPLREG_MINOR_VERSION WINELIB_NAME_AW(SPLREG_MINOR_VERSION)
1258 #define SPLREG_ARCHITECTUREA "Architecture"
1259 #ifdef _MSC_VER
1260 #define SPLREG_ARCHITECTUREW L"Architecture"
1261 #elif defined(__GNUC__)
1262 #define SPLREG_ARCHITECTUREW (const WCHAR[]){'A','r','c','h','i','t','e','c','t','u','r','e',0}
1263 #else
1264 static const WCHAR SPLREG_ARCHITECTUREW[] = {'A','r','c','h','i','t','e','c','t','u','r','e',0};
1265 #endif
1266 #define SPLREG_ARCHITECTURE WINELIB_NAME_AW(SPLREG_ARCHITECTURE)
1268 #define SPLREG_OS_VERSIONA "OSVersion"
1269 #ifdef _MSC_VER
1270 #define SPLREG_OS_VERSIONW L"OSVersion"
1271 #elif defined(__GNUC__)
1272 #define SPLREG_OS_VERSIONW (const WCHAR[]){'O','S','V','e','r','s','i','o','n',0}
1273 #else
1274 static const WCHAR SPLREG_OS_VERSIONW[] = {'O','S','V','e','r','s','i','o','n',0};
1275 #endif
1276 #define SPLREG_OS_VERSION WINELIB_NAME_AW(SPLREG_OS_VERSION)
1278 #define SPLREG_OS_VERSIONEXA "OSVersionEx"
1279 #ifdef _MSC_VER
1280 #define SPLREG_OS_VERSIONEXW L"OSVersionEx"
1281 #elif defined(__GNUC__)
1282 #define SPLREG_OS_VERSIONEXW (const WCHAR[]){'O','S','V','e','r','s','i','o','n','E','x',0}
1283 #else
1284 static const WCHAR SPLREG_OS_VERSIONEXW[] = {'O','S','V','e','r','s','i','o','n','E','x',0};
1285 #endif
1286 #define SPLREG_OS_VERSIONEX WINELIB_NAME_AW(SPLREG_OS_VERSIONEX)
1288 #define SPLREG_DS_PRESENTA "DsPresent"
1289 #ifdef _MSC_VER
1290 #define SPLREG_DS_PRESENTW L"DsPresent"
1291 #elif defined(__GNUC__)
1292 #define SPLREG_DS_PRESENTW (const WCHAR[]){'D','s','P','r','e','s','e','n','t',0}
1293 #else
1294 static const WCHAR SPLREG_DS_PRESENTW[] = {'D','s','P','r','e','s','e','n','t',0};
1295 #endif
1296 #define SPLREG_DS_PRESENT WINELIB_NAME_AW(SPLREG_DS_PRESENT)
1298 #define SPLREG_DS_PRESENT_FOR_USERA "DsPresentForUser"
1299 #ifdef _MSC_VER
1300 #define SPLREG_DS_PRESENT_FOR_USERW L"DsPresentForUser"
1301 #elif defined(__GNUC__)
1302 #define SPLREG_DS_PRESENT_FOR_USERW (const WCHAR[]){'D','s','P','r','e','s','e','n','t','F','o','r','U','s','e','r',0}
1303 #else
1304 static const WCHAR SPLREG_DS_PRESENT_FOR_USERW[] = {'D','s','P','r','e','s','e','n','t','F','o','r','U','s','e','r',0};
1305 #endif
1306 #define SPLREG_DS_PRESENT_FOR_USER WINELIB_NAME_AW(SPLREG_DS_PRESENT_FOR_USER)
1308 #define SPLREG_REMOTE_FAXA "RemoteFax"
1309 #ifdef _MSC_VER
1310 #define SPLREG_REMOTE_FAXW L"RemoteFax"
1311 #elif defined(__GNUC__)
1312 #define SPLREG_REMOTE_FAXW (const WCHAR[]){'R','e','m','o','t','e','F','a','x',0}
1313 #else
1314 static const WCHAR SPLREG_REMOTE_FAXW[] = {'R','e','m','o','t','e','F','a','x',0};
1315 #endif
1316 #define SPLREG_REMOTE_FAX WINELIB_NAME_AW(SPLREG_REMOTE_FAX)
1318 #define SPLREG_RESTART_JOB_ON_POOL_ERRORA "RestartJobOnPoolError"
1319 #ifdef _MSC_VER
1320 #define SPLREG_RESTART_JOB_ON_POOL_ERRORW L"RestartJobOnPoolError"
1321 #elif defined(__GNUC__)
1322 #define SPLREG_RESTART_JOB_ON_POOL_ERRORW (const WCHAR[]){'R','e','s','t','a','r','t','J','o','b','O','n','P','o','o','l','E','r','r','o','r',0}
1323 #else
1324 static const WCHAR SPLREG_RESTART_JOB_ON_POOL_ERRORW[] = {'R','e','s','t','a','r','t','J','o','b','O','n','P','o','o','l','E','r','r','o','r',0};
1325 #endif
1326 #define SPLREG_RESTART_JOB_ON_POOL_ERROR WINELIB_NAME_AW(SPLREG_RESTART_JOB_ON_POOL_ERROR)
1328 #define SPLREG_RESTART_JOB_ON_POOL_ENABLEDA "RestartJobOnPoolEnabled"
1329 #ifdef _MSC_VER
1330 #define SPLREG_RESTART_JOB_ON_POOL_ENABLEDW L"RestartJobOnPoolEnabled"
1331 #elif defined(__GNUC__)
1332 #define SPLREG_RESTART_JOB_ON_POOL_ENABLEDW (const WCHAR[]){'R','e','s','t','a','r','t','J','o','b','O','n','P','o','o','l','E','n','a','b','l','e','d',0}
1333 #else
1334 static const WCHAR SPLREG_RESTART_JOB_ON_POOL_ENABLEDW[] = {'R','e','s','t','a','r','t','J','o','b','O','n','P','o','o','l','E','n','a','b','l','e','d',0};
1335 #endif
1336 #define SPLREG_RESTART_JOB_ON_POOL_ENABLED WINELIB_NAME_AW(SPLREG_RESTART_JOB_ON_POOL_ENABLED)
1338 #define SPLREG_DNS_MACHINE_NAMEA "DNSMachineName"
1339 #ifdef _MSC_VER
1340 #define SPLREG_DNS_MACHINE_NAMEW L"DNSMachineName"
1341 #elif defined(__GNUC__)
1342 #define SPLREG_DNS_MACHINE_NAMEW (const WCHAR[]){'D','N','S','M','a','c','h','i','n','e','N','a','m','e',0}
1343 #else
1344 static const WCHAR SPLREG_DNS_MACHINE_NAMEW[] = {'D','N','S','M','a','c','h','i','n','e','N','a','m','e',0};
1345 #endif
1346 #define SPLREG_DNS_MACHINE_NAME WINELIB_NAME_AW(SPLREG_DNS_MACHINE_NAME)
1348 #define SPLREG_ALLOW_USER_MANAGEFORMSA "AllowUserManageForms"
1349 #ifdef _MSC_VER
1350 #define SPLREG_ALLOW_USER_MANAGEFORMSW L"AllowUserManageForms"
1351 #elif defined(__GNUC__)
1352 #define SPLREG_ALLOW_USER_MANAGEFORMSW (const WCHAR[]){'A','l','l','o','w','U','s','e','r','M','a','n','a','g','e','F','o','r','m','s',0}
1353 #else
1354 static const WCHAR SPLREG_ALLOW_USER_MANAGEFORMSW[] = {'A','l','l','o','w','U','s','e','r','M','a','n','a','g','e','F','o','r','m','s',0};
1355 #endif
1356 #define SPLREG_ALLOW_USER_MANAGEFORMS WINELIB_NAME_AW(SPLREG_ALLOW_USER_MANAGEFORMS)
1358 #define SPLREG_WEBSHAREMGMTA "WebShareMgmt"
1359 #ifdef _MSC_VER
1360 #define SPLREG_WEBSHAREMGMTW L"WebShareMgmt"
1361 #elif defined(__GNUC__)
1362 #define SPLREG_WEBSHAREMGMTW (const WCHAR[]){'W','e','b','S','h','a','r','e','M','g','m','t',0}
1363 #else
1364 static const WCHAR SPLREG_WEBSHAREMGMTW[] = {'W','e','b','S','h','a','r','e','M','g','m','t',0};
1365 #endif
1366 #define SPLREG_WEBSHAREMGMT WINELIB_NAME_AW(SPLREG_WEBSHAREMGMT)
1368 #define SPLREG_PRINT_DRIVER_ISOLATION_GROUPSA "PrintDriverIsolationGroups"
1369 #ifdef _MSC_VER
1370 #define SPLREG_PRINT_DRIVER_ISOLATION_GROUPSW L"PrintDriverIsolationGroups"
1371 #elif defined(__GNUC__)
1372 #define SPLREG_PRINT_DRIVER_ISOLATION_GROUPSW (const WCHAR[]){'P','r','i','n','t','D','r','i','v','e','r','I','s','o','l','a','t','i','o','n','G','r','o','u','p','s',0}
1373 #else
1374 static const WCHAR SPLREG_PRINT_DRIVER_ISOLATION_GROUPSW[] = {'P','r','i','n','t','D','r','i','v','e','r','I','s','o','l','a','t','i','o','n','G','r','o','u','p','s',0};
1375 #endif
1376 #define SPLREG_PRINT_DRIVER_ISOLATION_GROUPS WINELIB_NAME_AW(SPLREG_PRINT_DRIVER_ISOLATION_GROUPS)
1378 #define SPLREG_PRINT_DRIVER_ISOLATION_TIME_BEFORE_RECYCLEA "PrintDriverIsolationTimeBeforeRecycle"
1379 #ifdef _MSC_VER
1380 #define SPLREG_PRINT_DRIVER_ISOLATION_TIME_BEFORE_RECYCLEW L"PrintDriverIsolationTimeBeforeRecycle"
1381 #elif defined(__GNUC__)
1382 #define SPLREG_PRINT_DRIVER_ISOLATION_TIME_BEFORE_RECYCLEW (const WCHAR[]){'P','r','i','n','t','D','r','i','v','e','r','I','s','o','l','a','t','i','o','n','T','i','m','e','B','e','f','o','r','e','R','e','c','y','c','l','e',0}
1383 #else
1384 static const WCHAR SPLREG_PRINT_DRIVER_ISOLATION_TIME_BEFORE_RECYCLEW[] = {'P','r','i','n','t','D','r','i','v','e','r','I','s','o','l','a','t','i','o','n','T','i','m','e','B','e','f','o','r','e','R','e','c','y','c','l','e',0};
1385 #endif
1386 #define SPLREG_PRINT_DRIVER_ISOLATION_TIME_BEFORE_RECYCLE WINELIB_NAME_AW(SPLREG_PRINT_DRIVER_ISOLATION_TIME_BEFORE_RECYCLE)
1388 #define SPLREG_PRINT_DRIVER_ISOLATION_MAX_OBJECTS_BEFORE_RECYCLEA "PrintDriverIsolationMaxobjsBeforeRecycle"
1389 #ifdef _MSC_VER
1390 #define SPLREG_PRINT_DRIVER_ISOLATION_MAX_OBJECTS_BEFORE_RECYCLEW L"PrintDriverIsolationMaxobjsBeforeRecycle"
1391 #elif defined(__GNUC__)
1392 #define SPLREG_PRINT_DRIVER_ISOLATION_MAX_OBJECTS_BEFORE_RECYCLEW (const WCHAR[]){'P','r','i','n','t','D','r','i','v','e','r','I','s','o','l','a','t','i','o','n','M','a','x','o','b','j','s','B','e','f','o','r','e','R','e','c','y','c','l','e',0}
1393 #else
1394 static const WCHAR SPLREG_PRINT_DRIVER_ISOLATION_MAX_OBJECTS_BEFORE_RECYCLEW[] = {'P','r','i','n','t','D','r','i','v','e','r','I','s','o','l','a','t','i','o','n','M','a','x','o','b','j','s','B','e','f','o','r','e','R','e','c','y','c','l','e',0};
1395 #endif
1396 #define SPLREG_PRINT_DRIVER_ISOLATION_MAX_OBJECTS_BEFORE_RECYCLE WINELIB_NAME_AW(SPLREG_PRINT_DRIVER_ISOLATION_MAX_OBJECTS_BEFORE_RECYCLE)
1398 #define SPLREG_PRINT_DRIVER_ISOLATION_IDLE_TIMEOUTA "PrintDriverIsolationIdleTimeout"
1399 #ifdef _MSC_VER
1400 #define SPLREG_PRINT_DRIVER_ISOLATION_IDLE_TIMEOUTW L"PrintDriverIsolationIdleTimeout"
1401 #elif defined(__GNUC__)
1402 #define SPLREG_PRINT_DRIVER_ISOLATION_IDLE_TIMEOUTW (const WCHAR[]){'P','r','i','n','t','D','r','i','v','e','r','I','s','o','l','a','t','i','o','n','I','d','l','e','T','i','m','e','o','u','t',0}
1403 #else
1404 static const WCHAR SPLREG_PRINT_DRIVER_ISOLATION_IDLE_TIMEOUTW[] = {'P','r','i','n','t','D','r','i','v','e','r','I','s','o','l','a','t','i','o','n','I','d','l','e','T','i','m','e','o','u','t',0};
1405 #endif
1406 #define SPLREG_PRINT_DRIVER_ISOLATION_IDLE_TIMEOUT WINELIB_NAME_AW(SPLREG_PRINT_DRIVER_ISOLATION_IDLE_TIMEOUT)
1408 #define SPLREG_PRINT_DRIVER_ISOLATION_EXECUTION_POLICYA "PrintDriverIsolationExecutionPolicy"
1409 #ifdef _MSC_VER
1410 #define SPLREG_PRINT_DRIVER_ISOLATION_EXECUTION_POLICYW L"PrintDriverIsolationExecutionPolicy"
1411 #elif defined(__GNUC__)
1412 #define SPLREG_PRINT_DRIVER_ISOLATION_EXECUTION_POLICYW (const WCHAR[]){'P','r','i','n','t','D','r','i','v','e','r','I','s','o','l','a','t','i','o','n','E','x','e','c','u','t','i','o','n','P','o','l','i','c','y',0}
1413 #else
1414 static const WCHAR SPLREG_PRINT_DRIVER_ISOLATION_EXECUTION_POLICYW[] = {'P','r','i','n','t','D','r','i','v','e','r','I','s','o','l','a','t','i','o','n','E','x','e','c','u','t','i','o','n','P','o','l','i','c','y',0};
1415 #endif
1416 #define SPLREG_PRINT_DRIVER_ISOLATION_EXECUTION_POLICY WINELIB_NAME_AW(SPLREG_PRINT_DRIVER_ISOLATION_EXECUTION_POLICY)
1418 #define SPLREG_PRINT_DRIVER_ISOLATION_OVERRIDE_POLICYA "PrintDriverIsolationOverrideCompat"
1419 #ifdef _MSC_VER
1420 #define SPLREG_PRINT_DRIVER_ISOLATION_OVERRIDE_POLICYW L"PrintDriverIsolationOverrideCompat"
1421 #elif defined(__GNUC__)
1422 #define SPLREG_PRINT_DRIVER_ISOLATION_OVERRIDE_POLICYW (const WCHAR[]){'P','r','i','n','t','D','r','i','v','e','r','I','s','o','l','a','t','i','o','n','O','v','e','r','r','i','d','e','C','o','m','p','a','t',0}
1423 #else
1424 static const WCHAR SPLREG_PRINT_DRIVER_ISOLATION_OVERRIDE_POLICYW[] = {'P','r','i','n','t','D','r','i','v','e','r','I','s','o','l','a','t','i','o','n','O','v','e','r','r','i','d','e','C','o','m','p','a','t',0};
1425 #endif
1426 #define SPLREG_PRINT_DRIVER_ISOLATION_OVERRIDE_POLICY WINELIB_NAME_AW(SPLREG_PRINT_DRIVER_ISOLATION_OVERRIDE_POLICY)
1428 /* DECLARATIONS */
1429 INT WINAPI DeviceCapabilitiesA(LPCSTR pDevice,LPCSTR pPort,WORD fwCapability,
1430 LPSTR pOutput, LPDEVMODEA pDevMode);
1431 INT WINAPI DeviceCapabilitiesW(LPCWSTR pDevice, LPCWSTR pPort,
1432 WORD fwCapability, LPWSTR pOutput,
1433 const DEVMODEW *pDevMode);
1435 #define DeviceCapabilities WINELIB_NAME_AW(DeviceCapabilities)
1437 LONG WINAPI DocumentPropertiesA(HWND hWnd,HANDLE hPrinter,
1438 LPSTR pDeviceName, LPDEVMODEA pDevModeOutput,
1439 LPDEVMODEA pDevModeInput,DWORD fMode );
1440 LONG WINAPI DocumentPropertiesW(HWND hWnd, HANDLE hPrinter,
1441 LPWSTR pDeviceName,
1442 LPDEVMODEW pDevModeOutput,
1443 LPDEVMODEW pDevModeInput, DWORD fMode);
1445 #define DocumentProperties WINELIB_NAME_AW(DocumentProperties)
1447 BOOL WINAPI OpenPrinterA(LPSTR lpPrinterName,HANDLE *phPrinter,
1448 LPPRINTER_DEFAULTSA pDefault);
1449 BOOL WINAPI OpenPrinterW(LPWSTR lpPrinterName,HANDLE *phPrinter,
1450 LPPRINTER_DEFAULTSW pDefault);
1452 #define OpenPrinter WINELIB_NAME_AW(OpenPrinter)
1454 BOOL WINAPI ResetPrinterA(HANDLE hPrinter, LPPRINTER_DEFAULTSA pDefault);
1455 BOOL WINAPI ResetPrinterW(HANDLE hPrinter, LPPRINTER_DEFAULTSW pDefault);
1456 #define ResetPrinter WINELIB_NAME_AW(ResetPrinter)
1458 BOOL WINAPI ClosePrinter (HANDLE phPrinter);
1460 BOOL WINAPI EnumJobsA(HANDLE hPrinter, DWORD FirstJob, DWORD NoJobs,
1461 DWORD Level, LPBYTE pJob, DWORD cbBuf, LPDWORD pcbNeeded,
1462 LPDWORD pcReturned);
1463 BOOL WINAPI EnumJobsW(HANDLE hPrinter, DWORD FirstJob, DWORD NoJobs,
1464 DWORD Level, LPBYTE pJob, DWORD cbBuf, LPDWORD pcbNeeded,
1465 LPDWORD pcReturned);
1466 #define EnumJobs WINELIB_NAME_AW(EnumJobs)
1468 BOOL WINAPI EnumPrintersA(DWORD dwType, LPSTR lpszName,
1469 DWORD dwLevel, LPBYTE lpbPrinters,
1470 DWORD cbBuf, LPDWORD lpdwNeeded,
1471 LPDWORD lpdwReturned);
1472 BOOL WINAPI EnumPrintersW(DWORD dwType, LPWSTR lpszName,
1473 DWORD dwLevel, LPBYTE lpbPrinters,
1474 DWORD cbBuf, LPDWORD lpdwNeeded,
1475 LPDWORD lpdwReturned);
1476 #define EnumPrinters WINELIB_NAME_AW(EnumPrinters)
1478 BOOL WINAPI PrinterProperties(HWND hWnd, HANDLE hPrinter);
1480 BOOL WINAPI GetPrinterDriverDirectoryA(LPSTR,LPSTR,DWORD,LPBYTE,DWORD,LPDWORD);
1481 BOOL WINAPI GetPrinterDriverDirectoryW(LPWSTR,LPWSTR,DWORD,LPBYTE,DWORD,LPDWORD);
1482 #define GetPrinterDriverDirectory WINELIB_NAME_AW(GetPrinterDriverDirectory)
1484 BOOL WINAPI GetPrinterDriverA(HANDLE hPrinter, LPSTR pEnvironment,
1485 DWORD Level, LPBYTE pDriverInfo,
1486 DWORD cbBuf, LPDWORD pcbNeeded);
1487 BOOL WINAPI GetPrinterDriverW(HANDLE hPrinter, LPWSTR pEnvironment,
1488 DWORD Level, LPBYTE pDriverInfo,
1489 DWORD cbBuf, LPDWORD pcbNeeded);
1490 #define GetPrinterDriver WINELIB_NAME_AW(GetPrinterDriver)
1492 BOOL WINAPI SetJobA(HANDLE hPrinter, DWORD JobID, DWORD Level, LPBYTE pJob,
1493 DWORD Command);
1494 BOOL WINAPI SetJobW(HANDLE hPrinter, DWORD JobID, DWORD Level, LPBYTE pJob,
1495 DWORD Command);
1496 #define SetJob WINELIB_NAME_AW(SetJob)
1498 BOOL WINAPI GetJobA(HANDLE hPrinter, DWORD JobID, DWORD Level, LPBYTE pJob,
1499 DWORD cbBuf, LPDWORD pcbNeeded);
1500 BOOL WINAPI GetJobW(HANDLE hPrinter, DWORD JobID, DWORD Level, LPBYTE pJob,
1501 DWORD cbBuf, LPDWORD pcbNeeded);
1502 #define GetJob WINELIB_NAME_AW(GetJob)
1504 HANDLE WINAPI AddPrinterA(LPSTR pName, DWORD Level, LPBYTE pPrinter);
1505 HANDLE WINAPI AddPrinterW(LPWSTR pName, DWORD Level, LPBYTE pPrinter);
1506 #define AddPrinter WINELIB_NAME_AW(AddPrinter)
1508 BOOL WINAPI DeletePrinter(HANDLE hPrinter);
1510 BOOL WINAPI SetPrinterA(HANDLE hPrinter, DWORD Level, LPBYTE pPrinter,
1511 DWORD Command);
1512 BOOL WINAPI SetPrinterW(HANDLE hPrinter, DWORD Level, LPBYTE pPrinter,
1513 DWORD Command);
1514 #define SetPrinter WINELIB_NAME_AW(SetPrinter)
1516 BOOL WINAPI GetPrinterA(HANDLE hPrinter, DWORD Level, LPBYTE pPrinter,
1517 DWORD cbBuf, LPDWORD pcbNeeded);
1518 BOOL WINAPI GetPrinterW(HANDLE hPrinter, DWORD Level, LPBYTE pPrinter,
1519 DWORD cbBuf, LPDWORD pcbNeeded);
1520 #define GetPrinter WINELIB_NAME_AW(GetPrinter)
1522 BOOL WINAPI AddPrinterDriverA(LPSTR pName, DWORD Level, LPBYTE pDriverInfo);
1523 BOOL WINAPI AddPrinterDriverW(LPWSTR pName, DWORD Level, LPBYTE pDriverInfo);
1524 #define AddPrinterDriver WINELIB_NAME_AW(AddPrinterDriver)
1526 BOOL WINAPI AddPrinterDriverExA(LPSTR pName, DWORD Level, LPBYTE pDriverInfo,
1527 DWORD dwFileCopyFlags);
1528 BOOL WINAPI AddPrinterDriverExW(LPWSTR pName, DWORD Level, LPBYTE pDriverInfo,
1529 DWORD dwFileCopyFlags);
1530 #define AddPrinterDriverEx WINELIB_NAME_AW(AddPrinterDriverEx)
1532 BOOL WINAPI EnumPrinterDriversA(LPSTR pName, LPSTR pEnvironment, DWORD Level,
1533 LPBYTE pDriverInfo, DWORD cbBuf,
1534 LPDWORD pcbNeeded, LPDWORD pcbReturned);
1535 BOOL WINAPI EnumPrinterDriversW(LPWSTR pName, LPWSTR pEnvironment, DWORD Level,
1536 LPBYTE pDriverInfo, DWORD cbBuf,
1537 LPDWORD pcbNeeded, LPDWORD pcbReturned);
1538 #define EnumPrinterDrivers WINELIB_NAME_AW(EnumPrinterDrivers)
1540 BOOL WINAPI GetDefaultPrinterA(LPSTR pName, LPDWORD pcbNameSize);
1541 BOOL WINAPI GetDefaultPrinterW(LPWSTR pName, LPDWORD pcbNameSize);
1542 #define GetDefaultPrinter WINELIB_NAME_AW(GetDefaultPrinter)
1544 BOOL WINAPI DeletePrinterDriverA(LPSTR pName, LPSTR pEnvironment,
1545 LPSTR pDriverName);
1546 BOOL WINAPI DeletePrinterDriverW(LPWSTR pName, LPWSTR pEnvironment,
1547 LPWSTR pDriverName);
1548 #define DeletePrinterDriver WINELIB_NAME_AW(DeletePrinterDriver)
1550 BOOL WINAPI DeletePrinterDriverExA(LPSTR pName, LPSTR pEnvironment,
1551 LPSTR pDriverName, DWORD dwDeleteFlag, DWORD dwVersionFlag);
1552 BOOL WINAPI DeletePrinterDriverExW(LPWSTR pName, LPWSTR pEnvironment,
1553 LPWSTR pDriverName, DWORD dwDeleteFlag, DWORD dwVersionFlag);
1554 #define DeletePrinterDriverEx WINELIB_NAME_AW(DeletePrinterDriverEx)
1556 BOOL WINAPI AddPrintProcessorA(LPSTR pName, LPSTR pEnvironment,
1557 LPSTR pPathName, LPSTR pPrintProcessorName);
1558 BOOL WINAPI AddPrintProcessorW(LPWSTR pName, LPWSTR pEnvironment,
1559 LPWSTR pPathName, LPWSTR pPrintProcessorName);
1560 #define AddPrintProcessor WINELIB_NAME_AW(AddPrintProcessor)
1562 BOOL WINAPI EnumPrintProcessorsA(LPSTR pName, LPSTR pEnvironment,
1563 DWORD Level, LPBYTE pPrintProcessorInfo,
1564 DWORD cbBuf, LPDWORD pcbNeeded,
1565 LPDWORD pcbReturned);
1566 BOOL WINAPI EnumPrintProcessorsW(LPWSTR pName, LPWSTR pEnvironment,
1567 DWORD Level, LPBYTE pPrintProcessorInfo,
1568 DWORD cbBuf, LPDWORD pcbNeeded,
1569 LPDWORD pcbReturned);
1570 #define EnumPrintProcessors WINELIB_NAME_AW(EnumPrintProcessors)
1572 BOOL WINAPI GetPrintProcessorDirectoryA(LPSTR pName, LPSTR pEnvironment,
1573 DWORD Level,
1574 LPBYTE pPrintProcessorInfo,
1575 DWORD cbBuf, LPDWORD pcbNeeded);
1577 BOOL WINAPI GetPrintProcessorDirectoryW(LPWSTR pName, LPWSTR pEnvironment,
1578 DWORD Level,
1579 LPBYTE pPrintProcessorInfo,
1580 DWORD cbBuf, LPDWORD pcbNeeded);
1581 #define GetPrintProcessorDirectory WINELIB_NAME_AW(GetPrintProcessorDirectory)
1583 BOOL WINAPI EnumPrintProcessorDatatypesA(LPSTR pName,
1584 LPSTR pPrintProcessorName,
1585 DWORD Level, LPBYTE pDatatypes,
1586 DWORD cbBuf, LPDWORD pcbNeeded,
1587 LPDWORD pcbReturned);
1588 BOOL WINAPI EnumPrintProcessorDatatypesW(LPWSTR pName,
1589 LPWSTR pPrintProcessorName,
1590 DWORD Level, LPBYTE pDatatypes,
1591 DWORD cbBuf, LPDWORD pcbNeeded,
1592 LPDWORD pcbReturned);
1593 #define EnumPrintProcessorDatatypes WINELIB_NAME_AW(EnumPrintProcessorDatatypes)
1595 BOOL WINAPI DeletePrintProcessorA(LPSTR pName, LPSTR pEnvironment,
1596 LPSTR pPrintProcessorName);
1597 BOOL WINAPI DeletePrintProcessorW(LPWSTR pName, LPWSTR pEnvironment,
1598 LPWSTR pPrintProcessorName);
1599 #define DeletePrintProcessor WINELIB_NAME_AW(DeletePrintProcessor)
1601 DWORD WINAPI StartDocPrinterA(HANDLE hPrinter, DWORD Level, LPBYTE pDocInfo);
1602 DWORD WINAPI StartDocPrinterW(HANDLE hPrinter, DWORD Level, LPBYTE pDocInfo);
1603 #define StartDocPrinter WINELIB_NAME_AW(StartDocPrinter)
1605 BOOL WINAPI StartPagePrinter(HANDLE hPrinter);
1606 BOOL WINAPI WritePrinter(HANDLE hPrinter, LPVOID pBuf, DWORD cbBuf,
1607 LPDWORD pcWritten);
1608 BOOL WINAPI EndPagePrinter(HANDLE hPrinter);
1609 BOOL WINAPI AbortPrinter(HANDLE hPrinter);
1610 BOOL WINAPI ReadPrinter(HANDLE hPrinter, LPVOID pBuf, DWORD cbBuf,
1611 LPDWORD pNoBytesRead);
1612 BOOL WINAPI EndDocPrinter(HANDLE hPrinter);
1614 BOOL WINAPI AddJobA(HANDLE hPrinter, DWORD Level, LPBYTE pData, DWORD cbBuf,
1615 LPDWORD pcbNeeded);
1616 BOOL WINAPI AddJobW(HANDLE hPrinter, DWORD Level, LPBYTE pData, DWORD cbBuf,
1617 LPDWORD pcbNeeded);
1618 #define AddJob WINELIB_NAME_AW(AddJob)
1620 BOOL WINAPI ScheduleJob(HANDLE hPrinter, DWORD JobID);
1622 LONG WINAPI AdvancedDocumentPropertiesA(HWND hWnd, HANDLE hPrinter,
1623 LPSTR pDeviceName,
1624 PDEVMODEA pDevModeOutput,
1625 PDEVMODEA pDevModeInput);
1626 LONG WINAPI AdvancedDocumentPropertiesW(HWND hWnd, HANDLE hPrinter,
1627 LPWSTR pDeviceName,
1628 PDEVMODEW pDevModeOutput,
1629 PDEVMODEW pDevModeInput);
1630 #define AdvancedDocumentProperties WINELIB_NAME_AW(AdvancedDocumentProperties)
1632 DWORD WINAPI GetPrinterDataA(HANDLE hPrinter, LPSTR pValueName, LPDWORD pType,
1633 LPBYTE pData, DWORD nSize, LPDWORD pcbNeeded);
1634 DWORD WINAPI GetPrinterDataW(HANDLE hPrinter, LPWSTR pValueName, LPDWORD pType,
1635 LPBYTE pData, DWORD nSize, LPDWORD pcbNeeded);
1636 #define GetPrinterData WINELIB_NAME_AW(GetPrinterData)
1638 DWORD WINAPI GetPrinterDataExA(HANDLE hPrinter, LPCSTR pKeyName,
1639 LPCSTR pValueName, LPDWORD pType,
1640 LPBYTE pData, DWORD nSize, LPDWORD pcbNeeded);
1641 DWORD WINAPI GetPrinterDataExW(HANDLE hPrinter, LPCWSTR pKeyName,
1642 LPCWSTR pValueName, LPDWORD pType,
1643 LPBYTE pData, DWORD nSize, LPDWORD pcbNeeded);
1644 #define GetPrinterDataEx WINELIB_NAME_AW(GetPrinterDataEx)
1646 DWORD WINAPI DeletePrinterDataExA(HANDLE hPrinter, LPCSTR pKeyName,
1647 LPCSTR pValueName);
1648 DWORD WINAPI DeletePrinterDataExW(HANDLE hPrinter, LPCWSTR pKeyName,
1649 LPCWSTR pValueName);
1650 #define DeletePrinterDataEx WINELIB_NAME_AW(DeletePrinterDataEx)
1652 DWORD WINAPI SetPrinterDataA(HANDLE hPrinter, LPSTR pValueName, DWORD Type,
1653 LPBYTE pData, DWORD cbData);
1654 DWORD WINAPI SetPrinterDataW(HANDLE hPrinter, LPWSTR pValueName, DWORD Type,
1655 LPBYTE pData, DWORD cbData);
1656 #define SetPrinterData WINELIB_NAME_AW(SetPrinterData)
1658 DWORD WINAPI SetPrinterDataExA(HANDLE hPrinter, LPCSTR pKeyName,
1659 LPCSTR pValueName, DWORD Type,
1660 LPBYTE pData, DWORD cbData);
1661 DWORD WINAPI SetPrinterDataExW(HANDLE hPrinter, LPCWSTR pKeyName,
1662 LPCWSTR pValueName, DWORD Type,
1663 LPBYTE pData, DWORD cbData);
1664 #define SetPrinterDataEx WINELIB_NAME_AW(SetPrinterDataEx)
1666 DWORD WINAPI WaitForPrinterChange(HANDLE hPrinter, DWORD Flags);
1667 HANDLE WINAPI FindFirstPrinterChangeNotification(HANDLE hPrinter,
1668 DWORD fdwFlags,
1669 DWORD fdwOptions,
1670 LPVOID pPrinterNotifyOptions);
1671 BOOL WINAPI FindNextPrinterChangeNotification(HANDLE hChange,
1672 PDWORD pdwChange,
1673 LPVOID pvReserved,
1674 LPVOID *ppPrinterNotifyInfo);
1675 BOOL WINAPI FreePrinterNotifyInfo(PPRINTER_NOTIFY_INFO pPrinterNotifyInfo);
1676 BOOL WINAPI FindClosePrinterChangeNotification(HANDLE hChange);
1678 DWORD WINAPI PrinterMessageBoxA(HANDLE hPrinter, DWORD Error, HWND hWnd,
1679 LPSTR pText, LPSTR pCaption, DWORD dwType);
1680 DWORD WINAPI PrinterMessageBoxW(HANDLE hPrinter, DWORD Error, HWND hWnd,
1681 LPWSTR pText, LPWSTR pCaption, DWORD dwType);
1682 #define PrinterMessageBox WINELIB_NAME_AW(PrinterMessageBox)
1684 BOOL WINAPI AddFormA(HANDLE hPrinter, DWORD Level, LPBYTE pForm);
1685 BOOL WINAPI AddFormW(HANDLE hPrinter, DWORD Level, LPBYTE pForm);
1686 #define AddForm WINELIB_NAME_AW(AddForm)
1688 BOOL WINAPI DeleteFormA(HANDLE hPrinter, LPSTR pFormName);
1689 BOOL WINAPI DeleteFormW(HANDLE hPrinter, LPWSTR pFormName);
1690 #define DeleteForm WINELIB_NAME_AW(DeleteForm)
1692 BOOL WINAPI GetFormA(HANDLE hPrinter, LPSTR pFormName, DWORD Level,
1693 LPBYTE pForm, DWORD cbBuf, LPDWORD pcbNeeded);
1694 BOOL WINAPI GetFormW(HANDLE hPrinter, LPWSTR pFormName, DWORD Level,
1695 LPBYTE pForm, DWORD cbBuf, LPDWORD pcbNeeded);
1696 #define GetForm WINELIB_NAME_AW(GetForm)
1698 BOOL WINAPI SetFormA(HANDLE hPrinter, LPSTR pFormName, DWORD Level,
1699 LPBYTE pForm);
1700 BOOL WINAPI SetFormW(HANDLE hPrinter, LPWSTR pFormName, DWORD Level,
1701 LPBYTE pForm);
1702 #define SetForm WINELIB_NAME_AW(SetForm)
1704 BOOL WINAPI EnumFormsA(HANDLE hPrinter, DWORD Level, LPBYTE pForm, DWORD cbBuf,
1705 LPDWORD pcbNeeded, LPDWORD pcReturned);
1706 BOOL WINAPI EnumFormsW(HANDLE hPrinter, DWORD Level, LPBYTE pForm, DWORD cbBuf,
1707 LPDWORD pcbNeeded, LPDWORD pcReturned);
1708 #define EnumForms WINELIB_NAME_AW(EnumForms)
1710 BOOL WINAPI EnumMonitorsA(LPSTR pName, DWORD Level, LPBYTE pMonitors,
1711 DWORD cbBuf, LPDWORD pcbNeeded, LPDWORD pcReturned);
1712 BOOL WINAPI EnumMonitorsW(LPWSTR pName, DWORD Level, LPBYTE pMonitors,
1713 DWORD cbBuf, LPDWORD pcbNeeded, LPDWORD pcReturned);
1714 #define EnumMonitors WINELIB_NAME_AW(EnumMonitors)
1716 DWORD WINAPI EnumPrinterDataA( HANDLE hPrinter, DWORD dwIndex, LPSTR pValueName,
1717 DWORD cbValueName, LPDWORD pcbValueName, LPDWORD pType, LPBYTE pData,
1718 DWORD cbData, LPDWORD pcbData );
1719 DWORD WINAPI EnumPrinterDataW( HANDLE hPrinter, DWORD dwIndex, LPWSTR pValueName,
1720 DWORD cbValueName, LPDWORD pcbValueName, LPDWORD pType, LPBYTE pData,
1721 DWORD cbData, LPDWORD pcbData );
1722 #define EnumPrinterData WINELIB_NAME_AW(EnumPrinterData)
1724 BOOL WINAPI AddMonitorA(LPSTR pName, DWORD Level, LPBYTE pMonitors);
1725 BOOL WINAPI AddMonitorW(LPWSTR pName, DWORD Level, LPBYTE pMonitors);
1726 #define AddMonitor WINELIB_NAME_AW(AddMonitor)
1728 BOOL WINAPI DeleteMonitorA(LPSTR pName, LPSTR pEnvironment,
1729 LPSTR pMonitorName);
1730 BOOL WINAPI DeleteMonitorW(LPWSTR pName, LPWSTR pEnvironment,
1731 LPWSTR pMonitorName);
1732 #define DeleteMonitor WINELIB_NAME_AW(DeleteMonitor)
1734 BOOL WINAPI EnumPortsA(LPSTR pName, DWORD Level, LPBYTE pPorts,
1735 DWORD cbBuf, LPDWORD pcbNeeded, LPDWORD pcReturned);
1736 BOOL WINAPI EnumPortsW(LPWSTR pName, DWORD Level, LPBYTE pPorts,
1737 DWORD cbBuf, LPDWORD pcbNeeded, LPDWORD pcReturned);
1738 #define EnumPorts WINELIB_NAME_AW(EnumPorts)
1740 BOOL WINAPI AddPortA(LPSTR pName, HWND hWnd, LPSTR pMonitorName);
1741 BOOL WINAPI AddPortW(LPWSTR pName, HWND hWnd, LPWSTR pMonitorName);
1742 #define AddPort WINELIB_NAME_AW(AddPort)
1744 BOOL WINAPI AddPortExA(LPSTR, DWORD, LPBYTE, LPSTR);
1745 BOOL WINAPI AddPortExW(LPWSTR, DWORD, LPBYTE, LPWSTR);
1746 #define AddPortEx WINELIB_NAME_AW(AddPortEx)
1748 BOOL WINAPI ConfigurePortA(LPSTR pName, HWND hWnd, LPSTR pPortName);
1749 BOOL WINAPI ConfigurePortW(LPWSTR pName, HWND hWnd, LPWSTR pPortName);
1750 #define ConfigurePort WINELIB_NAME_AW(ConfigurePort)
1752 BOOL WINAPI DeletePortA(LPSTR pName, HWND hWnd, LPSTR pPortName);
1753 BOOL WINAPI DeletePortW(LPWSTR pName, HWND hWnd, LPWSTR pPortName);
1754 #define DeletePort WINELIB_NAME_AW(DeletePort)
1756 BOOL WINAPI SetPortA(LPSTR pName, LPSTR pPortName, DWORD dwLevel,
1757 LPBYTE pPortInfo);
1758 BOOL WINAPI SetPortW(LPWSTR pName, LPWSTR pPortName, DWORD dwLevel,
1759 LPBYTE pPortInfo);
1760 #define SetPort WINELIB_NAME_AW(SetPort)
1762 BOOL WINAPI AddPrinterConnectionA(LPSTR pName);
1763 BOOL WINAPI AddPrinterConnectionW(LPWSTR pName);
1764 #define AddPrinterConnection WINELIB_NAME_AW(AddPrinterConnection)
1766 BOOL WINAPI DeletePrinterConnectionA(LPSTR pName);
1767 BOOL WINAPI DeletePrinterConnectionW(LPWSTR pName);
1768 #define DeletePrinterConnection WINELIB_NAME_AW(DeletePrinterConnection)
1770 HANDLE WINAPI ConnectToPrinterDlg(HWND hwnd, DWORD Flags);
1772 BOOL WINAPI AddPrintProvidorA(LPSTR pName, DWORD Level, LPBYTE pProvidorInfo);
1773 BOOL WINAPI AddPrintProvidorW(LPWSTR pName, DWORD Level, LPBYTE pProvidorInfo);
1774 #define AddPrintProvidor WINELIB_NAME_AW(AddPrintProvidor)
1776 BOOL WINAPI DeletePrintProvidorA(LPSTR pName, LPSTR pEnvironment,
1777 LPSTR pPrintProvidorName);
1778 BOOL WINAPI DeletePrintProvidorW(LPWSTR pName, LPWSTR pEnvironment,
1779 LPWSTR pPrintProvidorName);
1780 #define DeletePrintProvidor WINELIB_NAME_AW(DeletePrintProvidor)
1782 DWORD WINAPI EnumPrinterDataExA(HANDLE hPrinter, LPCSTR pKeyName,
1783 LPBYTE pEnumValues, DWORD cbEnumValues,
1784 LPDWORD pcbEnumValues, LPDWORD pnEnumValues);
1785 DWORD WINAPI EnumPrinterDataExW(HANDLE hPrinter, LPCWSTR pKeyName,
1786 LPBYTE pEnumValues, DWORD cbEnumValues,
1787 LPDWORD pcbEnumValues, LPDWORD pnEnumValues);
1788 #define EnumPrinterDataEx WINELIB_NAME_AW(EnumPrinterDataEx)
1790 LONG WINAPI ExtDeviceMode( HWND hWnd, HANDLE hInst, LPDEVMODEA pDevModeOutput,
1791 LPSTR pDeviceName, LPSTR pPort, LPDEVMODEA pDevModeInput, LPSTR pProfile,
1792 DWORD fMode);
1794 LPSTR WINAPI StartDocDlgA(HANDLE hPrinter, DOCINFOA *doc);
1795 LPWSTR WINAPI StartDocDlgW(HANDLE hPrinter, DOCINFOW *doc);
1796 #define StartDocDlg WINELIB_NAME_AW(StartDocDlg)
1798 BOOL WINAPI XcvDataW(HANDLE hXcv, LPCWSTR pszDataName, PBYTE pInputData,
1799 DWORD cbInputData, PBYTE pOutputData, DWORD cbOutputData,
1800 PDWORD pcbOutputNeeded, PDWORD pdwStatus);
1802 #ifdef __cplusplus
1803 } /* extern "C" */
1804 #endif
1806 #endif /* __WINE_WINSPOOL_H */