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
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
130 #define DI_READ_SPOOL_JOB 3
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
293 typedef struct _PRINTER_DEFAULTSA
{
296 ACCESS_MASK DesiredAccess
;
297 } PRINTER_DEFAULTSA
, *LPPRINTER_DEFAULTSA
;
299 typedef struct _PRINTER_DEFAULTSW
{
302 ACCESS_MASK DesiredAccess
;
303 } PRINTER_DEFAULTSW
, *LPPRINTER_DEFAULTSW
;
305 DECL_WINELIB_TYPE_AW(PRINTER_DEFAULTS
)
306 DECL_WINELIB_TYPE_AW(LPPRINTER_DEFAULTS
)
308 typedef struct _DRIVER_INFO_1A
{
310 } DRIVER_INFO_1A
, *PDRIVER_INFO_1A
, *LPDRIVER_INFO_1A
;
312 typedef struct _DRIVER_INFO_1W
{
314 } DRIVER_INFO_1W
, *PDRIVER_INFO_1W
, *LPDRIVER_INFO_1W
;
316 DECL_WINELIB_TYPE_AW(DRIVER_INFO_1
)
317 DECL_WINELIB_TYPE_AW(PDRIVER_INFO_1
)
318 DECL_WINELIB_TYPE_AW(LPDRIVER_INFO_1
)
320 typedef struct _DRIVER_INFO_2A
{
327 } DRIVER_INFO_2A
, *PDRIVER_INFO_2A
, *LPDRIVER_INFO_2A
;
329 typedef struct _DRIVER_INFO_2W
{
336 } DRIVER_INFO_2W
, *PDRIVER_INFO_2W
, *LPDRIVER_INFO_2W
;
338 DECL_WINELIB_TYPE_AW(DRIVER_INFO_2
)
339 DECL_WINELIB_TYPE_AW(PDRIVER_INFO_2
)
340 DECL_WINELIB_TYPE_AW(LPDRIVER_INFO_2
)
342 typedef struct _DRIVER_INFO_3A
{
350 LPSTR pDependentFiles
;
352 LPSTR pDefaultDataType
;
353 } DRIVER_INFO_3A
, *PDRIVER_INFO_3A
, *LPDRIVER_INFO_3A
;
355 typedef struct _DRIVER_INFO_3W
{
363 LPWSTR pDependentFiles
;
365 LPWSTR pDefaultDataType
;
366 } DRIVER_INFO_3W
, *PDRIVER_INFO_3W
, *LPDRIVER_INFO_3W
;
368 DECL_WINELIB_TYPE_AW(DRIVER_INFO_3
)
369 DECL_WINELIB_TYPE_AW(PDRIVER_INFO_3
)
370 DECL_WINELIB_TYPE_AW(LPDRIVER_INFO_3
)
372 typedef struct _DRIVER_INFO_4A
{
380 LPSTR pDependentFiles
;
382 LPSTR pDefaultDataType
;
383 LPSTR pszzPreviousNames
;
384 } DRIVER_INFO_4A
, *PDRIVER_INFO_4A
, *LPDRIVER_INFO_4A
;
386 typedef struct _DRIVER_INFO_4W
{
394 LPWSTR pDependentFiles
;
396 LPWSTR pDefaultDataType
;
397 LPWSTR pszzPreviousNames
;
398 } DRIVER_INFO_4W
, *PDRIVER_INFO_4W
, *LPDRIVER_INFO_4W
;
400 DECL_WINELIB_TYPE_AW(DRIVER_INFO_4
)
401 DECL_WINELIB_TYPE_AW(PDRIVER_INFO_4
)
402 DECL_WINELIB_TYPE_AW(LPDRIVER_INFO_4
)
405 typedef struct _DRIVER_INFO_5A
{
412 DWORD dwDriverAttributes
;
413 DWORD dwConfigVersion
;
414 DWORD dwDriverVersion
;
415 } DRIVER_INFO_5A
, *PDRIVER_INFO_5A
, *LPDRIVER_INFO_5A
;
417 typedef struct _DRIVER_INFO_5W
{
424 DWORD dwDriverAttributes
;
425 DWORD dwConfigVersion
;
426 DWORD dwDriverVersion
;
427 } DRIVER_INFO_5W
, *PDRIVER_INFO_5W
, *LPDRIVER_INFO_5W
;
429 DECL_WINELIB_TYPE_AW(DRIVER_INFO_5
)
430 DECL_WINELIB_TYPE_AW(PDRIVER_INFO_5
)
431 DECL_WINELIB_TYPE_AW(LPDRIVER_INFO_5
)
433 typedef struct _DRIVER_INFO_6A
{
441 LPSTR pDependentFiles
;
443 LPSTR pDefaultDataType
;
444 LPSTR pszzPreviousNames
;
445 FILETIME ftDriverDate
;
446 DWORDLONG dwlDriverVersion
;
451 } DRIVER_INFO_6A
, *PDRIVER_INFO_6A
, *LPDRIVER_INFO_6A
;
453 typedef struct _DRIVER_INFO_6W
{
461 LPWSTR pDependentFiles
;
463 LPWSTR pDefaultDataType
;
464 LPWSTR pszzPreviousNames
;
465 FILETIME ftDriverDate
;
466 DWORDLONG dwlDriverVersion
;
469 LPWSTR pszHardwareID
;
471 } DRIVER_INFO_6W
, *PDRIVER_INFO_6W
, *LPDRIVER_INFO_6W
;
473 DECL_WINELIB_TYPE_AW(DRIVER_INFO_6
)
474 DECL_WINELIB_TYPE_AW(PDRIVER_INFO_6
)
475 DECL_WINELIB_TYPE_AW(LPDRIVER_INFO_6
)
478 typedef struct _PRINTER_INFO_1A
{
483 } PRINTER_INFO_1A
, *PPRINTER_INFO_1A
, *LPPRINTER_INFO_1A
;
485 typedef struct _PRINTER_INFO_1W
{
490 } PRINTER_INFO_1W
, *PPRINTER_INFO_1W
, *LPPRINTER_INFO_1W
;
492 DECL_WINELIB_TYPE_AW(PRINTER_INFO_1
)
493 DECL_WINELIB_TYPE_AW(PPRINTER_INFO_1
)
494 DECL_WINELIB_TYPE_AW(LPPRINTER_INFO_1
)
496 /* FIXME: winspool.h declares some structure members with the name Status.
497 * unfortunately <X11/ICE/ICElib.h> #defines Status to the type 'int'
498 * therefore the following hack */
501 typedef struct _PRINTER_INFO_2A
{
511 LPSTR pPrintProcessor
;
514 PSECURITY_DESCRIPTOR pSecurityDescriptor
;
517 DWORD DefaultPriority
;
523 } PRINTER_INFO_2A
, *PPRINTER_INFO_2A
, *LPPRINTER_INFO_2A
;
525 typedef struct _PRINTER_INFO_2W
{
535 LPWSTR pPrintProcessor
;
538 PSECURITY_DESCRIPTOR pSecurityDescriptor
;
541 DWORD DefaultPriority
;
547 } PRINTER_INFO_2W
, *PPRINTER_INFO_2W
, *LPPRINTER_INFO_2W
;
549 DECL_WINELIB_TYPE_AW(PRINTER_INFO_2
)
550 DECL_WINELIB_TYPE_AW(PPRINTER_INFO_2
)
551 DECL_WINELIB_TYPE_AW(LPPRINTER_INFO_2
)
553 typedef struct _PRINTER_INFO_3
{
554 PSECURITY_DESCRIPTOR pSecurityDescriptor
;
555 } PRINTER_INFO_3
, *PPRINTER_INFO_3
, *LPPRINTER_INFO_3
;
557 typedef struct _PRINTER_INFO_4A
{
561 } PRINTER_INFO_4A
, *PPRINTER_INFO_4A
, *LPPRINTER_INFO_4A
;
563 typedef struct _PRINTER_INFO_4W
{
567 } PRINTER_INFO_4W
, *PPRINTER_INFO_4W
, *LPPRINTER_INFO_4W
;
569 DECL_WINELIB_TYPE_AW(PRINTER_INFO_4
)
570 DECL_WINELIB_TYPE_AW(PPRINTER_INFO_4
)
571 DECL_WINELIB_TYPE_AW(LPPRINTER_INFO_4
)
573 typedef struct _PRINTER_INFO_5A
{
577 DWORD DeviceNotSelectedTimeout
;
578 DWORD TransmissionRetryTimeout
;
579 } PRINTER_INFO_5A
, *PPRINTER_INFO_5A
, *LPPRINTER_INFO_5A
;
581 typedef struct _PRINTER_INFO_5W
{
585 DWORD DeviceNotSelectedTimeout
;
586 DWORD TransmissionRetryTimeout
;
587 } PRINTER_INFO_5W
, *PPRINTER_INFO_5W
, *LPPRINTER_INFO_5W
;
589 DECL_WINELIB_TYPE_AW(PRINTER_INFO_5
)
590 DECL_WINELIB_TYPE_AW(PPRINTER_INFO_5
)
591 DECL_WINELIB_TYPE_AW(LPPRINTER_INFO_5
)
593 typedef struct _PRINTER_INFO_6
{
595 } PRINTER_INFO_6
, *PPRINTER_INFO_6
, *LPPRINTER_INFO_6
;
597 typedef struct _PRINTER_INFO_7A
{
600 } PRINTER_INFO_7A
, *PPRINTER_INFO_7A
, *LPPRINTER_INFO_7A
;
602 typedef struct _PRINTER_INFO_7W
{
603 LPWSTR pszObjectGUID
;
605 } PRINTER_INFO_7W
, *PPRINTER_INFO_7W
, *LPPRINTER_INFO_7W
;
607 DECL_WINELIB_TYPE_AW(PRINTER_INFO_7
)
608 DECL_WINELIB_TYPE_AW(PPRINTER_INFO_7
)
609 DECL_WINELIB_TYPE_AW(LPPRINTER_INFO_7
)
611 typedef struct _PRINTER_INFO_8A
{
613 } PRINTER_INFO_8A
, *PPRINTER_INFO_8A
, *LPPRINTER_INFO_8A
;
615 typedef struct _PRINTER_INFO_8W
{
617 } PRINTER_INFO_8W
, *PPRINTER_INFO_8W
, *LPPRINTER_INFO_8W
;
619 DECL_WINELIB_TYPE_AW(PRINTER_INFO_8
)
620 DECL_WINELIB_TYPE_AW(PPRINTER_INFO_8
)
621 DECL_WINELIB_TYPE_AW(LPPRINTER_INFO_8
)
623 typedef struct _PRINTER_INFO_9A
{
625 } PRINTER_INFO_9A
, *PPRINTER_INFO_9A
, *LPPRINTER_INFO_9A
;
627 typedef struct _PRINTER_INFO_9W
{
629 } PRINTER_INFO_9W
, *PPRINTER_INFO_9W
, *LPPRINTER_INFO_9W
;
631 DECL_WINELIB_TYPE_AW(PRINTER_INFO_9
)
632 DECL_WINELIB_TYPE_AW(PPRINTER_INFO_9
)
633 DECL_WINELIB_TYPE_AW(LPPRINTER_INFO_9
)
636 typedef struct _JOB_INFO_1A
{
649 SYSTEMTIME Submitted
;
650 } JOB_INFO_1A
, *PJOB_INFO_1A
, *LPJOB_INFO_1A
;
652 typedef struct _JOB_INFO_1W
{
665 SYSTEMTIME Submitted
;
666 } JOB_INFO_1W
, *PJOB_INFO_1W
, *LPJOB_INFO_1W
;
668 DECL_WINELIB_TYPE_AW(JOB_INFO_1
)
669 DECL_WINELIB_TYPE_AW(PJOB_INFO_1
)
670 DECL_WINELIB_TYPE_AW(LPJOB_INFO_1
)
672 typedef struct _JOB_INFO_2A
{
680 LPSTR pPrintProcessor
;
685 PSECURITY_DESCRIPTOR pSecurityDescriptor
;
693 SYSTEMTIME Submitted
;
696 } JOB_INFO_2A
, *PJOB_INFO_2A
, *LPJOB_INFO_2A
;
698 typedef struct _JOB_INFO_2W
{
706 LPWSTR pPrintProcessor
;
711 PSECURITY_DESCRIPTOR pSecurityDescriptor
;
719 SYSTEMTIME Submitted
;
722 } JOB_INFO_2W
, *PJOB_INFO_2W
, *LPJOB_INFO_2W
;
724 DECL_WINELIB_TYPE_AW(JOB_INFO_2
)
725 DECL_WINELIB_TYPE_AW(PJOB_INFO_2
)
726 DECL_WINELIB_TYPE_AW(LPJOB_INFO_2
)
728 typedef struct _JOB_INFO_3
{
732 } JOB_INFO_3
, *PJOB_INFO_3
, *LPJOB_INFO_3
;
734 typedef struct _ADDJOB_INFO_1A
{
737 } ADDJOB_INFO_1A
, *PADDJOB_INFO_1A
, *LPADDJOB_INFO_1A
;
739 typedef struct _ADDJOB_INFO_1W
{
742 } ADDJOB_INFO_1W
, *PADDJOB_INFO_1W
, *LPADDJOB_INFO_1W
;
744 DECL_WINELIB_TYPE_AW(ADDJOB_INFO_1
)
745 DECL_WINELIB_TYPE_AW(PADDJOB_INFO_1
)
746 DECL_WINELIB_TYPE_AW(LPADDJOB_INFO_1
)
748 typedef struct _DOC_INFO_1A
{
752 } DOC_INFO_1A
, *PDOC_INFO_1A
, *LPDOC_INFO_1A
;
754 typedef struct _DOC_INFO_1W
{
758 } DOC_INFO_1W
, *PDOC_INFO_1W
, *LPDOC_INFO_1W
;
760 DECL_WINELIB_TYPE_AW(DOC_INFO_1
)
761 DECL_WINELIB_TYPE_AW(PDOC_INFO_1
)
762 DECL_WINELIB_TYPE_AW(LPDOC_INFO_1
)
764 typedef struct _DOC_INFO_2A
{
770 } DOC_INFO_2A
, *PDOC_INFO_2A
, *LPDOC_INFO_2A
;
772 typedef struct _DOC_INFO_2W
{
778 } DOC_INFO_2W
, *PDOC_INFO_2W
, *LPDOC_INFO_2W
;
780 DECL_WINELIB_TYPE_AW(DOC_INFO_2
)
781 DECL_WINELIB_TYPE_AW(PDOC_INFO_2
)
782 DECL_WINELIB_TYPE_AW(LPDOC_INFO_2
)
784 typedef struct _FORM_INFO_1A
{
789 } FORM_INFO_1A
, *PFORM_INFO_1A
, *LPFORM_INFO_1A
;
791 typedef struct _FORM_INFO_1W
{
796 } FORM_INFO_1W
, *PFORM_INFO_1W
, *LPFORM_INFO_1W
;
798 DECL_WINELIB_TYPE_AW(FORM_INFO_1
)
799 DECL_WINELIB_TYPE_AW(PFORM_INFO_1
)
800 DECL_WINELIB_TYPE_AW(LPFORM_INFO_1
)
802 typedef struct _PRINTPROCESSOR_INFO_1A
{
804 } PRINTPROCESSOR_INFO_1A
, *PPRINTPROCESSOR_INFO_1A
,
805 *LPPRINTPROCESSOR_INFO_1A
;
807 typedef struct _PRINTPROCESSOR_INFO_1W
{
809 } PRINTPROCESSOR_INFO_1W
, *PPRINTPROCESSOR_INFO_1W
,
810 *LPPRINTPROCESSOR_INFO_1W
;
812 DECL_WINELIB_TYPE_AW(PRINTPROCESSOR_INFO_1
)
813 DECL_WINELIB_TYPE_AW(PPRINTPROCESSOR_INFO_1
)
814 DECL_WINELIB_TYPE_AW(LPPRINTPROCESSOR_INFO_1
)
816 typedef struct _PORT_INFO_1A
{
818 } PORT_INFO_1A
, *PPORT_INFO_1A
, *LPPORT_INFO_1A
;
820 typedef struct _PORT_INFO_1W
{
822 } PORT_INFO_1W
, *PPORT_INFO_1W
, *LPPORT_INFO_1W
;
824 DECL_WINELIB_TYPE_AW(PORT_INFO_1
)
825 DECL_WINELIB_TYPE_AW(PPORT_INFO_1
)
826 DECL_WINELIB_TYPE_AW(LPPORT_INFO_1
)
828 typedef struct _PORT_INFO_2A
{
834 } PORT_INFO_2A
, *PPORT_INFO_2A
, *LPPORT_INFO_2A
;
836 typedef struct _PORT_INFO_2W
{
842 } PORT_INFO_2W
, *PPORT_INFO_2W
, *LPPORT_INFO_2W
;
844 DECL_WINELIB_TYPE_AW(PORT_INFO_2
)
845 DECL_WINELIB_TYPE_AW(PPORT_INFO_2
)
846 DECL_WINELIB_TYPE_AW(LPPORT_INFO_2
)
848 typedef struct _PORT_INFO_3A
{
852 } PORT_INFO_3A
, *PPORT_INFO_3A
, *LPPORT_INFO_3A
;
854 typedef struct _PORT_INFO_3W
{
858 } PORT_INFO_3W
, *PPORT_INFO_3W
, *LPPORT_INFO_3W
;
860 DECL_WINELIB_TYPE_AW(PORT_INFO_3
)
861 DECL_WINELIB_TYPE_AW(PPORT_INFO_3
)
862 DECL_WINELIB_TYPE_AW(LPPORT_INFO_3
)
864 typedef struct _MONITOR_INFO_1A
{
866 } MONITOR_INFO_1A
, *PMONITOR_INFO_1A
, *LPMONITOR_INFO_1A
;
868 typedef struct _MONITOR_INFO_1W
{
870 } MONITOR_INFO_1W
, *PMONITOR_INFO_1W
, *LPMONITOR_INFO_1W
;
872 DECL_WINELIB_TYPE_AW(MONITOR_INFO_1
)
873 DECL_WINELIB_TYPE_AW(PMONITOR_INFO_1
)
874 DECL_WINELIB_TYPE_AW(LPMONITOR_INFO_1
)
879 typedef struct _MONITOR_INFO_2A
{
883 } MONITOR_INFO_2A
, *PMONITOR_INFO_2A
, *LPMONITOR_INFO_2A
;
885 typedef struct _MONITOR_INFO_2W
{
889 } MONITOR_INFO_2W
, *PMONITOR_INFO_2W
, *LPMONITOR_INFO_2W
;
891 DECL_WINELIB_TYPE_AW(MONITOR_INFO_2
)
892 DECL_WINELIB_TYPE_AW(PMONITOR_INFO_2
)
893 DECL_WINELIB_TYPE_AW(LPMONITOR_INFO_2
)
895 typedef struct _DATATYPES_INFO_1A
{
897 } DATATYPES_INFO_1A
, *PDATATYPES_INFO_1A
, *LPDATATYPES_INFO_1A
;
899 typedef struct _DATATYPES_INFO_1W
{
901 } DATATYPES_INFO_1W
, *PDATATYPES_INFO_1W
, *LPDATATYPES_INFO_1W
;
903 DECL_WINELIB_TYPE_AW(DATATYPES_INFO_1
)
904 DECL_WINELIB_TYPE_AW(PDATATYPES_INFO_1
)
905 DECL_WINELIB_TYPE_AW(LPDATATYPES_INFO_1
)
907 typedef struct _PRINTER_NOTIFY_OPTIONS_TYPE
{
914 } PRINTER_NOTIFY_OPTIONS_TYPE
, *PPRINTER_NOTIFY_OPTIONS_TYPE
,
915 *LPPRINTER_NOTIFY_OPTIONS_TYPE
;
917 typedef struct _PRINTER_NOTIFY_OPTIONS
{
921 PPRINTER_NOTIFY_OPTIONS_TYPE pTypes
;
922 } PRINTER_NOTIFY_OPTIONS
, *PPRINTER_NOTIFY_OPTIONS
, *LPPRINTER_NOTIFY_OPTIONS
;
924 typedef struct _PRINTER_NOTIFY_INFO_DATA
{
936 } PRINTER_NOTIFY_INFO_DATA
, *PPRINTER_NOTIFY_INFO_DATA
,
937 *LPPRINTER_NOTIFY_INFO_DATA
;
939 typedef struct _PRINTER_NOTIFY_INFO
{
943 PRINTER_NOTIFY_INFO_DATA aData
[1];
944 } PRINTER_NOTIFY_INFO
, *PPRINTER_NOTIFY_INFO
, *LPPRINTER_NOTIFY_INFO
;
946 typedef struct _PROVIDOR_INFO_1A
{
950 } PROVIDOR_INFO_1A
, *PPROVIDOR_INFO_1A
, *LPPROVIDOR_INFO_1A
;
952 typedef struct _PROVIDOR_INFO_1W
{
956 } PROVIDOR_INFO_1W
, *PPROVIDOR_INFO_1W
, *LPPROVIDOR_INFO_1W
;
958 DECL_WINELIB_TYPE_AW(PROVIDOR_INFO_1
)
959 DECL_WINELIB_TYPE_AW(PPROVIDOR_INFO_1
)
960 DECL_WINELIB_TYPE_AW(LPPROVIDOR_INFO_1
)
962 typedef struct _PRINTER_ENUM_VALUESA
{
968 } PRINTER_ENUM_VALUESA
, *PPRINTER_ENUM_VALUESA
;
970 typedef struct _PRINTER_ENUM_VALUESW
{
976 } PRINTER_ENUM_VALUESW
, *PPRINTER_ENUM_VALUESW
;
978 DECL_WINELIB_TYPE_AW(PRINTER_ENUM_VALUES
)
979 DECL_WINELIB_TYPE_AW(PPRINTER_ENUM_VALUES
)
992 typedef struct _BINARY_CONTAINER
{
995 } BINARY_CONTAINER
, *PBINARY_CONTAINER
;
997 typedef struct _BIDI_DATA
{
1005 BINARY_CONTAINER biData
;
1007 } BIDI_DATA
, *LPBIDI_DATA
, *PBIDI_DATA
;
1009 typedef struct _BIDI_REQUEST_DATA
{
1013 } BIDI_REQUEST_DATA
, *LPBIDI_REQUEST_DATA
, *PBIDI_REQUEST_DATA
;
1015 typedef struct _BIDI_REQUEST_CONTAINER
{
1019 BIDI_REQUEST_DATA aData
[1];
1020 } BIDI_REQUEST_CONTAINER
, *LPBIDI_REQUEST_CONTAINER
, *PBIDI_REQUEST_CONTAINER
;
1022 typedef struct _BIDI_RESPONSE_DATA
{
1027 } BIDI_RESPONSE_DATA
, *LPBIDI_RESPONSE_DATA
, *PBIDI_RESPONSE_DATA
;
1029 typedef struct _BIDI_RESPONSE_CONTAINER
{
1033 BIDI_RESPONSE_DATA aData
[1];
1034 } BIDI_RESPONSE_CONTAINER
, *LPBIDI_RESPONSE_CONTAINER
, *PBIDI_RESPONSE_CONTAINER
;
1037 INT WINAPI
DeviceCapabilitiesA(LPCSTR pDevice
,LPCSTR pPort
,WORD fwCapability
,
1038 LPSTR pOutput
, LPDEVMODEA pDevMode
);
1039 INT WINAPI
DeviceCapabilitiesW(LPCWSTR pDevice
, LPCWSTR pPort
,
1040 WORD fwCapability
, LPWSTR pOutput
,
1041 const DEVMODEW
*pDevMode
);
1043 #define DeviceCapabilities WINELIB_NAME_AW(DeviceCapabilities)
1045 LONG WINAPI
DocumentPropertiesA(HWND hWnd
,HANDLE hPrinter
,
1046 LPSTR pDeviceName
, LPDEVMODEA pDevModeOutput
,
1047 LPDEVMODEA pDevModeInput
,DWORD fMode
);
1048 LONG WINAPI
DocumentPropertiesW(HWND hWnd
, HANDLE hPrinter
,
1050 LPDEVMODEW pDevModeOutput
,
1051 LPDEVMODEW pDevModeInput
, DWORD fMode
);
1053 #define DocumentProperties WINELIB_NAME_AW(DocumentProperties)
1055 BOOL WINAPI
OpenPrinterA(LPSTR lpPrinterName
,HANDLE
*phPrinter
,
1056 LPPRINTER_DEFAULTSA pDefault
);
1057 BOOL WINAPI
OpenPrinterW(LPWSTR lpPrinterName
,HANDLE
*phPrinter
,
1058 LPPRINTER_DEFAULTSW pDefault
);
1060 #define OpenPrinter WINELIB_NAME_AW(OpenPrinter)
1062 BOOL WINAPI
ResetPrinterA(HANDLE hPrinter
, LPPRINTER_DEFAULTSA pDefault
);
1063 BOOL WINAPI
ResetPrinterW(HANDLE hPrinter
, LPPRINTER_DEFAULTSW pDefault
);
1064 #define ResetPrinter WINELIB_NAME_AW(ResetPrinter)
1066 BOOL WINAPI
ClosePrinter (HANDLE phPrinter
);
1068 BOOL WINAPI
EnumJobsA(HANDLE hPrinter
, DWORD FirstJob
, DWORD NoJobs
,
1069 DWORD Level
, LPBYTE pJob
, DWORD cbBuf
, LPDWORD pcbNeeded
,
1070 LPDWORD pcReturned
);
1071 BOOL WINAPI
EnumJobsW(HANDLE hPrinter
, DWORD FirstJob
, DWORD NoJobs
,
1072 DWORD Level
, LPBYTE pJob
, DWORD cbBuf
, LPDWORD pcbNeeded
,
1073 LPDWORD pcReturned
);
1074 #define EnumJobs WINELIB_NAME_AW(EnumJobs)
1076 BOOL WINAPI
EnumPrintersA(DWORD dwType
, LPSTR lpszName
,
1077 DWORD dwLevel
, LPBYTE lpbPrinters
,
1078 DWORD cbBuf
, LPDWORD lpdwNeeded
,
1079 LPDWORD lpdwReturned
);
1080 BOOL WINAPI
EnumPrintersW(DWORD dwType
, LPWSTR lpszName
,
1081 DWORD dwLevel
, LPBYTE lpbPrinters
,
1082 DWORD cbBuf
, LPDWORD lpdwNeeded
,
1083 LPDWORD lpdwReturned
);
1084 #define EnumPrinters WINELIB_NAME_AW(EnumPrinters)
1086 BOOL WINAPI
PrinterProperties(HWND hWnd
, HANDLE hPrinter
);
1088 BOOL WINAPI
GetPrinterDriverDirectoryA(LPSTR
,LPSTR
,DWORD
,LPBYTE
,DWORD
,LPDWORD
);
1089 BOOL WINAPI
GetPrinterDriverDirectoryW(LPWSTR
,LPWSTR
,DWORD
,LPBYTE
,DWORD
,LPDWORD
);
1090 #define GetPrinterDriverDirectory WINELIB_NAME_AW(GetPrinterDriverDirectory)
1092 BOOL WINAPI
GetPrinterDriverA(HANDLE hPrinter
, LPSTR pEnvironment
,
1093 DWORD Level
, LPBYTE pDriverInfo
,
1094 DWORD cbBuf
, LPDWORD pcbNeeded
);
1095 BOOL WINAPI
GetPrinterDriverW(HANDLE hPrinter
, LPWSTR pEnvironment
,
1096 DWORD Level
, LPBYTE pDriverInfo
,
1097 DWORD cbBuf
, LPDWORD pcbNeeded
);
1098 #define GetPrinterDriver WINELIB_NAME_AW(GetPrinterDriver)
1100 BOOL WINAPI
SetJobA(HANDLE hPrinter
, DWORD JobID
, DWORD Level
, LPBYTE pJob
,
1102 BOOL WINAPI
SetJobW(HANDLE hPrinter
, DWORD JobID
, DWORD Level
, LPBYTE pJob
,
1104 #define SetJob WINELIB_NAME_AW(SetJob)
1106 BOOL WINAPI
GetJobA(HANDLE hPrinter
, DWORD JobID
, DWORD Level
, LPBYTE pJob
,
1107 DWORD cbBuf
, LPDWORD pcbNeeded
);
1108 BOOL WINAPI
GetJobW(HANDLE hPrinter
, DWORD JobID
, DWORD Level
, LPBYTE pJob
,
1109 DWORD cbBuf
, LPDWORD pcbNeeded
);
1110 #define GetJob WINELIB_NAME_AW(GetJob)
1112 HANDLE WINAPI
AddPrinterA(LPSTR pName
, DWORD Level
, LPBYTE pPrinter
);
1113 HANDLE WINAPI
AddPrinterW(LPWSTR pName
, DWORD Level
, LPBYTE pPrinter
);
1114 #define AddPrinter WINELIB_NAME_AW(AddPrinter)
1116 BOOL WINAPI
DeletePrinter(HANDLE hPrinter
);
1118 BOOL WINAPI
SetPrinterA(HANDLE hPrinter
, DWORD Level
, LPBYTE pPrinter
,
1120 BOOL WINAPI
SetPrinterW(HANDLE hPrinter
, DWORD Level
, LPBYTE pPrinter
,
1122 #define SetPrinter WINELIB_NAME_AW(SetPrinter)
1124 BOOL WINAPI
GetPrinterA(HANDLE hPrinter
, DWORD Level
, LPBYTE pPrinter
,
1125 DWORD cbBuf
, LPDWORD pcbNeeded
);
1126 BOOL WINAPI
GetPrinterW(HANDLE hPrinter
, DWORD Level
, LPBYTE pPrinter
,
1127 DWORD cbBuf
, LPDWORD pcbNeeded
);
1128 #define GetPrinter WINELIB_NAME_AW(GetPrinter)
1130 BOOL WINAPI
AddPrinterDriverA(LPSTR pName
, DWORD Level
, LPBYTE pDriverInfo
);
1131 BOOL WINAPI
AddPrinterDriverW(LPWSTR pName
, DWORD Level
, LPBYTE pDriverInfo
);
1132 #define AddPrinterDriver WINELIB_NAME_AW(AddPrinterDriver)
1134 BOOL WINAPI
AddPrinterDriverExA(LPSTR pName
, DWORD Level
, LPBYTE pDriverInfo
,
1135 DWORD dwFileCopyFlags
);
1136 BOOL WINAPI
AddPrinterDriverExW(LPWSTR pName
, DWORD Level
, LPBYTE pDriverInfo
,
1137 DWORD dwFileCopyFlags
);
1138 #define AddPrinterDriverEx WINELIB_NAME_AW(AddPrinterDriverEx)
1140 BOOL WINAPI
EnumPrinterDriversA(LPSTR pName
, LPSTR pEnvironment
, DWORD Level
,
1141 LPBYTE pDriverInfo
, DWORD cbBuf
,
1142 LPDWORD pcbNeeded
, LPDWORD pcbReturned
);
1143 BOOL WINAPI
EnumPrinterDriversW(LPWSTR pName
, LPWSTR pEnvironment
, DWORD Level
,
1144 LPBYTE pDriverInfo
, DWORD cbBuf
,
1145 LPDWORD pcbNeeded
, LPDWORD pcbReturned
);
1146 #define EnumPrinterDrivers WINELIB_NAME_AW(EnumPrinterDrivers)
1148 BOOL WINAPI
GetDefaultPrinterA(LPSTR pName
, LPDWORD pcbNameSize
);
1149 BOOL WINAPI
GetDefaultPrinterW(LPWSTR pName
, LPDWORD pcbNameSize
);
1150 #define GetDefaultPrinter WINELIB_NAME_AW(GetDefaultPrinter)
1152 BOOL WINAPI
DeletePrinterDriverA(LPSTR pName
, LPSTR pEnvironment
,
1154 BOOL WINAPI
DeletePrinterDriverW(LPWSTR pName
, LPWSTR pEnvironment
,
1155 LPWSTR pDriverName
);
1156 #define DeletePrinterDriver WINELIB_NAME_AW(DeletePrinterDriver)
1158 BOOL WINAPI
DeletePrinterDriverExA(LPSTR pName
, LPSTR pEnvironment
,
1159 LPSTR pDriverName
, DWORD dwDeleteFlag
, DWORD dwVersionFlag
);
1160 BOOL WINAPI
DeletePrinterDriverExW(LPWSTR pName
, LPWSTR pEnvironment
,
1161 LPWSTR pDriverName
, DWORD dwDeleteFlag
, DWORD dwVersionFlag
);
1162 #define DeletePrinterDriverEx WINELIB_NAME_AW(DeletePrinterDriverEx)
1164 BOOL WINAPI
AddPrintProcessorA(LPSTR pName
, LPSTR pEnvironment
,
1165 LPSTR pPathName
, LPSTR pPrintProcessorName
);
1166 BOOL WINAPI
AddPrintProcessorW(LPWSTR pName
, LPWSTR pEnvironment
,
1167 LPWSTR pPathName
, LPWSTR pPrintProcessorName
);
1168 #define AddPrintProcessor WINELIB_NAME_AW(AddPrintProcessor)
1170 BOOL WINAPI
EnumPrintProcessorsA(LPSTR pName
, LPSTR pEnvironment
,
1171 DWORD Level
, LPBYTE pPrintProcessorInfo
,
1172 DWORD cbBuf
, LPDWORD pcbNeeded
,
1173 LPDWORD pcbReturned
);
1174 BOOL WINAPI
EnumPrintProcessorsW(LPWSTR pName
, LPWSTR pEnvironment
,
1175 DWORD Level
, LPBYTE pPrintProcessorInfo
,
1176 DWORD cbBuf
, LPDWORD pcbNeeded
,
1177 LPDWORD pcbReturned
);
1178 #define EnumPrintProcessors WINELIB_NAME_AW(EnumPrintProcessors)
1180 BOOL WINAPI
GetPrintProcessorDirectoryA(LPSTR pName
, LPSTR pEnvironment
,
1182 LPBYTE pPrintProcessorInfo
,
1183 DWORD cbBuf
, LPDWORD pcbNeeded
);
1185 BOOL WINAPI
GetPrintProcessorDirectoryW(LPWSTR pName
, LPWSTR pEnvironment
,
1187 LPBYTE pPrintProcessorInfo
,
1188 DWORD cbBuf
, LPDWORD pcbNeeded
);
1189 #define GetPrintProcessorDirectory WINELIB_NAME_AW(GetPrintProcessorDirectory)
1191 BOOL WINAPI
EnumPrintProcessorDatatypesA(LPSTR pName
,
1192 LPSTR pPrintProcessorName
,
1193 DWORD Level
, LPBYTE pDatatypes
,
1194 DWORD cbBuf
, LPDWORD pcbNeeded
,
1195 LPDWORD pcbReturned
);
1196 BOOL WINAPI
EnumPrintProcessorDatatypesW(LPWSTR pName
,
1197 LPWSTR pPrintProcessorName
,
1198 DWORD Level
, LPBYTE pDatatypes
,
1199 DWORD cbBuf
, LPDWORD pcbNeeded
,
1200 LPDWORD pcbReturned
);
1201 #define EnumPrintProcessorDatatypes WINELIB_NAME_AW(EnumPrintProcessorDatatypes)
1203 BOOL WINAPI
DeletePrintProcessorA(LPSTR pName
, LPSTR pEnvironment
,
1204 LPSTR pPrintProcessorName
);
1205 BOOL WINAPI
DeletePrintProcessorW(LPWSTR pName
, LPWSTR pEnvironment
,
1206 LPWSTR pPrintProcessorName
);
1207 #define DeletePrintProcessor WINELIB_NAME_AW(DeletePrintProcessor)
1209 DWORD WINAPI
StartDocPrinterA(HANDLE hPrinter
, DWORD Level
, LPBYTE pDocInfo
);
1210 DWORD WINAPI
StartDocPrinterW(HANDLE hPrinter
, DWORD Level
, LPBYTE pDocInfo
);
1211 #define StartDocPrinter WINELIB_NAME_AW(StartDocPrinter)
1213 BOOL WINAPI
StartPagePrinter(HANDLE hPrinter
);
1214 BOOL WINAPI
WritePrinter(HANDLE hPrinter
, LPVOID pBuf
, DWORD cbBuf
,
1216 BOOL WINAPI
EndPagePrinter(HANDLE hPrinter
);
1217 BOOL WINAPI
AbortPrinter(HANDLE hPrinter
);
1218 BOOL WINAPI
ReadPrinter(HANDLE hPrinter
, LPVOID pBuf
, DWORD cbBuf
,
1219 LPDWORD pNoBytesRead
);
1220 BOOL WINAPI
EndDocPrinter(HANDLE hPrinter
);
1222 BOOL WINAPI
AddJobA(HANDLE hPrinter
, DWORD Level
, LPBYTE pData
, DWORD cbBuf
,
1224 BOOL WINAPI
AddJobW(HANDLE hPrinter
, DWORD Level
, LPBYTE pData
, DWORD cbBuf
,
1226 #define AddJob WINELIB_NAME_AW(AddJob)
1228 BOOL WINAPI
ScheduleJob(HANDLE hPrinter
, DWORD JobID
);
1230 LONG WINAPI
AdvancedDocumentPropertiesA(HWND hWnd
, HANDLE hPrinter
,
1232 PDEVMODEA pDevModeOutput
,
1233 PDEVMODEA pDevModeInput
);
1234 LONG WINAPI
AdvancedDocumentPropertiesW(HWND hWnd
, HANDLE hPrinter
,
1236 PDEVMODEW pDevModeOutput
,
1237 PDEVMODEW pDevModeInput
);
1238 #define AdvancedDocumentProperties WINELIB_NAME_AW(AdvancedDocumentProperties)
1240 DWORD WINAPI
GetPrinterDataA(HANDLE hPrinter
, LPSTR pValueName
, LPDWORD pType
,
1241 LPBYTE pData
, DWORD nSize
, LPDWORD pcbNeeded
);
1242 DWORD WINAPI
GetPrinterDataW(HANDLE hPrinter
, LPWSTR pValueName
, LPDWORD pType
,
1243 LPBYTE pData
, DWORD nSize
, LPDWORD pcbNeeded
);
1244 #define GetPrinterData WINELIB_NAME_AW(GetPrinterData)
1246 DWORD WINAPI
GetPrinterDataExA(HANDLE hPrinter
, LPCSTR pKeyName
,
1247 LPCSTR pValueName
, LPDWORD pType
,
1248 LPBYTE pData
, DWORD nSize
, LPDWORD pcbNeeded
);
1249 DWORD WINAPI
GetPrinterDataExW(HANDLE hPrinter
, LPCWSTR pKeyName
,
1250 LPCWSTR pValueName
, LPDWORD pType
,
1251 LPBYTE pData
, DWORD nSize
, LPDWORD pcbNeeded
);
1252 #define GetPrinterDataEx WINELIB_NAME_AW(GetPrinterDataEx)
1254 DWORD WINAPI
DeletePrinterDataExA(HANDLE hPrinter
, LPCSTR pKeyName
,
1256 DWORD WINAPI
DeletePrinterDataExW(HANDLE hPrinter
, LPCWSTR pKeyName
,
1257 LPCWSTR pValueName
);
1258 #define DeletePrinterDataEx WINELIB_NAME_AW(DeletePrinterDataEx)
1260 DWORD WINAPI
SetPrinterDataA(HANDLE hPrinter
, LPSTR pValueName
, DWORD Type
,
1261 LPBYTE pData
, DWORD cbData
);
1262 DWORD WINAPI
SetPrinterDataW(HANDLE hPrinter
, LPWSTR pValueName
, DWORD Type
,
1263 LPBYTE pData
, DWORD cbData
);
1264 #define SetPrinterData WINELIB_NAME_AW(SetPrinterData)
1266 DWORD WINAPI
SetPrinterDataExA(HANDLE hPrinter
, LPCSTR pKeyName
,
1267 LPCSTR pValueName
, DWORD Type
,
1268 LPBYTE pData
, DWORD cbData
);
1269 DWORD WINAPI
SetPrinterDataExW(HANDLE hPrinter
, LPCWSTR pKeyName
,
1270 LPCWSTR pValueName
, DWORD Type
,
1271 LPBYTE pData
, DWORD cbData
);
1272 #define SetPrinterDataEx WINELIB_NAME_AW(SetPrinterDataEx)
1274 DWORD WINAPI
WaitForPrinterChange(HANDLE hPrinter
, DWORD Flags
);
1275 HANDLE WINAPI
FindFirstPrinterChangeNotification(HANDLE hPrinter
,
1278 LPVOID pPrinterNotifyOptions
);
1279 BOOL WINAPI
FindNextPrinterChangeNotification(HANDLE hChange
,
1282 LPVOID
*ppPrinterNotifyInfo
);
1283 BOOL WINAPI
FreePrinterNotifyInfo(PPRINTER_NOTIFY_INFO pPrinterNotifyInfo
);
1284 BOOL WINAPI
FindClosePrinterChangeNotification(HANDLE hChange
);
1286 DWORD WINAPI
PrinterMessageBoxA(HANDLE hPrinter
, DWORD Error
, HWND hWnd
,
1287 LPSTR pText
, LPSTR pCaption
, DWORD dwType
);
1288 DWORD WINAPI
PrinterMessageBoxW(HANDLE hPrinter
, DWORD Error
, HWND hWnd
,
1289 LPWSTR pText
, LPWSTR pCaption
, DWORD dwType
);
1290 #define PrinterMessageBox WINELIB_NAME_AW(PrinterMessageBox)
1292 BOOL WINAPI
AddFormA(HANDLE hPrinter
, DWORD Level
, LPBYTE pForm
);
1293 BOOL WINAPI
AddFormW(HANDLE hPrinter
, DWORD Level
, LPBYTE pForm
);
1294 #define AddForm WINELIB_NAME_AW(AddForm)
1296 BOOL WINAPI
DeleteFormA(HANDLE hPrinter
, LPSTR pFormName
);
1297 BOOL WINAPI
DeleteFormW(HANDLE hPrinter
, LPWSTR pFormName
);
1298 #define DeleteForm WINELIB_NAME_AW(DeleteForm)
1300 BOOL WINAPI
GetFormA(HANDLE hPrinter
, LPSTR pFormName
, DWORD Level
,
1301 LPBYTE pForm
, DWORD cbBuf
, LPDWORD pcbNeeded
);
1302 BOOL WINAPI
GetFormW(HANDLE hPrinter
, LPWSTR pFormName
, DWORD Level
,
1303 LPBYTE pForm
, DWORD cbBuf
, LPDWORD pcbNeeded
);
1304 #define GetForm WINELIB_NAME_AW(GetForm)
1306 BOOL WINAPI
SetFormA(HANDLE hPrinter
, LPSTR pFormName
, DWORD Level
,
1308 BOOL WINAPI
SetFormW(HANDLE hPrinter
, LPWSTR pFormName
, DWORD Level
,
1310 #define SetForm WINELIB_NAME_AW(SetForm)
1312 BOOL WINAPI
EnumFormsA(HANDLE hPrinter
, DWORD Level
, LPBYTE pForm
, DWORD cbBuf
,
1313 LPDWORD pcbNeeded
, LPDWORD pcReturned
);
1314 BOOL WINAPI
EnumFormsW(HANDLE hPrinter
, DWORD Level
, LPBYTE pForm
, DWORD cbBuf
,
1315 LPDWORD pcbNeeded
, LPDWORD pcReturned
);
1316 #define EnumForms WINELIB_NAME_AW(EnumForms)
1318 BOOL WINAPI
EnumMonitorsA(LPSTR pName
, DWORD Level
, LPBYTE pMonitors
,
1319 DWORD cbBuf
, LPDWORD pcbNeeded
, LPDWORD pcReturned
);
1320 BOOL WINAPI
EnumMonitorsW(LPWSTR pName
, DWORD Level
, LPBYTE pMonitors
,
1321 DWORD cbBuf
, LPDWORD pcbNeeded
, LPDWORD pcReturned
);
1322 #define EnumMonitors WINELIB_NAME_AW(EnumMonitors)
1324 DWORD WINAPI
EnumPrinterDataA( HANDLE hPrinter
, DWORD dwIndex
, LPSTR pValueName
,
1325 DWORD cbValueName
, LPDWORD pcbValueName
, LPDWORD pType
, LPBYTE pData
,
1326 DWORD cbData
, LPDWORD pcbData
);
1327 DWORD WINAPI
EnumPrinterDataW( HANDLE hPrinter
, DWORD dwIndex
, LPWSTR pValueName
,
1328 DWORD cbValueName
, LPDWORD pcbValueName
, LPDWORD pType
, LPBYTE pData
,
1329 DWORD cbData
, LPDWORD pcbData
);
1330 #define EnumPrinterData WINELIB_NAME_AW(EnumPrinterData)
1332 BOOL WINAPI
AddMonitorA(LPSTR pName
, DWORD Level
, LPBYTE pMonitors
);
1333 BOOL WINAPI
AddMonitorW(LPWSTR pName
, DWORD Level
, LPBYTE pMonitors
);
1334 #define AddMonitor WINELIB_NAME_AW(AddMonitor)
1336 BOOL WINAPI
DeleteMonitorA(LPSTR pName
, LPSTR pEnvironment
,
1337 LPSTR pMonitorName
);
1338 BOOL WINAPI
DeleteMonitorW(LPWSTR pName
, LPWSTR pEnvironment
,
1339 LPWSTR pMonitorName
);
1340 #define DeleteMonitor WINELIB_NAME_AW(DeleteMonitor)
1342 BOOL WINAPI
EnumPortsA(LPSTR pName
, DWORD Level
, LPBYTE pPorts
,
1343 DWORD cbBuf
, LPDWORD pcbNeeded
, LPDWORD pcReturned
);
1344 BOOL WINAPI
EnumPortsW(LPWSTR pName
, DWORD Level
, LPBYTE pPorts
,
1345 DWORD cbBuf
, LPDWORD pcbNeeded
, LPDWORD pcReturned
);
1346 #define EnumPorts WINELIB_NAME_AW(EnumPorts)
1348 BOOL WINAPI
AddPortA(LPSTR pName
, HWND hWnd
, LPSTR pMonitorName
);
1349 BOOL WINAPI
AddPortW(LPWSTR pName
, HWND hWnd
, LPWSTR pMonitorName
);
1350 #define AddPort WINELIB_NAME_AW(AddPort)
1352 BOOL WINAPI
AddPortExA(LPSTR
, DWORD
, LPBYTE
, LPSTR
);
1353 BOOL WINAPI
AddPortExW(LPWSTR
, DWORD
, LPBYTE
, LPWSTR
);
1354 #define AddPortEx WINELIB_NAME_AW(AddPortEx)
1356 BOOL WINAPI
ConfigurePortA(LPSTR pName
, HWND hWnd
, LPSTR pPortName
);
1357 BOOL WINAPI
ConfigurePortW(LPWSTR pName
, HWND hWnd
, LPWSTR pPortName
);
1358 #define ConfigurePort WINELIB_NAME_AW(ConfigurePort)
1360 BOOL WINAPI
DeletePortA(LPSTR pName
, HWND hWnd
, LPSTR pPortName
);
1361 BOOL WINAPI
DeletePortW(LPWSTR pName
, HWND hWnd
, LPWSTR pPortName
);
1362 #define DeletePort WINELIB_NAME_AW(DeletePort)
1364 BOOL WINAPI
SetPortA(LPSTR pName
, LPSTR pPortName
, DWORD dwLevel
,
1366 BOOL WINAPI
SetPortW(LPWSTR pName
, LPWSTR pPortName
, DWORD dwLevel
,
1368 #define SetPort WINELIB_NAME_AW(SetPort)
1370 BOOL WINAPI
AddPrinterConnectionA(LPSTR pName
);
1371 BOOL WINAPI
AddPrinterConnectionW(LPWSTR pName
);
1372 #define AddPrinterConnection WINELIB_NAME_AW(AddPrinterConnection)
1374 BOOL WINAPI
DeletePrinterConnectionA(LPSTR pName
);
1375 BOOL WINAPI
DeletePrinterConnectionW(LPWSTR pName
);
1376 #define DeletePrinterConnection WINELIB_NAME_AW(DeletePrinterConnection)
1378 HANDLE WINAPI
ConnectToPrinterDlg(HWND hwnd
, DWORD Flags
);
1380 BOOL WINAPI
AddPrintProvidorA(LPSTR pName
, DWORD Level
, LPBYTE pProvidorInfo
);
1381 BOOL WINAPI
AddPrintProvidorW(LPWSTR pName
, DWORD Level
, LPBYTE pProvidorInfo
);
1382 #define AddPrintProvidor WINELIB_NAME_AW(AddPrintProvidor)
1384 BOOL WINAPI
DeletePrintProvidorA(LPSTR pName
, LPSTR pEnvironment
,
1385 LPSTR pPrintProvidorName
);
1386 BOOL WINAPI
DeletePrintProvidorW(LPWSTR pName
, LPWSTR pEnvironment
,
1387 LPWSTR pPrintProvidorName
);
1388 #define DeletePrintProvidor WINELIB_NAME_AW(DeletePrintProvidor)
1390 DWORD WINAPI
EnumPrinterDataExA(HANDLE hPrinter
, LPCSTR pKeyName
,
1391 LPBYTE pEnumValues
, DWORD cbEnumValues
,
1392 LPDWORD pcbEnumValues
, LPDWORD pnEnumValues
);
1393 DWORD WINAPI
EnumPrinterDataExW(HANDLE hPrinter
, LPCWSTR pKeyName
,
1394 LPBYTE pEnumValues
, DWORD cbEnumValues
,
1395 LPDWORD pcbEnumValues
, LPDWORD pnEnumValues
);
1396 #define EnumPrinterDataEx WINELIB_NAME_AW(EnumPrinterDataEx)
1398 LONG WINAPI
ExtDeviceMode( HWND hWnd
, HANDLE hInst
, LPDEVMODEA pDevModeOutput
,
1399 LPSTR pDeviceName
, LPSTR pPort
, LPDEVMODEA pDevModeInput
, LPSTR pProfile
,
1402 LPSTR WINAPI
StartDocDlgA(HANDLE hPrinter
, DOCINFOA
*doc
);
1403 LPWSTR WINAPI
StartDocDlgW(HANDLE hPrinter
, DOCINFOW
*doc
);
1404 #define StartDocDlg WINELIB_NAME_AW(StartDocDlg)
1406 BOOL WINAPI
XcvDataW(HANDLE hXcv
, LPCWSTR pszDataName
, PBYTE pInputData
,
1407 DWORD cbInputData
, PBYTE pOutputData
, DWORD cbOutputData
,
1408 PDWORD pcbOutputNeeded
, PDWORD pdwStatus
);
1414 #endif /* __WINE_WINSPOOL_H */