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
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
101 #define PRINTER_STATUS_SERVER_OFFLINE 0x02000000
102 #define PRINTER_STATUS_DRIVER_UPDATE_NEEDED 0x04000000
104 #define NO_PRIORITY 0
105 #define MAX_PRIORITY 99
106 #define MIN_PRIORITY 1
107 #define DEF_PRIORITY 1
109 #define JOB_CONTROL_PAUSE 1
110 #define JOB_CONTROL_RESUME 2
111 #define JOB_CONTROL_CANCEL 3
112 #define JOB_CONTROL_RESTART 4
113 #define JOB_CONTROL_DELETE 5
114 #define JOB_CONTROL_SENT_TO_PRINTER 6
115 #define JOB_CONTROL_LAST_PAGE_EJECTED 7
117 #define JOB_STATUS_PAUSED 0x0001
118 #define JOB_STATUS_ERROR 0x0002
119 #define JOB_STATUS_DELETING 0x0004
120 #define JOB_STATUS_SPOOLING 0x0008
121 #define JOB_STATUS_PRINTING 0x0010
122 #define JOB_STATUS_OFFLINE 0x0020
123 #define JOB_STATUS_PAPEROUT 0x0040
124 #define JOB_STATUS_PRINTED 0x0080
125 #define JOB_STATUS_DELETED 0x0100
126 #define JOB_STATUS_BLOCKED_DEVQ 0x0200
127 #define JOB_STATUS_USER_INTERVENTION 0x0400
129 #define JOB_POSITION_UNSPECIFIED 1
132 #define DI_READ_SPOOL_JOB 3
135 #define FORM_BUILTIN 1
136 #define FORM_PRINTER 2
138 #define PORT_TYPE_WRITE 1
139 #define PORT_TYPE_READ 2
140 #define PORT_TYPE_REDIRECTED 4
141 #define PORT_TYPE_NET_ATTACHED 8
143 #define PORT_STATUS_TYPE_ERROR 1
144 #define PORT_STATUS_TYPE_WARNING 2
145 #define PORT_STATUS_TYPE_INFO 3
147 #define PORT_STATUS_OFFLINE 1
148 #define PORT_STATUS_PAPER_JAM 2
149 #define PORT_STATUS_PAPER_OUT 3
150 #define PORT_STATUS_OUTPUT_BIN_FULL 4
151 #define PORT_STATUS_PAPER_PROBLEM 5
152 #define PORT_STATUS_NO_TONER 6
153 #define PORT_STATUS_DOOR_OPEN 7
154 #define PORT_STATUS_USER_INTERVENTION 8
155 #define PORT_STATUS_OUT_OF_MEMORY 9
156 #define PORT_STATUS_TONER_LOW 10
157 #define PORT_STATUS_WARMING_UP 11
158 #define PORT_STATUS_POWER_SAVE 12
160 #define PRINTER_NOTIFY_TYPE 0
161 #define JOB_NOTIFY_TYPE 1
163 #define PRINTER_NOTIFY_FIELD_SERVER_NAME 0x00
164 #define PRINTER_NOTIFY_FIELD_PRINTER_NAME 0x01
165 #define PRINTER_NOTIFY_FIELD_SHARE_NAME 0x02
166 #define PRINTER_NOTIFY_FIELD_PORT_NAME 0x03
167 #define PRINTER_NOTIFY_FIELD_DRIVER_NAME 0x04
168 #define PRINTER_NOTIFY_FIELD_COMMENT 0x05
169 #define PRINTER_NOTIFY_FIELD_LOCATION 0x06
170 #define PRINTER_NOTIFY_FIELD_DEVMODE 0x07
171 #define PRINTER_NOTIFY_FIELD_SEPFILE 0x08
172 #define PRINTER_NOTIFY_FIELD_PRINT_PROCESSOR 0x09
173 #define PRINTER_NOTIFY_FIELD_PARAMETERS 0x0a
174 #define PRINTER_NOTIFY_FIELD_DATATYPE 0x0b
175 #define PRINTER_NOTIFY_FIELD_SECURITY_DESCRIPTOR 0x0c
176 #define PRINTER_NOTIFY_FIELD_ATTRIBUTES 0x0d
177 #define PRINTER_NOTIFY_FIELD_PRIORITY 0x0e
178 #define PRINTER_NOTIFY_FIELD_DEFAULT_PRIORITY 0x0f
179 #define PRINTER_NOTIFY_FIELD_START_TIME 0x10
180 #define PRINTER_NOTIFY_FIELD_UNTIL_TIME 0x11
181 #define PRINTER_NOTIFY_FIELD_STATUS 0x12
182 #define PRINTER_NOTIFY_FIELD_STATUS_STRING 0x13
183 #define PRINTER_NOTIFY_FIELD_CJOBS 0x14
184 #define PRINTER_NOTIFY_FIELD_AVERAGE_PPM 0x15
185 #define PRINTER_NOTIFY_FIELD_TOTAL_PAGES 0x16
186 #define PRINTER_NOTIFY_FIELD_PAGES_PRINTED 0x17
187 #define PRINTER_NOTIFY_FIELD_TOTAL_BYTES 0x18
188 #define PRINTER_NOTIFY_FIELD_BYTES_PRINTED 0x19
190 #define JOB_NOTIFY_FIELD_PRINTER_NAME 0x00
191 #define JOB_NOTIFY_FIELD_MACHINE_NAME 0x01
192 #define JOB_NOTIFY_FIELD_PORT_NAME 0x02
193 #define JOB_NOTIFY_FIELD_USER_NAME 0x03
194 #define JOB_NOTIFY_FIELD_NOTIFY_NAME 0x04
195 #define JOB_NOTIFY_FIELD_DATATYPE 0x05
196 #define JOB_NOTIFY_FIELD_PRINT_PROCESSOR 0x06
197 #define JOB_NOTIFY_FIELD_PARAMETERS 0x07
198 #define JOB_NOTIFY_FIELD_DRIVER_NAME 0x08
199 #define JOB_NOTIFY_FIELD_DEVMODE 0x09
200 #define JOB_NOTIFY_FIELD_STATUS 0x0a
201 #define JOB_NOTIFY_FIELD_STATUS_STRING 0x0b
202 #define JOB_NOTIFY_FIELD_SECURITY_DESCRIPTOR 0x0c
203 #define JOB_NOTIFY_FIELD_DOCUMENT 0x0d
204 #define JOB_NOTIFY_FIELD_PRIORITY 0x0e
205 #define JOB_NOTIFY_FIELD_POSITION 0x0f
206 #define JOB_NOTIFY_FIELD_SUBMITTED 0x10
207 #define JOB_NOTIFY_FIELD_START_TIME 0x11
208 #define JOB_NOTIFY_FIELD_UNTIL_TIME 0x12
209 #define JOB_NOTIFY_FIELD_TIME 0x13
210 #define JOB_NOTIFY_FIELD_TOTAL_PAGES 0x14
211 #define JOB_NOTIFY_FIELD_PAGES_PRINTED 0x15
212 #define JOB_NOTIFY_FIELD_TOTAL_BYTES 0x16
213 #define JOB_NOTIFY_FIELD_BYTES_PRINTED 0x17
215 #define PRINTER_NOTIFY_OPTIONS_REFRESH 1
216 #define PRINTER_NOTIFY_INFO_DISCARDED 1
218 #define PRINTER_CHANGE_ADD_PRINTER 0x00000001
219 #define PRINTER_CHANGE_SET_PRINTER 0x00000002
220 #define PRINTER_CHANGE_DELETE_PRINTER 0x00000004
221 #define PRINTER_CHANGE_FAILED_CONNECTION_PRINTER 0x00000008
222 #define PRINTER_CHANGE_PRINTER 0x000000ff
223 #define PRINTER_CHANGE_ADD_JOB 0x00000100
224 #define PRINTER_CHANGE_SET_JOB 0x00000200
225 #define PRINTER_CHANGE_DELETE_JOB 0x00000400
226 #define PRINTER_CHANGE_WRITE_JOB 0x00000800
227 #define PRINTER_CHANGE_JOB 0x0000ff00
228 #define PRINTER_CHANGE_ADD_FORM 0x00010000
229 #define PRINTER_CHANGE_SET_FORM 0x00020000
230 #define PRINTER_CHANGE_DELETE_FORM 0x00040000
231 #define PRINTER_CHANGE_FORM 0x00070000
232 #define PRINTER_CHANGE_ADD_PORT 0x00100000
233 #define PRINTER_CHANGE_CONFIGURE_PORT 0x00200000
234 #define PRINTER_CHANGE_DELETE_PORT 0x00400000
235 #define PRINTER_CHANGE_PORT 0x00700000
236 #define PRINTER_CHANGE_ADD_PRINT_PROCESSOR 0x01000000
237 #define PRINTER_CHANGE_DELETE_PRINTER_PROCESSOR 0x04000000
238 #define PRINTER_CHANGE_PRINT_PROCESSOR 0x07000000
239 #define PRINTER_CHANGE_ADD_PRINTER_DRIVER 0x10000000
240 #define PRINTER_CHANGE_SET_PRINTER_DRIVER 0x20000000
241 #define PRINTER_CHANGE_DELETE_PRINTER_DRIVER 0x40000000
242 #define PRINTER_CHANGE_PRINTER_DRIVER 0x70000000
243 #define PRINTER_CHANGE_TIMEOUT 0x80000000
244 #define PRINTER_CHANGE_ALL 0x7777ffff
246 #define PRINTER_ERROR_INFORMATION 0x80000000
247 #define PRINTER_ERROR_WARNING 0x40000000
248 #define PRINTER_ERROR_SEVERE 0x20000000
250 #define PRINTER_ERROR_OUTODPAPER 0x00000001
251 #define PRINTER_ERROR_JAM 0x00000002
252 #define PRINTER_ERROR_OUTOFTONER 0x00000004
254 /* Access Rights for Printserver, Printers and Printjobs */
255 #define SERVER_ACCESS_ADMINISTER 0x00000001
256 #define SERVER_ACCESS_ENUMERATE 0x00000002
257 #define SERVER_READ (STANDARD_RIGHTS_READ | SERVER_ACCESS_ENUMERATE)
258 #define SERVER_WRITE (STANDARD_RIGHTS_WRITE | \
259 SERVER_ACCESS_ADMINISTER | SERVER_ACCESS_ENUMERATE)
260 #define SERVER_EXECUTE (STANDARD_RIGHTS_EXECUTE | SERVER_ACCESS_ENUMERATE)
261 #define SERVER_ALL_ACCESS (STANDARD_RIGHTS_REQUIRED | \
262 SERVER_ACCESS_ADMINISTER | SERVER_ACCESS_ENUMERATE)
264 #define PRINTER_ACCESS_ADMINISTER 0x00000004
265 #define PRINTER_ACCESS_USE 0x00000008
266 #define PRINTER_READ (STANDARD_RIGHTS_READ | PRINTER_ACCESS_USE)
267 #define PRINTER_WRITE (STANDARD_RIGHTS_WRITE | PRINTER_ACCESS_USE)
268 #define PRINTER_EXECUTE (STANDARD_RIGHTS_EXECUTE | PRINTER_ACCESS_USE)
269 #define PRINTER_ALL_ACCESS (STANDARD_RIGHTS_REQUIRED | \
270 PRINTER_ACCESS_ADMINISTER | PRINTER_ACCESS_USE)
272 #define JOB_ACCESS_ADMINISTER 0x00000010
273 #define JOB_READ (STANDARD_RIGHTS_READ | JOB_ACCESS_ADMINISTER)
274 #define JOB_WRITE (STANDARD_RIGHTS_WRITE | JOB_ACCESS_ADMINISTER)
275 #define JOB_EXECUTE (STANDARD_RIGHTS_EXECUTE | JOB_ACCESS_ADMINISTER)
276 #define JOB_ALL_ACCESS (STANDARD_RIGHTS_REQUIRED | JOB_ACCESS_ADMINISTER)
279 /* Flags for printer drivers */
280 #define DRIVER_KERNELMODE 0x00000001
281 #define DRIVER_USERMODE 0x00000002
283 #define APD_STRICT_UPGRADE 0x00000001
284 #define APD_STRICT_DOWNGRADE 0x00000002
285 #define APD_COPY_ALL_FILES 0x00000004
286 #define APD_COPY_NEW_FILES 0x00000008
287 #define APD_COPY_FROM_DIRECTORY 0x00000010
289 #define DPD_DELETE_UNUSED_FILES 0x00000001
290 #define DPD_DELETE_SPECIFIC_VERSION 0x00000002
291 #define DPD_DELETE_ALL_FILES 0x00000004
293 /* dwAction for PRINTER_INFO_7 */
294 #define DSPRINT_PUBLISH 0x00000001
295 #define DSPRINT_UPDATE 0x00000002
296 #define DSPRINT_UNPUBLISH 0x00000004
297 #define DSPRINT_REPUBLISH 0x00000008
298 #define DSPRINT_PENDING 0x80000000
300 /* ##################################### */
303 typedef struct _PRINTER_DEFAULTSA
{
306 ACCESS_MASK DesiredAccess
;
307 } PRINTER_DEFAULTSA
, *LPPRINTER_DEFAULTSA
;
309 typedef struct _PRINTER_DEFAULTSW
{
312 ACCESS_MASK DesiredAccess
;
313 } PRINTER_DEFAULTSW
, *LPPRINTER_DEFAULTSW
;
315 DECL_WINELIB_TYPE_AW(PRINTER_DEFAULTS
)
316 DECL_WINELIB_TYPE_AW(LPPRINTER_DEFAULTS
)
318 typedef struct _DRIVER_INFO_1A
{
320 } DRIVER_INFO_1A
, *PDRIVER_INFO_1A
, *LPDRIVER_INFO_1A
;
322 typedef struct _DRIVER_INFO_1W
{
324 } DRIVER_INFO_1W
, *PDRIVER_INFO_1W
, *LPDRIVER_INFO_1W
;
326 DECL_WINELIB_TYPE_AW(DRIVER_INFO_1
)
327 DECL_WINELIB_TYPE_AW(PDRIVER_INFO_1
)
328 DECL_WINELIB_TYPE_AW(LPDRIVER_INFO_1
)
330 typedef struct _DRIVER_INFO_2A
{
337 } DRIVER_INFO_2A
, *PDRIVER_INFO_2A
, *LPDRIVER_INFO_2A
;
339 typedef struct _DRIVER_INFO_2W
{
346 } DRIVER_INFO_2W
, *PDRIVER_INFO_2W
, *LPDRIVER_INFO_2W
;
348 DECL_WINELIB_TYPE_AW(DRIVER_INFO_2
)
349 DECL_WINELIB_TYPE_AW(PDRIVER_INFO_2
)
350 DECL_WINELIB_TYPE_AW(LPDRIVER_INFO_2
)
352 typedef struct _DRIVER_INFO_3A
{
360 LPSTR pDependentFiles
;
362 LPSTR pDefaultDataType
;
363 } DRIVER_INFO_3A
, *PDRIVER_INFO_3A
, *LPDRIVER_INFO_3A
;
365 typedef struct _DRIVER_INFO_3W
{
373 LPWSTR pDependentFiles
;
375 LPWSTR pDefaultDataType
;
376 } DRIVER_INFO_3W
, *PDRIVER_INFO_3W
, *LPDRIVER_INFO_3W
;
378 DECL_WINELIB_TYPE_AW(DRIVER_INFO_3
)
379 DECL_WINELIB_TYPE_AW(PDRIVER_INFO_3
)
380 DECL_WINELIB_TYPE_AW(LPDRIVER_INFO_3
)
382 typedef struct _DRIVER_INFO_4A
{
390 LPSTR pDependentFiles
;
392 LPSTR pDefaultDataType
;
393 LPSTR pszzPreviousNames
;
394 } DRIVER_INFO_4A
, *PDRIVER_INFO_4A
, *LPDRIVER_INFO_4A
;
396 typedef struct _DRIVER_INFO_4W
{
404 LPWSTR pDependentFiles
;
406 LPWSTR pDefaultDataType
;
407 LPWSTR pszzPreviousNames
;
408 } DRIVER_INFO_4W
, *PDRIVER_INFO_4W
, *LPDRIVER_INFO_4W
;
410 DECL_WINELIB_TYPE_AW(DRIVER_INFO_4
)
411 DECL_WINELIB_TYPE_AW(PDRIVER_INFO_4
)
412 DECL_WINELIB_TYPE_AW(LPDRIVER_INFO_4
)
415 typedef struct _DRIVER_INFO_5A
{
422 DWORD dwDriverAttributes
;
423 DWORD dwConfigVersion
;
424 DWORD dwDriverVersion
;
425 } DRIVER_INFO_5A
, *PDRIVER_INFO_5A
, *LPDRIVER_INFO_5A
;
427 typedef struct _DRIVER_INFO_5W
{
434 DWORD dwDriverAttributes
;
435 DWORD dwConfigVersion
;
436 DWORD dwDriverVersion
;
437 } DRIVER_INFO_5W
, *PDRIVER_INFO_5W
, *LPDRIVER_INFO_5W
;
439 DECL_WINELIB_TYPE_AW(DRIVER_INFO_5
)
440 DECL_WINELIB_TYPE_AW(PDRIVER_INFO_5
)
441 DECL_WINELIB_TYPE_AW(LPDRIVER_INFO_5
)
443 typedef struct _DRIVER_INFO_6A
{
451 LPSTR pDependentFiles
;
453 LPSTR pDefaultDataType
;
454 LPSTR pszzPreviousNames
;
455 FILETIME ftDriverDate
;
456 DWORDLONG dwlDriverVersion
;
461 } DRIVER_INFO_6A
, *PDRIVER_INFO_6A
, *LPDRIVER_INFO_6A
;
463 typedef struct _DRIVER_INFO_6W
{
471 LPWSTR pDependentFiles
;
473 LPWSTR pDefaultDataType
;
474 LPWSTR pszzPreviousNames
;
475 FILETIME ftDriverDate
;
476 DWORDLONG dwlDriverVersion
;
479 LPWSTR pszHardwareID
;
481 } DRIVER_INFO_6W
, *PDRIVER_INFO_6W
, *LPDRIVER_INFO_6W
;
483 DECL_WINELIB_TYPE_AW(DRIVER_INFO_6
)
484 DECL_WINELIB_TYPE_AW(PDRIVER_INFO_6
)
485 DECL_WINELIB_TYPE_AW(LPDRIVER_INFO_6
)
487 /* DRIVER_INFO_7 is not defined in native winspool.h and not found in the www */
489 typedef struct _DRIVER_INFO_8A
{
497 LPSTR pDependentFiles
;
499 LPSTR pDefaultDataType
;
500 LPSTR pszzPreviousNames
;
501 FILETIME ftDriverDate
;
502 DWORDLONG dwlDriverVersion
;
507 LPSTR pszPrintProcessor
;
508 LPSTR pszVendorSetup
;
509 LPSTR pszzColorProfiles
;
511 DWORD dwPrinterDriverAttributes
;
512 LPSTR pszzCoreDriverDependencies
;
513 FILETIME ftMinInboxDriverVerDate
;
514 DWORDLONG dwlMinInboxDriverVerVersion
;
515 } DRIVER_INFO_8A
, *PDRIVER_INFO_8A
, *LPDRIVER_INFO_8A
;
517 typedef struct _DRIVER_INFO_8W
{
525 LPWSTR pDependentFiles
;
527 LPWSTR pDefaultDataType
;
528 LPWSTR pszzPreviousNames
;
529 FILETIME ftDriverDate
;
530 DWORDLONG dwlDriverVersion
;
533 LPWSTR pszHardwareID
;
535 LPWSTR pszPrintProcessor
;
536 LPWSTR pszVendorSetup
;
537 LPWSTR pszzColorProfiles
;
539 DWORD dwPrinterDriverAttributes
;
540 LPWSTR pszzCoreDriverDependencies
;
541 FILETIME ftMinInboxDriverVerDate
;
542 DWORDLONG dwlMinInboxDriverVerVersion
;
543 } DRIVER_INFO_8W
, *PDRIVER_INFO_8W
, *LPDRIVER_INFO_8W
;
545 DECL_WINELIB_TYPE_AW(DRIVER_INFO_8
)
546 DECL_WINELIB_TYPE_AW(PDRIVER_INFO_8
)
547 DECL_WINELIB_TYPE_AW(LPDRIVER_INFO_8
)
550 typedef struct _PRINTER_INFO_1A
{
555 } PRINTER_INFO_1A
, *PPRINTER_INFO_1A
, *LPPRINTER_INFO_1A
;
557 typedef struct _PRINTER_INFO_1W
{
562 } PRINTER_INFO_1W
, *PPRINTER_INFO_1W
, *LPPRINTER_INFO_1W
;
564 DECL_WINELIB_TYPE_AW(PRINTER_INFO_1
)
565 DECL_WINELIB_TYPE_AW(PPRINTER_INFO_1
)
566 DECL_WINELIB_TYPE_AW(LPPRINTER_INFO_1
)
568 /* FIXME: winspool.h declares some structure members with the name Status.
569 * unfortunately <X11/ICE/ICElib.h> #defines Status to the type 'int'
570 * therefore the following hack */
573 typedef struct _PRINTER_INFO_2A
{
583 LPSTR pPrintProcessor
;
586 PSECURITY_DESCRIPTOR pSecurityDescriptor
;
589 DWORD DefaultPriority
;
595 } PRINTER_INFO_2A
, *PPRINTER_INFO_2A
, *LPPRINTER_INFO_2A
;
597 typedef struct _PRINTER_INFO_2W
{
607 LPWSTR pPrintProcessor
;
610 PSECURITY_DESCRIPTOR pSecurityDescriptor
;
613 DWORD DefaultPriority
;
619 } PRINTER_INFO_2W
, *PPRINTER_INFO_2W
, *LPPRINTER_INFO_2W
;
621 DECL_WINELIB_TYPE_AW(PRINTER_INFO_2
)
622 DECL_WINELIB_TYPE_AW(PPRINTER_INFO_2
)
623 DECL_WINELIB_TYPE_AW(LPPRINTER_INFO_2
)
625 typedef struct _PRINTER_INFO_3
{
626 PSECURITY_DESCRIPTOR pSecurityDescriptor
;
627 } PRINTER_INFO_3
, *PPRINTER_INFO_3
, *LPPRINTER_INFO_3
;
629 typedef struct _PRINTER_INFO_4A
{
633 } PRINTER_INFO_4A
, *PPRINTER_INFO_4A
, *LPPRINTER_INFO_4A
;
635 typedef struct _PRINTER_INFO_4W
{
639 } PRINTER_INFO_4W
, *PPRINTER_INFO_4W
, *LPPRINTER_INFO_4W
;
641 DECL_WINELIB_TYPE_AW(PRINTER_INFO_4
)
642 DECL_WINELIB_TYPE_AW(PPRINTER_INFO_4
)
643 DECL_WINELIB_TYPE_AW(LPPRINTER_INFO_4
)
645 typedef struct _PRINTER_INFO_5A
{
649 DWORD DeviceNotSelectedTimeout
;
650 DWORD TransmissionRetryTimeout
;
651 } PRINTER_INFO_5A
, *PPRINTER_INFO_5A
, *LPPRINTER_INFO_5A
;
653 typedef struct _PRINTER_INFO_5W
{
657 DWORD DeviceNotSelectedTimeout
;
658 DWORD TransmissionRetryTimeout
;
659 } PRINTER_INFO_5W
, *PPRINTER_INFO_5W
, *LPPRINTER_INFO_5W
;
661 DECL_WINELIB_TYPE_AW(PRINTER_INFO_5
)
662 DECL_WINELIB_TYPE_AW(PPRINTER_INFO_5
)
663 DECL_WINELIB_TYPE_AW(LPPRINTER_INFO_5
)
665 typedef struct _PRINTER_INFO_6
{
667 } PRINTER_INFO_6
, *PPRINTER_INFO_6
, *LPPRINTER_INFO_6
;
669 typedef struct _PRINTER_INFO_7A
{
672 } PRINTER_INFO_7A
, *PPRINTER_INFO_7A
, *LPPRINTER_INFO_7A
;
674 typedef struct _PRINTER_INFO_7W
{
675 LPWSTR pszObjectGUID
;
677 } PRINTER_INFO_7W
, *PPRINTER_INFO_7W
, *LPPRINTER_INFO_7W
;
679 DECL_WINELIB_TYPE_AW(PRINTER_INFO_7
)
680 DECL_WINELIB_TYPE_AW(PPRINTER_INFO_7
)
681 DECL_WINELIB_TYPE_AW(LPPRINTER_INFO_7
)
683 typedef struct _PRINTER_INFO_8A
{
685 } PRINTER_INFO_8A
, *PPRINTER_INFO_8A
, *LPPRINTER_INFO_8A
;
687 typedef struct _PRINTER_INFO_8W
{
689 } PRINTER_INFO_8W
, *PPRINTER_INFO_8W
, *LPPRINTER_INFO_8W
;
691 DECL_WINELIB_TYPE_AW(PRINTER_INFO_8
)
692 DECL_WINELIB_TYPE_AW(PPRINTER_INFO_8
)
693 DECL_WINELIB_TYPE_AW(LPPRINTER_INFO_8
)
695 typedef struct _PRINTER_INFO_9A
{
697 } PRINTER_INFO_9A
, *PPRINTER_INFO_9A
, *LPPRINTER_INFO_9A
;
699 typedef struct _PRINTER_INFO_9W
{
701 } PRINTER_INFO_9W
, *PPRINTER_INFO_9W
, *LPPRINTER_INFO_9W
;
703 DECL_WINELIB_TYPE_AW(PRINTER_INFO_9
)
704 DECL_WINELIB_TYPE_AW(PPRINTER_INFO_9
)
705 DECL_WINELIB_TYPE_AW(LPPRINTER_INFO_9
)
708 typedef struct _JOB_INFO_1A
{
721 SYSTEMTIME Submitted
;
722 } JOB_INFO_1A
, *PJOB_INFO_1A
, *LPJOB_INFO_1A
;
724 typedef struct _JOB_INFO_1W
{
737 SYSTEMTIME Submitted
;
738 } JOB_INFO_1W
, *PJOB_INFO_1W
, *LPJOB_INFO_1W
;
740 DECL_WINELIB_TYPE_AW(JOB_INFO_1
)
741 DECL_WINELIB_TYPE_AW(PJOB_INFO_1
)
742 DECL_WINELIB_TYPE_AW(LPJOB_INFO_1
)
744 typedef struct _JOB_INFO_2A
{
752 LPSTR pPrintProcessor
;
757 PSECURITY_DESCRIPTOR pSecurityDescriptor
;
765 SYSTEMTIME Submitted
;
768 } JOB_INFO_2A
, *PJOB_INFO_2A
, *LPJOB_INFO_2A
;
770 typedef struct _JOB_INFO_2W
{
778 LPWSTR pPrintProcessor
;
783 PSECURITY_DESCRIPTOR pSecurityDescriptor
;
791 SYSTEMTIME Submitted
;
794 } JOB_INFO_2W
, *PJOB_INFO_2W
, *LPJOB_INFO_2W
;
796 DECL_WINELIB_TYPE_AW(JOB_INFO_2
)
797 DECL_WINELIB_TYPE_AW(PJOB_INFO_2
)
798 DECL_WINELIB_TYPE_AW(LPJOB_INFO_2
)
800 typedef struct _JOB_INFO_3
{
804 } JOB_INFO_3
, *PJOB_INFO_3
, *LPJOB_INFO_3
;
806 typedef struct _ADDJOB_INFO_1A
{
809 } ADDJOB_INFO_1A
, *PADDJOB_INFO_1A
, *LPADDJOB_INFO_1A
;
811 typedef struct _ADDJOB_INFO_1W
{
814 } ADDJOB_INFO_1W
, *PADDJOB_INFO_1W
, *LPADDJOB_INFO_1W
;
816 DECL_WINELIB_TYPE_AW(ADDJOB_INFO_1
)
817 DECL_WINELIB_TYPE_AW(PADDJOB_INFO_1
)
818 DECL_WINELIB_TYPE_AW(LPADDJOB_INFO_1
)
820 typedef struct _DOC_INFO_1A
{
824 } DOC_INFO_1A
, *PDOC_INFO_1A
, *LPDOC_INFO_1A
;
826 typedef struct _DOC_INFO_1W
{
830 } DOC_INFO_1W
, *PDOC_INFO_1W
, *LPDOC_INFO_1W
;
832 DECL_WINELIB_TYPE_AW(DOC_INFO_1
)
833 DECL_WINELIB_TYPE_AW(PDOC_INFO_1
)
834 DECL_WINELIB_TYPE_AW(LPDOC_INFO_1
)
836 typedef struct _DOC_INFO_2A
{
842 } DOC_INFO_2A
, *PDOC_INFO_2A
, *LPDOC_INFO_2A
;
844 typedef struct _DOC_INFO_2W
{
850 } DOC_INFO_2W
, *PDOC_INFO_2W
, *LPDOC_INFO_2W
;
852 DECL_WINELIB_TYPE_AW(DOC_INFO_2
)
853 DECL_WINELIB_TYPE_AW(PDOC_INFO_2
)
854 DECL_WINELIB_TYPE_AW(LPDOC_INFO_2
)
856 typedef struct _FORM_INFO_1A
{
861 } FORM_INFO_1A
, *PFORM_INFO_1A
, *LPFORM_INFO_1A
;
863 typedef struct _FORM_INFO_1W
{
868 } FORM_INFO_1W
, *PFORM_INFO_1W
, *LPFORM_INFO_1W
;
870 DECL_WINELIB_TYPE_AW(FORM_INFO_1
)
871 DECL_WINELIB_TYPE_AW(PFORM_INFO_1
)
872 DECL_WINELIB_TYPE_AW(LPFORM_INFO_1
)
874 typedef struct _FORM_INFO_2A
{
885 } FORM_INFO_2A
, *PFORM_INFO_2A
, *LPFORM_INFO_2A
;
887 typedef struct _FORM_INFO_2W
{
898 } FORM_INFO_2W
, *PFORM_INFO_2W
, *LPFORM_INFO_2W
;
900 DECL_WINELIB_TYPE_AW(FORM_INFO_2
)
901 DECL_WINELIB_TYPE_AW(PFORM_INFO_2
)
902 DECL_WINELIB_TYPE_AW(LPFORM_INFO_2
)
904 typedef struct _PRINTPROCESSOR_INFO_1A
{
906 } PRINTPROCESSOR_INFO_1A
, *PPRINTPROCESSOR_INFO_1A
,
907 *LPPRINTPROCESSOR_INFO_1A
;
909 typedef struct _PRINTPROCESSOR_INFO_1W
{
911 } PRINTPROCESSOR_INFO_1W
, *PPRINTPROCESSOR_INFO_1W
,
912 *LPPRINTPROCESSOR_INFO_1W
;
914 DECL_WINELIB_TYPE_AW(PRINTPROCESSOR_INFO_1
)
915 DECL_WINELIB_TYPE_AW(PPRINTPROCESSOR_INFO_1
)
916 DECL_WINELIB_TYPE_AW(LPPRINTPROCESSOR_INFO_1
)
918 typedef struct _PORT_INFO_1A
{
920 } PORT_INFO_1A
, *PPORT_INFO_1A
, *LPPORT_INFO_1A
;
922 typedef struct _PORT_INFO_1W
{
924 } PORT_INFO_1W
, *PPORT_INFO_1W
, *LPPORT_INFO_1W
;
926 DECL_WINELIB_TYPE_AW(PORT_INFO_1
)
927 DECL_WINELIB_TYPE_AW(PPORT_INFO_1
)
928 DECL_WINELIB_TYPE_AW(LPPORT_INFO_1
)
930 typedef struct _PORT_INFO_2A
{
936 } PORT_INFO_2A
, *PPORT_INFO_2A
, *LPPORT_INFO_2A
;
938 typedef struct _PORT_INFO_2W
{
944 } PORT_INFO_2W
, *PPORT_INFO_2W
, *LPPORT_INFO_2W
;
946 DECL_WINELIB_TYPE_AW(PORT_INFO_2
)
947 DECL_WINELIB_TYPE_AW(PPORT_INFO_2
)
948 DECL_WINELIB_TYPE_AW(LPPORT_INFO_2
)
950 typedef struct _PORT_INFO_3A
{
954 } PORT_INFO_3A
, *PPORT_INFO_3A
, *LPPORT_INFO_3A
;
956 typedef struct _PORT_INFO_3W
{
960 } PORT_INFO_3W
, *PPORT_INFO_3W
, *LPPORT_INFO_3W
;
962 DECL_WINELIB_TYPE_AW(PORT_INFO_3
)
963 DECL_WINELIB_TYPE_AW(PPORT_INFO_3
)
964 DECL_WINELIB_TYPE_AW(LPPORT_INFO_3
)
966 typedef struct _MONITOR_INFO_1A
{
968 } MONITOR_INFO_1A
, *PMONITOR_INFO_1A
, *LPMONITOR_INFO_1A
;
970 typedef struct _MONITOR_INFO_1W
{
972 } MONITOR_INFO_1W
, *PMONITOR_INFO_1W
, *LPMONITOR_INFO_1W
;
974 DECL_WINELIB_TYPE_AW(MONITOR_INFO_1
)
975 DECL_WINELIB_TYPE_AW(PMONITOR_INFO_1
)
976 DECL_WINELIB_TYPE_AW(LPMONITOR_INFO_1
)
981 typedef struct _MONITOR_INFO_2A
{
985 } MONITOR_INFO_2A
, *PMONITOR_INFO_2A
, *LPMONITOR_INFO_2A
;
987 typedef struct _MONITOR_INFO_2W
{
991 } MONITOR_INFO_2W
, *PMONITOR_INFO_2W
, *LPMONITOR_INFO_2W
;
993 DECL_WINELIB_TYPE_AW(MONITOR_INFO_2
)
994 DECL_WINELIB_TYPE_AW(PMONITOR_INFO_2
)
995 DECL_WINELIB_TYPE_AW(LPMONITOR_INFO_2
)
997 typedef struct _DATATYPES_INFO_1A
{
999 } DATATYPES_INFO_1A
, *PDATATYPES_INFO_1A
, *LPDATATYPES_INFO_1A
;
1001 typedef struct _DATATYPES_INFO_1W
{
1003 } DATATYPES_INFO_1W
, *PDATATYPES_INFO_1W
, *LPDATATYPES_INFO_1W
;
1005 DECL_WINELIB_TYPE_AW(DATATYPES_INFO_1
)
1006 DECL_WINELIB_TYPE_AW(PDATATYPES_INFO_1
)
1007 DECL_WINELIB_TYPE_AW(LPDATATYPES_INFO_1
)
1009 typedef struct _PRINTER_NOTIFY_OPTIONS_TYPE
{
1016 } PRINTER_NOTIFY_OPTIONS_TYPE
, *PPRINTER_NOTIFY_OPTIONS_TYPE
,
1017 *LPPRINTER_NOTIFY_OPTIONS_TYPE
;
1019 typedef struct _PRINTER_NOTIFY_OPTIONS
{
1023 PPRINTER_NOTIFY_OPTIONS_TYPE pTypes
;
1024 } PRINTER_NOTIFY_OPTIONS
, *PPRINTER_NOTIFY_OPTIONS
, *LPPRINTER_NOTIFY_OPTIONS
;
1026 typedef struct _PRINTER_NOTIFY_INFO_DATA
{
1038 } PRINTER_NOTIFY_INFO_DATA
, *PPRINTER_NOTIFY_INFO_DATA
,
1039 *LPPRINTER_NOTIFY_INFO_DATA
;
1041 typedef struct _PRINTER_NOTIFY_INFO
{
1045 PRINTER_NOTIFY_INFO_DATA aData
[1];
1046 } PRINTER_NOTIFY_INFO
, *PPRINTER_NOTIFY_INFO
, *LPPRINTER_NOTIFY_INFO
;
1048 typedef struct _PROVIDOR_INFO_1A
{
1052 } PROVIDOR_INFO_1A
, *PPROVIDOR_INFO_1A
, *LPPROVIDOR_INFO_1A
;
1054 typedef struct _PROVIDOR_INFO_1W
{
1056 LPWSTR pEnvironment
;
1058 } PROVIDOR_INFO_1W
, *PPROVIDOR_INFO_1W
, *LPPROVIDOR_INFO_1W
;
1060 DECL_WINELIB_TYPE_AW(PROVIDOR_INFO_1
)
1061 DECL_WINELIB_TYPE_AW(PPROVIDOR_INFO_1
)
1062 DECL_WINELIB_TYPE_AW(LPPROVIDOR_INFO_1
)
1064 typedef struct _PRINTER_ENUM_VALUESA
{
1070 } PRINTER_ENUM_VALUESA
, *PPRINTER_ENUM_VALUESA
;
1072 typedef struct _PRINTER_ENUM_VALUESW
{
1078 } PRINTER_ENUM_VALUESW
, *PPRINTER_ENUM_VALUESW
;
1080 DECL_WINELIB_TYPE_AW(PRINTER_ENUM_VALUES
)
1081 DECL_WINELIB_TYPE_AW(PPRINTER_ENUM_VALUES
)
1094 typedef struct _BINARY_CONTAINER
{
1097 } BINARY_CONTAINER
, *PBINARY_CONTAINER
;
1099 typedef struct _BIDI_DATA
{
1107 BINARY_CONTAINER biData
;
1109 } BIDI_DATA
, *LPBIDI_DATA
, *PBIDI_DATA
;
1111 typedef struct _BIDI_REQUEST_DATA
{
1115 } BIDI_REQUEST_DATA
, *LPBIDI_REQUEST_DATA
, *PBIDI_REQUEST_DATA
;
1117 typedef struct _BIDI_REQUEST_CONTAINER
{
1121 BIDI_REQUEST_DATA aData
[1];
1122 } BIDI_REQUEST_CONTAINER
, *LPBIDI_REQUEST_CONTAINER
, *PBIDI_REQUEST_CONTAINER
;
1124 typedef struct _BIDI_RESPONSE_DATA
{
1129 } BIDI_RESPONSE_DATA
, *LPBIDI_RESPONSE_DATA
, *PBIDI_RESPONSE_DATA
;
1131 typedef struct _BIDI_RESPONSE_CONTAINER
{
1135 BIDI_RESPONSE_DATA aData
[1];
1136 } BIDI_RESPONSE_CONTAINER
, *LPBIDI_RESPONSE_CONTAINER
, *PBIDI_RESPONSE_CONTAINER
;
1138 /* string constants */
1140 #define SPLREG_DEFAULT_SPOOL_DIRECTORYA "DefaultSpoolDirectory"
1142 #define SPLREG_DEFAULT_SPOOL_DIRECTORYW L"DefaultSpoolDirectory"
1143 #elif defined(__GNUC__)
1144 #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}
1146 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};
1148 #define SPLREG_DEFAULT_SPOOL_DIRECTORY WINELIB_NAME_AW(SPLREG_DEFAULT_SPOOL_DIRECTORY)
1150 #define SPLREG_PORT_THREAD_PRIORITY_DEFAULTA "PortThreadPriorityDefault"
1152 #define SPLREG_PORT_THREAD_PRIORITY_DEFAULTW L"PortThreadPriorityDefault"
1153 #elif defined(__GNUC__)
1154 #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}
1156 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};
1158 #define SPLREG_PORT_THREAD_PRIORITY_DEFAULT WINELIB_NAME_AW(SPLREG_PORT_THREAD_PRIORITY_DEFAULT)
1160 #define SPLREG_PORT_THREAD_PRIORITYA "PortThreadPriority"
1162 #define SPLREG_PORT_THREAD_PRIORITYW L"PortThreadPriority"
1163 #elif defined(__GNUC__)
1164 #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}
1166 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};
1168 #define SPLREG_PORT_THREAD_PRIORITY WINELIB_NAME_AW(SPLREG_PORT_THREAD_PRIORITY)
1170 #define SPLREG_SCHEDULER_THREAD_PRIORITY_DEFAULTA "SchedulerThreadPriorityDefault"
1172 #define SPLREG_SCHEDULER_THREAD_PRIORITY_DEFAULTW L"SchedulerThreadPriorityDefault"
1173 #elif defined(__GNUC__)
1174 #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}
1176 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};
1178 #define SPLREG_SCHEDULER_THREAD_PRIORITY_DEFAULT WINELIB_NAME_AW(SPLREG_SCHEDULER_THREAD_PRIORITY_DEFAULT)
1180 #define SPLREG_SCHEDULER_THREAD_PRIORITYA "SchedulerThreadPriority"
1182 #define SPLREG_SCHEDULER_THREAD_PRIORITYW L"SchedulerThreadPriority"
1183 #elif defined(__GNUC__)
1184 #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}
1186 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};
1188 #define SPLREG_SCHEDULER_THREAD_PRIORITY WINELIB_NAME_AW(SPLREG_SCHEDULER_THREAD_PRIORITY)
1190 #define SPLREG_BEEP_ENABLEDA "BeepEnabled"
1192 #define SPLREG_BEEP_ENABLEDW L"BeepEnabled"
1193 #elif defined(__GNUC__)
1194 #define SPLREG_BEEP_ENABLEDW (const WCHAR[]){'B','e','e','p','E','n','a','b','l','e','d',0}
1196 static const WCHAR SPLREG_BEEP_ENABLEDW
[] = {'B','e','e','p','E','n','a','b','l','e','d',0};
1198 #define SPLREG_BEEP_ENABLED WINELIB_NAME_AW(SPLREG_BEEP_ENABLED)
1200 #define SPLREG_NET_POPUPA "NetPopup"
1202 #define SPLREG_NET_POPUPW L"NetPopup"
1203 #elif defined(__GNUC__)
1204 #define SPLREG_NET_POPUPW (const WCHAR[]){'N','e','t','P','o','p','u','p',0}
1206 static const WCHAR SPLREG_NET_POPUPW
[] = {'N','e','t','P','o','p','u','p',0};
1208 #define SPLREG_NET_POPUP WINELIB_NAME_AW(SPLREG_NET_POPUP)
1210 #define SPLREG_RETRY_POPUPA "RetryPopup"
1212 #define SPLREG_RETRY_POPUPW L"RetryPopup"
1213 #elif defined(__GNUC__)
1214 #define SPLREG_RETRY_POPUPW (const WCHAR[]){'R','e','t','r','y','P','o','p','u','p',0}
1216 static const WCHAR SPLREG_RETRY_POPUPW
[] = {'R','e','t','r','y','P','o','p','u','p',0};
1218 #define SPLREG_RETRY_POPUP WINELIB_NAME_AW(SPLREG_RETRY_POPUP)
1220 #define SPLREG_NET_POPUP_TO_COMPUTERA "NetPopupToComputer"
1222 #define SPLREG_NET_POPUP_TO_COMPUTERW L"NetPopupToComputer"
1223 #elif defined(__GNUC__)
1224 #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}
1226 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};
1228 #define SPLREG_NET_POPUP_TO_COMPUTER WINELIB_NAME_AW(SPLREG_NET_POPUP_TO_COMPUTER)
1230 #define SPLREG_EVENT_LOGA "EventLog"
1232 #define SPLREG_EVENT_LOGW L"EventLog"
1233 #elif defined(__GNUC__)
1234 #define SPLREG_EVENT_LOGW (const WCHAR[]){'E','v','e','n','t','L','o','g',0}
1236 static const WCHAR SPLREG_EVENT_LOGW
[] = {'E','v','e','n','t','L','o','g',0};
1238 #define SPLREG_EVENT_LOG WINELIB_NAME_AW(SPLREG_EVENT_LOG)
1240 #define SPLREG_MAJOR_VERSIONA "MajorVersion"
1242 #define SPLREG_MAJOR_VERSIONW L"MajorVersion"
1243 #elif defined(__GNUC__)
1244 #define SPLREG_MAJOR_VERSIONW (const WCHAR[]){'M','a','j','o','r','V','e','r','s','i','o','n',0}
1246 static const WCHAR SPLREG_MAJOR_VERSIONW
[] = {'M','a','j','o','r','V','e','r','s','i','o','n',0};
1248 #define SPLREG_MAJOR_VERSION WINELIB_NAME_AW(SPLREG_MAJOR_VERSION)
1250 #define SPLREG_MINOR_VERSIONA "MinorVersion"
1252 #define SPLREG_MINOR_VERSIONW L"MinorVersion"
1253 #elif defined(__GNUC__)
1254 #define SPLREG_MINOR_VERSIONW (const WCHAR[]){'M','i','n','o','r','V','e','r','s','i','o','n',0}
1256 static const WCHAR SPLREG_MINOR_VERSIONW
[] = {'M','i','n','o','r','V','e','r','s','i','o','n',0};
1258 #define SPLREG_MINOR_VERSION WINELIB_NAME_AW(SPLREG_MINOR_VERSION)
1260 #define SPLREG_ARCHITECTUREA "Architecture"
1262 #define SPLREG_ARCHITECTUREW L"Architecture"
1263 #elif defined(__GNUC__)
1264 #define SPLREG_ARCHITECTUREW (const WCHAR[]){'A','r','c','h','i','t','e','c','t','u','r','e',0}
1266 static const WCHAR SPLREG_ARCHITECTUREW
[] = {'A','r','c','h','i','t','e','c','t','u','r','e',0};
1268 #define SPLREG_ARCHITECTURE WINELIB_NAME_AW(SPLREG_ARCHITECTURE)
1270 #define SPLREG_OS_VERSIONA "OSVersion"
1272 #define SPLREG_OS_VERSIONW L"OSVersion"
1273 #elif defined(__GNUC__)
1274 #define SPLREG_OS_VERSIONW (const WCHAR[]){'O','S','V','e','r','s','i','o','n',0}
1276 static const WCHAR SPLREG_OS_VERSIONW
[] = {'O','S','V','e','r','s','i','o','n',0};
1278 #define SPLREG_OS_VERSION WINELIB_NAME_AW(SPLREG_OS_VERSION)
1280 #define SPLREG_OS_VERSIONEXA "OSVersionEx"
1282 #define SPLREG_OS_VERSIONEXW L"OSVersionEx"
1283 #elif defined(__GNUC__)
1284 #define SPLREG_OS_VERSIONEXW (const WCHAR[]){'O','S','V','e','r','s','i','o','n','E','x',0}
1286 static const WCHAR SPLREG_OS_VERSIONEXW
[] = {'O','S','V','e','r','s','i','o','n','E','x',0};
1288 #define SPLREG_OS_VERSIONEX WINELIB_NAME_AW(SPLREG_OS_VERSIONEX)
1290 #define SPLREG_DS_PRESENTA "DsPresent"
1292 #define SPLREG_DS_PRESENTW L"DsPresent"
1293 #elif defined(__GNUC__)
1294 #define SPLREG_DS_PRESENTW (const WCHAR[]){'D','s','P','r','e','s','e','n','t',0}
1296 static const WCHAR SPLREG_DS_PRESENTW
[] = {'D','s','P','r','e','s','e','n','t',0};
1298 #define SPLREG_DS_PRESENT WINELIB_NAME_AW(SPLREG_DS_PRESENT)
1300 #define SPLREG_DS_PRESENT_FOR_USERA "DsPresentForUser"
1302 #define SPLREG_DS_PRESENT_FOR_USERW L"DsPresentForUser"
1303 #elif defined(__GNUC__)
1304 #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}
1306 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};
1308 #define SPLREG_DS_PRESENT_FOR_USER WINELIB_NAME_AW(SPLREG_DS_PRESENT_FOR_USER)
1310 #define SPLREG_REMOTE_FAXA "RemoteFax"
1312 #define SPLREG_REMOTE_FAXW L"RemoteFax"
1313 #elif defined(__GNUC__)
1314 #define SPLREG_REMOTE_FAXW (const WCHAR[]){'R','e','m','o','t','e','F','a','x',0}
1316 static const WCHAR SPLREG_REMOTE_FAXW
[] = {'R','e','m','o','t','e','F','a','x',0};
1318 #define SPLREG_REMOTE_FAX WINELIB_NAME_AW(SPLREG_REMOTE_FAX)
1320 #define SPLREG_RESTART_JOB_ON_POOL_ERRORA "RestartJobOnPoolError"
1322 #define SPLREG_RESTART_JOB_ON_POOL_ERRORW L"RestartJobOnPoolError"
1323 #elif defined(__GNUC__)
1324 #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}
1326 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};
1328 #define SPLREG_RESTART_JOB_ON_POOL_ERROR WINELIB_NAME_AW(SPLREG_RESTART_JOB_ON_POOL_ERROR)
1330 #define SPLREG_RESTART_JOB_ON_POOL_ENABLEDA "RestartJobOnPoolEnabled"
1332 #define SPLREG_RESTART_JOB_ON_POOL_ENABLEDW L"RestartJobOnPoolEnabled"
1333 #elif defined(__GNUC__)
1334 #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}
1336 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};
1338 #define SPLREG_RESTART_JOB_ON_POOL_ENABLED WINELIB_NAME_AW(SPLREG_RESTART_JOB_ON_POOL_ENABLED)
1340 #define SPLREG_DNS_MACHINE_NAMEA "DNSMachineName"
1342 #define SPLREG_DNS_MACHINE_NAMEW L"DNSMachineName"
1343 #elif defined(__GNUC__)
1344 #define SPLREG_DNS_MACHINE_NAMEW (const WCHAR[]){'D','N','S','M','a','c','h','i','n','e','N','a','m','e',0}
1346 static const WCHAR SPLREG_DNS_MACHINE_NAMEW
[] = {'D','N','S','M','a','c','h','i','n','e','N','a','m','e',0};
1348 #define SPLREG_DNS_MACHINE_NAME WINELIB_NAME_AW(SPLREG_DNS_MACHINE_NAME)
1350 #define SPLREG_ALLOW_USER_MANAGEFORMSA "AllowUserManageForms"
1352 #define SPLREG_ALLOW_USER_MANAGEFORMSW L"AllowUserManageForms"
1353 #elif defined(__GNUC__)
1354 #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}
1356 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};
1358 #define SPLREG_ALLOW_USER_MANAGEFORMS WINELIB_NAME_AW(SPLREG_ALLOW_USER_MANAGEFORMS)
1360 #define SPLREG_WEBSHAREMGMTA "WebShareMgmt"
1362 #define SPLREG_WEBSHAREMGMTW L"WebShareMgmt"
1363 #elif defined(__GNUC__)
1364 #define SPLREG_WEBSHAREMGMTW (const WCHAR[]){'W','e','b','S','h','a','r','e','M','g','m','t',0}
1366 static const WCHAR SPLREG_WEBSHAREMGMTW
[] = {'W','e','b','S','h','a','r','e','M','g','m','t',0};
1368 #define SPLREG_WEBSHAREMGMT WINELIB_NAME_AW(SPLREG_WEBSHAREMGMT)
1370 #define SPLREG_PRINT_DRIVER_ISOLATION_GROUPSA "PrintDriverIsolationGroups"
1372 #define SPLREG_PRINT_DRIVER_ISOLATION_GROUPSW L"PrintDriverIsolationGroups"
1373 #elif defined(__GNUC__)
1374 #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}
1376 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};
1378 #define SPLREG_PRINT_DRIVER_ISOLATION_GROUPS WINELIB_NAME_AW(SPLREG_PRINT_DRIVER_ISOLATION_GROUPS)
1380 #define SPLREG_PRINT_DRIVER_ISOLATION_TIME_BEFORE_RECYCLEA "PrintDriverIsolationTimeBeforeRecycle"
1382 #define SPLREG_PRINT_DRIVER_ISOLATION_TIME_BEFORE_RECYCLEW L"PrintDriverIsolationTimeBeforeRecycle"
1383 #elif defined(__GNUC__)
1384 #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}
1386 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};
1388 #define SPLREG_PRINT_DRIVER_ISOLATION_TIME_BEFORE_RECYCLE WINELIB_NAME_AW(SPLREG_PRINT_DRIVER_ISOLATION_TIME_BEFORE_RECYCLE)
1390 #define SPLREG_PRINT_DRIVER_ISOLATION_MAX_OBJECTS_BEFORE_RECYCLEA "PrintDriverIsolationMaxobjsBeforeRecycle"
1392 #define SPLREG_PRINT_DRIVER_ISOLATION_MAX_OBJECTS_BEFORE_RECYCLEW L"PrintDriverIsolationMaxobjsBeforeRecycle"
1393 #elif defined(__GNUC__)
1394 #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}
1396 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};
1398 #define SPLREG_PRINT_DRIVER_ISOLATION_MAX_OBJECTS_BEFORE_RECYCLE WINELIB_NAME_AW(SPLREG_PRINT_DRIVER_ISOLATION_MAX_OBJECTS_BEFORE_RECYCLE)
1400 #define SPLREG_PRINT_DRIVER_ISOLATION_IDLE_TIMEOUTA "PrintDriverIsolationIdleTimeout"
1402 #define SPLREG_PRINT_DRIVER_ISOLATION_IDLE_TIMEOUTW L"PrintDriverIsolationIdleTimeout"
1403 #elif defined(__GNUC__)
1404 #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}
1406 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};
1408 #define SPLREG_PRINT_DRIVER_ISOLATION_IDLE_TIMEOUT WINELIB_NAME_AW(SPLREG_PRINT_DRIVER_ISOLATION_IDLE_TIMEOUT)
1410 #define SPLREG_PRINT_DRIVER_ISOLATION_EXECUTION_POLICYA "PrintDriverIsolationExecutionPolicy"
1412 #define SPLREG_PRINT_DRIVER_ISOLATION_EXECUTION_POLICYW L"PrintDriverIsolationExecutionPolicy"
1413 #elif defined(__GNUC__)
1414 #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}
1416 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};
1418 #define SPLREG_PRINT_DRIVER_ISOLATION_EXECUTION_POLICY WINELIB_NAME_AW(SPLREG_PRINT_DRIVER_ISOLATION_EXECUTION_POLICY)
1420 #define SPLREG_PRINT_DRIVER_ISOLATION_OVERRIDE_POLICYA "PrintDriverIsolationOverrideCompat"
1422 #define SPLREG_PRINT_DRIVER_ISOLATION_OVERRIDE_POLICYW L"PrintDriverIsolationOverrideCompat"
1423 #elif defined(__GNUC__)
1424 #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}
1426 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};
1428 #define SPLREG_PRINT_DRIVER_ISOLATION_OVERRIDE_POLICY WINELIB_NAME_AW(SPLREG_PRINT_DRIVER_ISOLATION_OVERRIDE_POLICY)
1431 INT WINAPI
DeviceCapabilitiesA(LPCSTR pDevice
,LPCSTR pPort
,WORD fwCapability
,
1432 LPSTR pOutput
, LPDEVMODEA pDevMode
);
1433 INT WINAPI
DeviceCapabilitiesW(LPCWSTR pDevice
, LPCWSTR pPort
,
1434 WORD fwCapability
, LPWSTR pOutput
,
1435 const DEVMODEW
*pDevMode
);
1437 #define DeviceCapabilities WINELIB_NAME_AW(DeviceCapabilities)
1439 LONG WINAPI
DocumentPropertiesA(HWND hWnd
,HANDLE hPrinter
,
1440 LPSTR pDeviceName
, LPDEVMODEA pDevModeOutput
,
1441 LPDEVMODEA pDevModeInput
,DWORD fMode
);
1442 LONG WINAPI
DocumentPropertiesW(HWND hWnd
, HANDLE hPrinter
,
1444 LPDEVMODEW pDevModeOutput
,
1445 LPDEVMODEW pDevModeInput
, DWORD fMode
);
1447 #define DocumentProperties WINELIB_NAME_AW(DocumentProperties)
1449 BOOL WINAPI
OpenPrinterA(LPSTR lpPrinterName
,HANDLE
*phPrinter
,
1450 LPPRINTER_DEFAULTSA pDefault
);
1451 BOOL WINAPI
OpenPrinterW(LPWSTR lpPrinterName
,HANDLE
*phPrinter
,
1452 LPPRINTER_DEFAULTSW pDefault
);
1454 #define OpenPrinter WINELIB_NAME_AW(OpenPrinter)
1456 BOOL WINAPI
ResetPrinterA(HANDLE hPrinter
, LPPRINTER_DEFAULTSA pDefault
);
1457 BOOL WINAPI
ResetPrinterW(HANDLE hPrinter
, LPPRINTER_DEFAULTSW pDefault
);
1458 #define ResetPrinter WINELIB_NAME_AW(ResetPrinter)
1460 BOOL WINAPI
ClosePrinter (HANDLE phPrinter
);
1462 BOOL WINAPI
EnumJobsA(HANDLE hPrinter
, DWORD FirstJob
, DWORD NoJobs
,
1463 DWORD Level
, LPBYTE pJob
, DWORD cbBuf
, LPDWORD pcbNeeded
,
1464 LPDWORD pcReturned
);
1465 BOOL WINAPI
EnumJobsW(HANDLE hPrinter
, DWORD FirstJob
, DWORD NoJobs
,
1466 DWORD Level
, LPBYTE pJob
, DWORD cbBuf
, LPDWORD pcbNeeded
,
1467 LPDWORD pcReturned
);
1468 #define EnumJobs WINELIB_NAME_AW(EnumJobs)
1470 BOOL WINAPI
EnumPrintersA(DWORD dwType
, LPSTR lpszName
,
1471 DWORD dwLevel
, LPBYTE lpbPrinters
,
1472 DWORD cbBuf
, LPDWORD lpdwNeeded
,
1473 LPDWORD lpdwReturned
);
1474 BOOL WINAPI
EnumPrintersW(DWORD dwType
, LPWSTR lpszName
,
1475 DWORD dwLevel
, LPBYTE lpbPrinters
,
1476 DWORD cbBuf
, LPDWORD lpdwNeeded
,
1477 LPDWORD lpdwReturned
);
1478 #define EnumPrinters WINELIB_NAME_AW(EnumPrinters)
1480 BOOL WINAPI
PrinterProperties(HWND hWnd
, HANDLE hPrinter
);
1482 BOOL WINAPI
GetPrinterDriverDirectoryA(LPSTR
,LPSTR
,DWORD
,LPBYTE
,DWORD
,LPDWORD
);
1483 BOOL WINAPI
GetPrinterDriverDirectoryW(LPWSTR
,LPWSTR
,DWORD
,LPBYTE
,DWORD
,LPDWORD
);
1484 #define GetPrinterDriverDirectory WINELIB_NAME_AW(GetPrinterDriverDirectory)
1486 BOOL WINAPI
GetPrinterDriverA(HANDLE hPrinter
, LPSTR pEnvironment
,
1487 DWORD Level
, LPBYTE pDriverInfo
,
1488 DWORD cbBuf
, LPDWORD pcbNeeded
);
1489 BOOL WINAPI
GetPrinterDriverW(HANDLE hPrinter
, LPWSTR pEnvironment
,
1490 DWORD Level
, LPBYTE pDriverInfo
,
1491 DWORD cbBuf
, LPDWORD pcbNeeded
);
1492 #define GetPrinterDriver WINELIB_NAME_AW(GetPrinterDriver)
1494 BOOL WINAPI
SetJobA(HANDLE hPrinter
, DWORD JobID
, DWORD Level
, LPBYTE pJob
,
1496 BOOL WINAPI
SetJobW(HANDLE hPrinter
, DWORD JobID
, DWORD Level
, LPBYTE pJob
,
1498 #define SetJob WINELIB_NAME_AW(SetJob)
1500 BOOL WINAPI
GetJobA(HANDLE hPrinter
, DWORD JobID
, DWORD Level
, LPBYTE pJob
,
1501 DWORD cbBuf
, LPDWORD pcbNeeded
);
1502 BOOL WINAPI
GetJobW(HANDLE hPrinter
, DWORD JobID
, DWORD Level
, LPBYTE pJob
,
1503 DWORD cbBuf
, LPDWORD pcbNeeded
);
1504 #define GetJob WINELIB_NAME_AW(GetJob)
1506 HANDLE WINAPI
AddPrinterA(LPSTR pName
, DWORD Level
, LPBYTE pPrinter
);
1507 HANDLE WINAPI
AddPrinterW(LPWSTR pName
, DWORD Level
, LPBYTE pPrinter
);
1508 #define AddPrinter WINELIB_NAME_AW(AddPrinter)
1510 BOOL WINAPI
DeletePrinter(HANDLE hPrinter
);
1512 BOOL WINAPI
SetPrinterA(HANDLE hPrinter
, DWORD Level
, LPBYTE pPrinter
,
1514 BOOL WINAPI
SetPrinterW(HANDLE hPrinter
, DWORD Level
, LPBYTE pPrinter
,
1516 #define SetPrinter WINELIB_NAME_AW(SetPrinter)
1518 BOOL WINAPI
GetPrinterA(HANDLE hPrinter
, DWORD Level
, LPBYTE pPrinter
,
1519 DWORD cbBuf
, LPDWORD pcbNeeded
);
1520 BOOL WINAPI
GetPrinterW(HANDLE hPrinter
, DWORD Level
, LPBYTE pPrinter
,
1521 DWORD cbBuf
, LPDWORD pcbNeeded
);
1522 #define GetPrinter WINELIB_NAME_AW(GetPrinter)
1524 BOOL WINAPI
AddPrinterDriverA(LPSTR pName
, DWORD Level
, LPBYTE pDriverInfo
);
1525 BOOL WINAPI
AddPrinterDriverW(LPWSTR pName
, DWORD Level
, LPBYTE pDriverInfo
);
1526 #define AddPrinterDriver WINELIB_NAME_AW(AddPrinterDriver)
1528 BOOL WINAPI
AddPrinterDriverExA(LPSTR pName
, DWORD Level
, LPBYTE pDriverInfo
,
1529 DWORD dwFileCopyFlags
);
1530 BOOL WINAPI
AddPrinterDriverExW(LPWSTR pName
, DWORD Level
, LPBYTE pDriverInfo
,
1531 DWORD dwFileCopyFlags
);
1532 #define AddPrinterDriverEx WINELIB_NAME_AW(AddPrinterDriverEx)
1534 BOOL WINAPI
EnumPrinterDriversA(LPSTR pName
, LPSTR pEnvironment
, DWORD Level
,
1535 LPBYTE pDriverInfo
, DWORD cbBuf
,
1536 LPDWORD pcbNeeded
, LPDWORD pcbReturned
);
1537 BOOL WINAPI
EnumPrinterDriversW(LPWSTR pName
, LPWSTR pEnvironment
, DWORD Level
,
1538 LPBYTE pDriverInfo
, DWORD cbBuf
,
1539 LPDWORD pcbNeeded
, LPDWORD pcbReturned
);
1540 #define EnumPrinterDrivers WINELIB_NAME_AW(EnumPrinterDrivers)
1542 BOOL WINAPI
GetDefaultPrinterA(LPSTR pName
, LPDWORD pcbNameSize
);
1543 BOOL WINAPI
GetDefaultPrinterW(LPWSTR pName
, LPDWORD pcbNameSize
);
1544 #define GetDefaultPrinter WINELIB_NAME_AW(GetDefaultPrinter)
1546 BOOL WINAPI
SetDefaultPrinterA(LPCSTR
);
1547 BOOL WINAPI
SetDefaultPrinterW(LPCWSTR
);
1548 #define SetDefaultPrinter WINELIB_NAME_AW(SetDefaultPrinter)
1550 BOOL WINAPI
DeletePrinterDriverA(LPSTR pName
, LPSTR pEnvironment
,
1552 BOOL WINAPI
DeletePrinterDriverW(LPWSTR pName
, LPWSTR pEnvironment
,
1553 LPWSTR pDriverName
);
1554 #define DeletePrinterDriver WINELIB_NAME_AW(DeletePrinterDriver)
1556 BOOL WINAPI
DeletePrinterDriverExA(LPSTR pName
, LPSTR pEnvironment
,
1557 LPSTR pDriverName
, DWORD dwDeleteFlag
, DWORD dwVersionFlag
);
1558 BOOL WINAPI
DeletePrinterDriverExW(LPWSTR pName
, LPWSTR pEnvironment
,
1559 LPWSTR pDriverName
, DWORD dwDeleteFlag
, DWORD dwVersionFlag
);
1560 #define DeletePrinterDriverEx WINELIB_NAME_AW(DeletePrinterDriverEx)
1562 BOOL WINAPI
AddPrintProcessorA(LPSTR pName
, LPSTR pEnvironment
,
1563 LPSTR pPathName
, LPSTR pPrintProcessorName
);
1564 BOOL WINAPI
AddPrintProcessorW(LPWSTR pName
, LPWSTR pEnvironment
,
1565 LPWSTR pPathName
, LPWSTR pPrintProcessorName
);
1566 #define AddPrintProcessor WINELIB_NAME_AW(AddPrintProcessor)
1568 BOOL WINAPI
EnumPrintProcessorsA(LPSTR pName
, LPSTR pEnvironment
,
1569 DWORD Level
, LPBYTE pPrintProcessorInfo
,
1570 DWORD cbBuf
, LPDWORD pcbNeeded
,
1571 LPDWORD pcbReturned
);
1572 BOOL WINAPI
EnumPrintProcessorsW(LPWSTR pName
, LPWSTR pEnvironment
,
1573 DWORD Level
, LPBYTE pPrintProcessorInfo
,
1574 DWORD cbBuf
, LPDWORD pcbNeeded
,
1575 LPDWORD pcbReturned
);
1576 #define EnumPrintProcessors WINELIB_NAME_AW(EnumPrintProcessors)
1578 BOOL WINAPI
GetPrintProcessorDirectoryA(LPSTR pName
, LPSTR pEnvironment
,
1580 LPBYTE pPrintProcessorInfo
,
1581 DWORD cbBuf
, LPDWORD pcbNeeded
);
1583 BOOL WINAPI
GetPrintProcessorDirectoryW(LPWSTR pName
, LPWSTR pEnvironment
,
1585 LPBYTE pPrintProcessorInfo
,
1586 DWORD cbBuf
, LPDWORD pcbNeeded
);
1587 #define GetPrintProcessorDirectory WINELIB_NAME_AW(GetPrintProcessorDirectory)
1589 BOOL WINAPI
EnumPrintProcessorDatatypesA(LPSTR pName
,
1590 LPSTR pPrintProcessorName
,
1591 DWORD Level
, LPBYTE pDatatypes
,
1592 DWORD cbBuf
, LPDWORD pcbNeeded
,
1593 LPDWORD pcbReturned
);
1594 BOOL WINAPI
EnumPrintProcessorDatatypesW(LPWSTR pName
,
1595 LPWSTR pPrintProcessorName
,
1596 DWORD Level
, LPBYTE pDatatypes
,
1597 DWORD cbBuf
, LPDWORD pcbNeeded
,
1598 LPDWORD pcbReturned
);
1599 #define EnumPrintProcessorDatatypes WINELIB_NAME_AW(EnumPrintProcessorDatatypes)
1601 BOOL WINAPI
DeletePrintProcessorA(LPSTR pName
, LPSTR pEnvironment
,
1602 LPSTR pPrintProcessorName
);
1603 BOOL WINAPI
DeletePrintProcessorW(LPWSTR pName
, LPWSTR pEnvironment
,
1604 LPWSTR pPrintProcessorName
);
1605 #define DeletePrintProcessor WINELIB_NAME_AW(DeletePrintProcessor)
1607 DWORD WINAPI
StartDocPrinterA(HANDLE hPrinter
, DWORD Level
, LPBYTE pDocInfo
);
1608 DWORD WINAPI
StartDocPrinterW(HANDLE hPrinter
, DWORD Level
, LPBYTE pDocInfo
);
1609 #define StartDocPrinter WINELIB_NAME_AW(StartDocPrinter)
1611 BOOL WINAPI
StartPagePrinter(HANDLE hPrinter
);
1612 BOOL WINAPI
WritePrinter(HANDLE hPrinter
, LPVOID pBuf
, DWORD cbBuf
,
1614 BOOL WINAPI
EndPagePrinter(HANDLE hPrinter
);
1615 BOOL WINAPI
AbortPrinter(HANDLE hPrinter
);
1616 BOOL WINAPI
ReadPrinter(HANDLE hPrinter
, LPVOID pBuf
, DWORD cbBuf
,
1617 LPDWORD pNoBytesRead
);
1618 BOOL WINAPI
EndDocPrinter(HANDLE hPrinter
);
1620 BOOL WINAPI
AddJobA(HANDLE hPrinter
, DWORD Level
, LPBYTE pData
, DWORD cbBuf
,
1622 BOOL WINAPI
AddJobW(HANDLE hPrinter
, DWORD Level
, LPBYTE pData
, DWORD cbBuf
,
1624 #define AddJob WINELIB_NAME_AW(AddJob)
1626 BOOL WINAPI
ScheduleJob(HANDLE hPrinter
, DWORD JobID
);
1628 LONG WINAPI
AdvancedDocumentPropertiesA(HWND hWnd
, HANDLE hPrinter
,
1630 PDEVMODEA pDevModeOutput
,
1631 PDEVMODEA pDevModeInput
);
1632 LONG WINAPI
AdvancedDocumentPropertiesW(HWND hWnd
, HANDLE hPrinter
,
1634 PDEVMODEW pDevModeOutput
,
1635 PDEVMODEW pDevModeInput
);
1636 #define AdvancedDocumentProperties WINELIB_NAME_AW(AdvancedDocumentProperties)
1638 DWORD WINAPI
GetPrinterDataA(HANDLE hPrinter
, LPSTR pValueName
, LPDWORD pType
,
1639 LPBYTE pData
, DWORD nSize
, LPDWORD pcbNeeded
);
1640 DWORD WINAPI
GetPrinterDataW(HANDLE hPrinter
, LPWSTR pValueName
, LPDWORD pType
,
1641 LPBYTE pData
, DWORD nSize
, LPDWORD pcbNeeded
);
1642 #define GetPrinterData WINELIB_NAME_AW(GetPrinterData)
1644 DWORD WINAPI
GetPrinterDataExA(HANDLE hPrinter
, LPCSTR pKeyName
,
1645 LPCSTR pValueName
, LPDWORD pType
,
1646 LPBYTE pData
, DWORD nSize
, LPDWORD pcbNeeded
);
1647 DWORD WINAPI
GetPrinterDataExW(HANDLE hPrinter
, LPCWSTR pKeyName
,
1648 LPCWSTR pValueName
, LPDWORD pType
,
1649 LPBYTE pData
, DWORD nSize
, LPDWORD pcbNeeded
);
1650 #define GetPrinterDataEx WINELIB_NAME_AW(GetPrinterDataEx)
1652 DWORD WINAPI
DeletePrinterDataExA(HANDLE hPrinter
, LPCSTR pKeyName
,
1654 DWORD WINAPI
DeletePrinterDataExW(HANDLE hPrinter
, LPCWSTR pKeyName
,
1655 LPCWSTR pValueName
);
1656 #define DeletePrinterDataEx WINELIB_NAME_AW(DeletePrinterDataEx)
1658 DWORD WINAPI
SetPrinterDataA(HANDLE hPrinter
, LPSTR pValueName
, DWORD Type
,
1659 LPBYTE pData
, DWORD cbData
);
1660 DWORD WINAPI
SetPrinterDataW(HANDLE hPrinter
, LPWSTR pValueName
, DWORD Type
,
1661 LPBYTE pData
, DWORD cbData
);
1662 #define SetPrinterData WINELIB_NAME_AW(SetPrinterData)
1664 DWORD WINAPI
SetPrinterDataExA(HANDLE hPrinter
, LPCSTR pKeyName
,
1665 LPCSTR pValueName
, DWORD Type
,
1666 LPBYTE pData
, DWORD cbData
);
1667 DWORD WINAPI
SetPrinterDataExW(HANDLE hPrinter
, LPCWSTR pKeyName
,
1668 LPCWSTR pValueName
, DWORD Type
,
1669 LPBYTE pData
, DWORD cbData
);
1670 #define SetPrinterDataEx WINELIB_NAME_AW(SetPrinterDataEx)
1672 DWORD WINAPI
WaitForPrinterChange(HANDLE hPrinter
, DWORD Flags
);
1673 HANDLE WINAPI
FindFirstPrinterChangeNotification(HANDLE hPrinter
,
1676 LPVOID pPrinterNotifyOptions
);
1677 BOOL WINAPI
FindNextPrinterChangeNotification(HANDLE hChange
,
1680 LPVOID
*ppPrinterNotifyInfo
);
1681 BOOL WINAPI
FreePrinterNotifyInfo(PPRINTER_NOTIFY_INFO pPrinterNotifyInfo
);
1682 BOOL WINAPI
FindClosePrinterChangeNotification(HANDLE hChange
);
1684 DWORD WINAPI
PrinterMessageBoxA(HANDLE hPrinter
, DWORD Error
, HWND hWnd
,
1685 LPSTR pText
, LPSTR pCaption
, DWORD dwType
);
1686 DWORD WINAPI
PrinterMessageBoxW(HANDLE hPrinter
, DWORD Error
, HWND hWnd
,
1687 LPWSTR pText
, LPWSTR pCaption
, DWORD dwType
);
1688 #define PrinterMessageBox WINELIB_NAME_AW(PrinterMessageBox)
1690 BOOL WINAPI
AddFormA(HANDLE hPrinter
, DWORD Level
, LPBYTE pForm
);
1691 BOOL WINAPI
AddFormW(HANDLE hPrinter
, DWORD Level
, LPBYTE pForm
);
1692 #define AddForm WINELIB_NAME_AW(AddForm)
1694 BOOL WINAPI
DeleteFormA(HANDLE hPrinter
, LPSTR pFormName
);
1695 BOOL WINAPI
DeleteFormW(HANDLE hPrinter
, LPWSTR pFormName
);
1696 #define DeleteForm WINELIB_NAME_AW(DeleteForm)
1698 BOOL WINAPI
GetFormA(HANDLE hPrinter
, LPSTR pFormName
, DWORD Level
,
1699 LPBYTE pForm
, DWORD cbBuf
, LPDWORD pcbNeeded
);
1700 BOOL WINAPI
GetFormW(HANDLE hPrinter
, LPWSTR pFormName
, DWORD Level
,
1701 LPBYTE pForm
, DWORD cbBuf
, LPDWORD pcbNeeded
);
1702 #define GetForm WINELIB_NAME_AW(GetForm)
1704 BOOL WINAPI
SetFormA(HANDLE hPrinter
, LPSTR pFormName
, DWORD Level
,
1706 BOOL WINAPI
SetFormW(HANDLE hPrinter
, LPWSTR pFormName
, DWORD Level
,
1708 #define SetForm WINELIB_NAME_AW(SetForm)
1710 BOOL WINAPI
EnumFormsA(HANDLE hPrinter
, DWORD Level
, LPBYTE pForm
, DWORD cbBuf
,
1711 LPDWORD pcbNeeded
, LPDWORD pcReturned
);
1712 BOOL WINAPI
EnumFormsW(HANDLE hPrinter
, DWORD Level
, LPBYTE pForm
, DWORD cbBuf
,
1713 LPDWORD pcbNeeded
, LPDWORD pcReturned
);
1714 #define EnumForms WINELIB_NAME_AW(EnumForms)
1716 BOOL WINAPI
EnumMonitorsA(LPSTR pName
, DWORD Level
, LPBYTE pMonitors
,
1717 DWORD cbBuf
, LPDWORD pcbNeeded
, LPDWORD pcReturned
);
1718 BOOL WINAPI
EnumMonitorsW(LPWSTR pName
, DWORD Level
, LPBYTE pMonitors
,
1719 DWORD cbBuf
, LPDWORD pcbNeeded
, LPDWORD pcReturned
);
1720 #define EnumMonitors WINELIB_NAME_AW(EnumMonitors)
1722 DWORD WINAPI
EnumPrinterDataA( HANDLE hPrinter
, DWORD dwIndex
, LPSTR pValueName
,
1723 DWORD cbValueName
, LPDWORD pcbValueName
, LPDWORD pType
, LPBYTE pData
,
1724 DWORD cbData
, LPDWORD pcbData
);
1725 DWORD WINAPI
EnumPrinterDataW( HANDLE hPrinter
, DWORD dwIndex
, LPWSTR pValueName
,
1726 DWORD cbValueName
, LPDWORD pcbValueName
, LPDWORD pType
, LPBYTE pData
,
1727 DWORD cbData
, LPDWORD pcbData
);
1728 #define EnumPrinterData WINELIB_NAME_AW(EnumPrinterData)
1730 BOOL WINAPI
AddMonitorA(LPSTR pName
, DWORD Level
, LPBYTE pMonitors
);
1731 BOOL WINAPI
AddMonitorW(LPWSTR pName
, DWORD Level
, LPBYTE pMonitors
);
1732 #define AddMonitor WINELIB_NAME_AW(AddMonitor)
1734 BOOL WINAPI
DeleteMonitorA(LPSTR pName
, LPSTR pEnvironment
,
1735 LPSTR pMonitorName
);
1736 BOOL WINAPI
DeleteMonitorW(LPWSTR pName
, LPWSTR pEnvironment
,
1737 LPWSTR pMonitorName
);
1738 #define DeleteMonitor WINELIB_NAME_AW(DeleteMonitor)
1740 BOOL WINAPI
EnumPortsA(LPSTR pName
, DWORD Level
, LPBYTE pPorts
,
1741 DWORD cbBuf
, LPDWORD pcbNeeded
, LPDWORD pcReturned
);
1742 BOOL WINAPI
EnumPortsW(LPWSTR pName
, DWORD Level
, LPBYTE pPorts
,
1743 DWORD cbBuf
, LPDWORD pcbNeeded
, LPDWORD pcReturned
);
1744 #define EnumPorts WINELIB_NAME_AW(EnumPorts)
1746 BOOL WINAPI
AddPortA(LPSTR pName
, HWND hWnd
, LPSTR pMonitorName
);
1747 BOOL WINAPI
AddPortW(LPWSTR pName
, HWND hWnd
, LPWSTR pMonitorName
);
1748 #define AddPort WINELIB_NAME_AW(AddPort)
1750 BOOL WINAPI
AddPortExA(LPSTR
, DWORD
, LPBYTE
, LPSTR
);
1751 BOOL WINAPI
AddPortExW(LPWSTR
, DWORD
, LPBYTE
, LPWSTR
);
1752 #define AddPortEx WINELIB_NAME_AW(AddPortEx)
1754 BOOL WINAPI
ConfigurePortA(LPSTR pName
, HWND hWnd
, LPSTR pPortName
);
1755 BOOL WINAPI
ConfigurePortW(LPWSTR pName
, HWND hWnd
, LPWSTR pPortName
);
1756 #define ConfigurePort WINELIB_NAME_AW(ConfigurePort)
1758 BOOL WINAPI
DeletePortA(LPSTR pName
, HWND hWnd
, LPSTR pPortName
);
1759 BOOL WINAPI
DeletePortW(LPWSTR pName
, HWND hWnd
, LPWSTR pPortName
);
1760 #define DeletePort WINELIB_NAME_AW(DeletePort)
1762 BOOL WINAPI
SetPortA(LPSTR pName
, LPSTR pPortName
, DWORD dwLevel
,
1764 BOOL WINAPI
SetPortW(LPWSTR pName
, LPWSTR pPortName
, DWORD dwLevel
,
1766 #define SetPort WINELIB_NAME_AW(SetPort)
1768 BOOL WINAPI
AddPrinterConnectionA(LPSTR pName
);
1769 BOOL WINAPI
AddPrinterConnectionW(LPWSTR pName
);
1770 #define AddPrinterConnection WINELIB_NAME_AW(AddPrinterConnection)
1772 BOOL WINAPI
DeletePrinterConnectionA(LPSTR pName
);
1773 BOOL WINAPI
DeletePrinterConnectionW(LPWSTR pName
);
1774 #define DeletePrinterConnection WINELIB_NAME_AW(DeletePrinterConnection)
1776 HANDLE WINAPI
ConnectToPrinterDlg(HWND hwnd
, DWORD Flags
);
1778 BOOL WINAPI
AddPrintProvidorA(LPSTR pName
, DWORD Level
, LPBYTE pProvidorInfo
);
1779 BOOL WINAPI
AddPrintProvidorW(LPWSTR pName
, DWORD Level
, LPBYTE pProvidorInfo
);
1780 #define AddPrintProvidor WINELIB_NAME_AW(AddPrintProvidor)
1782 BOOL WINAPI
DeletePrintProvidorA(LPSTR pName
, LPSTR pEnvironment
,
1783 LPSTR pPrintProvidorName
);
1784 BOOL WINAPI
DeletePrintProvidorW(LPWSTR pName
, LPWSTR pEnvironment
,
1785 LPWSTR pPrintProvidorName
);
1786 #define DeletePrintProvidor WINELIB_NAME_AW(DeletePrintProvidor)
1788 DWORD WINAPI
EnumPrinterDataExA(HANDLE hPrinter
, LPCSTR pKeyName
,
1789 LPBYTE pEnumValues
, DWORD cbEnumValues
,
1790 LPDWORD pcbEnumValues
, LPDWORD pnEnumValues
);
1791 DWORD WINAPI
EnumPrinterDataExW(HANDLE hPrinter
, LPCWSTR pKeyName
,
1792 LPBYTE pEnumValues
, DWORD cbEnumValues
,
1793 LPDWORD pcbEnumValues
, LPDWORD pnEnumValues
);
1794 #define EnumPrinterDataEx WINELIB_NAME_AW(EnumPrinterDataEx)
1796 LONG WINAPI
ExtDeviceMode( HWND hWnd
, HANDLE hInst
, LPDEVMODEA pDevModeOutput
,
1797 LPSTR pDeviceName
, LPSTR pPort
, LPDEVMODEA pDevModeInput
, LPSTR pProfile
,
1800 LPSTR WINAPI
StartDocDlgA(HANDLE hPrinter
, DOCINFOA
*doc
);
1801 LPWSTR WINAPI
StartDocDlgW(HANDLE hPrinter
, DOCINFOW
*doc
);
1802 #define StartDocDlg WINELIB_NAME_AW(StartDocDlg)
1804 BOOL WINAPI
XcvDataW(HANDLE hXcv
, LPCWSTR pszDataName
, PBYTE pInputData
,
1805 DWORD cbInputData
, PBYTE pOutputData
, DWORD cbOutputData
,
1806 PDWORD pcbOutputNeeded
, PDWORD pdwStatus
);
1812 #endif /* __WINE_WINSPOOL_H */