VirtualBox

source: vbox/trunk/src/VBox/Additions/WINNT/Graphics/Wine/include/winspool.h@ 19982

Last change on this file since 19982 was 16477, checked in by vboxsync, 16 years ago

LGPL disclaimer by filemuncher

  • Property svn:eol-style set to native
File size: 49.5 KB
Line 
1/* Definitions for printing
2 *
3 * Copyright 1998 Huw Davies, Andreas Mohr
4 *
5 * Portions Copyright (c) 1999 Corel Corporation
6 * (Paul Quinn, Albert Den Haan)
7 *
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.
12 *
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.
17 *
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
21 */
22
23/*
24 * Sun LGPL Disclaimer: For the avoidance of doubt, except that if any license choice
25 * other than GPL or LGPL is available it will apply instead, Sun elects to use only
26 * the Lesser General Public License version 2.1 (LGPLv2) at this time for any software where
27 * a choice of LGPL license versions is made available with the language indicating
28 * that LGPLv2 or any later version may be used, or where a choice of which version
29 * of the LGPL is applied is otherwise unspecified.
30 */
31#ifndef __WINE_WINSPOOL_H
32#define __WINE_WINSPOOL_H
33
34#ifdef __cplusplus
35extern "C" {
36#endif
37
38/* DEFINES */
39
40#define PRINTER_ATTRIBUTE_QUEUED 0x00000001
41#define PRINTER_ATTRIBUTE_DIRECT 0x00000002
42#define PRINTER_ATTRIBUTE_DEFAULT 0x00000004
43#define PRINTER_ATTRIBUTE_SHARED 0x00000008
44#define PRINTER_ATTRIBUTE_NETWORK 0x00000010
45#define PRINTER_ATTRIBUTE_HIDDEN 0x00000020
46#define PRINTER_ATTRIBUTE_LOCAL 0x00000040
47#define PRINTER_ATTRIBUTE_ENABLE_DEVQ 0x00000080
48#define PRINTER_ATTRIBUTE_KEEPPRINTEDJOBS 0x00000100
49#define PRINTER_ATTRIBUTE_DO_COMPLETE_FIRST 0x00000200
50#define PRINTER_ATTRIBUTE_WORK_OFFLINE 0x00000400
51#define PRINTER_ATTRIBUTE_ENABLE_BIDI 0x00000800
52#define PRINTER_ATTRIBUTE_RAW_ONLY 0x00001000
53#define PRINTER_ATTRIBUTE_PUBLISHED 0x00002000
54
55#define PRINTER_CONTROL_PAUSE 1
56#define PRINTER_CONTROL_RESUME 2
57#define PRINTER_CONTROL_PURGE 3
58#define PRINTER_CONTROL_SET_STATUS 4
59
60#define PRINTER_ENUM_DEFAULT 0x00000001
61#define PRINTER_ENUM_LOCAL 0x00000002
62#define PRINTER_ENUM_CONNECTIONS 0x00000004
63#define PRINTER_ENUM_FAVORITE 0x00000004
64#define PRINTER_ENUM_NAME 0x00000008
65#define PRINTER_ENUM_REMOTE 0x00000010
66#define PRINTER_ENUM_SHARED 0x00000020
67#define PRINTER_ENUM_NETWORK 0x00000040
68
69#define PRINTER_ENUM_EXPAND 0x00004000
70#define PRINTER_ENUM_CONTAINER 0x00008000
71
72#define PRINTER_ENUM_ICONMASK 0x00ff0000
73#define PRINTER_ENUM_ICON1 0x00010000
74#define PRINTER_ENUM_ICON2 0x00020000
75#define PRINTER_ENUM_ICON3 0x00040000
76#define PRINTER_ENUM_ICON4 0x00080000
77#define PRINTER_ENUM_ICON5 0x00100000
78#define PRINTER_ENUM_ICON6 0x00200000
79#define PRINTER_ENUM_ICON7 0x00400000
80#define PRINTER_ENUM_ICON8 0x00800000
81#define PRINTER_ENUM_HIDE 0x01000000
82
83
84/* various printer statuses */
85#define PRINTER_STATUS_PAUSED 0x00000001
86#define PRINTER_STATUS_ERROR 0x00000002
87#define PRINTER_STATUS_PENDING_DELETION 0x00000004
88#define PRINTER_STATUS_PAPER_JAM 0x00000008
89#define PRINTER_STATUS_PAPER_OUT 0x00000010
90#define PRINTER_STATUS_MANUAL_FEED 0x00000020
91#define PRINTER_STATUS_PAPER_PROBLEM 0x00000040
92#define PRINTER_STATUS_OFFLINE 0x00000080
93#define PRINTER_STATUS_IO_ACTIVE 0x00000100
94#define PRINTER_STATUS_BUSY 0x00000200
95#define PRINTER_STATUS_PRINTING 0x00000400
96#define PRINTER_STATUS_OUTPUT_BIN_FULL 0x00000800
97#define PRINTER_STATUS_NOT_AVAILABLE 0x00001000
98#define PRINTER_STATUS_WAITING 0x00002000
99#define PRINTER_STATUS_PROCESSING 0x00004000
100#define PRINTER_STATUS_INITIALIZING 0x00008000
101#define PRINTER_STATUS_WARMING_UP 0x00010000
102#define PRINTER_STATUS_TONER_LOW 0x00020000
103#define PRINTER_STATUS_NO_TONER 0x00040000
104#define PRINTER_STATUS_PAGE_PUNT 0x00080000
105#define PRINTER_STATUS_USER_INTERVENTION 0x00100000
106#define PRINTER_STATUS_OUT_OF_MEMORY 0x00200000
107#define PRINTER_STATUS_DOOR_OPEN 0x00400000
108#define PRINTER_STATUS_SERVER_UNKNOWN 0x00800000
109#define PRINTER_STATUS_POWER_SAVE 0x01000000
110
111#define NO_PRIORITY 0
112#define MAX_PRIORITY 99
113#define MIN_PRIORITY 1
114#define DEF_PRIORITY 1
115
116#define JOB_CONTROL_PAUSE 1
117#define JOB_CONTROL_RESUME 2
118#define JOB_CONTROL_CANCEL 3
119#define JOB_CONTROL_RESTART 4
120#define JOB_CONTROL_DELETE 5
121#define JOB_CONTROL_SENT_TO_PRINTER 6
122#define JOB_CONTROL_LAST_PAGE_EJECTED 7
123
124#define JOB_STATUS_PAUSED 0x0001
125#define JOB_STATUS_ERROR 0x0002
126#define JOB_STATUS_DELETING 0x0004
127#define JOB_STATUS_SPOOLING 0x0008
128#define JOB_STATUS_PRINTING 0x0010
129#define JOB_STATUS_OFFLINE 0x0020
130#define JOB_STATUS_PAPEROUT 0x0040
131#define JOB_STATUS_PRINTED 0x0080
132#define JOB_STATUS_DELETED 0x0100
133#define JOB_STATUS_BLOCKED_DEVQ 0x0200
134#define JOB_STATUS_USER_INTERVENTION 0x0400
135
136#define JOB_POSITION_UNSPECIFIED 1
137
138#define DI_CHANNEL 1
139#define DI_READ_SPOOL_JOB 3
140
141#define FORM_USER 0
142#define FORM_BUILTIN 1
143#define FORM_PRINTER 2
144
145#define PORT_TYPE_WRITE 1
146#define PORT_TYPE_READ 2
147#define PORT_TYPE_REDIRECTED 4
148#define PORT_TYPE_NET_ATTACHED 8
149
150#define PORT_STATUS_TYPE_ERROR 1
151#define PORT_STATUS_TYPE_WARNING 2
152#define PORT_STATUS_TYPE_INFO 3
153
154#define PORT_STATUS_OFFLINE 1
155#define PORT_STATUS_PAPER_JAM 2
156#define PORT_STATUS_PAPER_OUT 3
157#define PORT_STATUS_OUTPUT_BIN_FULL 4
158#define PORT_STATUS_PAPER_PROBLEM 5
159#define PORT_STATUS_NO_TONER 6
160#define PORT_STATUS_DOOR_OPEN 7
161#define PORT_STATUS_USER_INTERVENTION 8
162#define PORT_STATUS_OUT_OF_MEMORY 9
163#define PORT_STATUS_TONER_LOW 10
164#define PORT_STATUS_WARMING_UP 11
165#define PORT_STATUS_POWER_SAVE 12
166
167#define PRINTER_NOTIFY_TYPE 0
168#define JOB_NOTIFY_TYPE 1
169
170#define PRINTER_NOTIFY_FIELD_SERVER_NAME 0x00
171#define PRINTER_NOTIFY_FIELD_PRINTER_NAME 0x01
172#define PRINTER_NOTIFY_FIELD_SHARE_NAME 0x02
173#define PRINTER_NOTIFY_FIELD_PORT_NAME 0x03
174#define PRINTER_NOTIFY_FIELD_DRIVER_NAME 0x04
175#define PRINTER_NOTIFY_FIELD_COMMENT 0x05
176#define PRINTER_NOTIFY_FIELD_LOCATION 0x06
177#define PRINTER_NOTIFY_FIELD_DEVMODE 0x07
178#define PRINTER_NOTIFY_FIELD_SEPFILE 0x08
179#define PRINTER_NOTIFY_FIELD_PRINT_PROCESSOR 0x09
180#define PRINTER_NOTIFY_FIELD_PARAMETERS 0x0a
181#define PRINTER_NOTIFY_FIELD_DATATYPE 0x0b
182#define PRINTER_NOTIFY_FIELD_SECURITY_DESCRIPTOR 0x0c
183#define PRINTER_NOTIFY_FIELD_ATTRIBUTES 0x0d
184#define PRINTER_NOTIFY_FIELD_PRIORITY 0x0e
185#define PRINTER_NOTIFY_FIELD_DEFAULT_PRIORITY 0x0f
186#define PRINTER_NOTIFY_FIELD_START_TIME 0x10
187#define PRINTER_NOTIFY_FIELD_UNTIL_TIME 0x11
188#define PRINTER_NOTIFY_FIELD_STATUS 0x12
189#define PRINTER_NOTIFY_FIELD_STATUS_STRING 0x13
190#define PRINTER_NOTIFY_FIELD_CJOBS 0x14
191#define PRINTER_NOTIFY_FIELD_AVERAGE_PPM 0x15
192#define PRINTER_NOTIFY_FIELD_TOTAL_PAGES 0x16
193#define PRINTER_NOTIFY_FIELD_PAGES_PRINTED 0x17
194#define PRINTER_NOTIFY_FIELD_TOTAL_BYTES 0x18
195#define PRINTER_NOTIFY_FIELD_BYTES_PRINTED 0x19
196
197#define JOB_NOTIFY_FIELD_PRINTER_NAME 0x00
198#define JOB_NOTIFY_FIELD_MACHINE_NAME 0x01
199#define JOB_NOTIFY_FIELD_PORT_NAME 0x02
200#define JOB_NOTIFY_FIELD_USER_NAME 0x03
201#define JOB_NOTIFY_FIELD_NOTIFY_NAME 0x04
202#define JOB_NOTIFY_FIELD_DATATYPE 0x05
203#define JOB_NOTIFY_FIELD_PRINT_PROCESSOR 0x06
204#define JOB_NOTIFY_FIELD_PARAMETERS 0x07
205#define JOB_NOTIFY_FIELD_DRIVER_NAME 0x08
206#define JOB_NOTIFY_FIELD_DEVMODE 0x09
207#define JOB_NOTIFY_FIELD_STATUS 0x0a
208#define JOB_NOTIFY_FIELD_STATUS_STRING 0x0b
209#define JOB_NOTIFY_FIELD_SECURITY_DESCRIPTOR 0x0c
210#define JOB_NOTIFY_FIELD_DOCUMENT 0x0d
211#define JOB_NOTIFY_FIELD_PRIORITY 0x0e
212#define JOB_NOTIFY_FIELD_POSITION 0x0f
213#define JOB_NOTIFY_FIELD_SUBMITTED 0x10
214#define JOB_NOTIFY_FIELD_START_TIME 0x11
215#define JOB_NOTIFY_FIELD_UNTIL_TIME 0x12
216#define JOB_NOTIFY_FIELD_TIME 0x13
217#define JOB_NOTIFY_FIELD_TOTAL_PAGES 0x14
218#define JOB_NOTIFY_FIELD_PAGES_PRINTED 0x15
219#define JOB_NOTIFY_FIELD_TOTAL_BYTES 0x16
220#define JOB_NOTIFY_FIELD_BYTES_PRINTED 0x17
221
222#define PRINTER_NOTIFY_OPTIONS_REFRESH 1
223#define PRINTER_NOTIFY_INFO_DISCARDED 1
224
225#define PRINTER_CHANGE_ADD_PRINTER 0x00000001
226#define PRINTER_CHANGE_SET_PRINTER 0x00000002
227#define PRINTER_CHANGE_DELETE_PRINTER 0x00000004
228#define PRINTER_CHANGE_FAILED_CONNECTION_PRINTER 0x00000008
229#define PRINTER_CHANGE_PRINTER 0x000000ff
230#define PRINTER_CHANGE_ADD_JOB 0x00000100
231#define PRINTER_CHANGE_SET_JOB 0x00000200
232#define PRINTER_CHANGE_DELETE_JOB 0x00000400
233#define PRINTER_CHANGE_WRITE_JOB 0x00000800
234#define PRINTER_CHANGE_JOB 0x0000ff00
235#define PRINTER_CHANGE_ADD_FORM 0x00010000
236#define PRINTER_CHANGE_SET_FORM 0x00020000
237#define PRINTER_CHANGE_DELETE_FORM 0x00040000
238#define PRINTER_CHANGE_FORM 0x00070000
239#define PRINTER_CHANGE_ADD_PORT 0x00100000
240#define PRINTER_CHANGE_CONFIGURE_PORT 0x00200000
241#define PRINTER_CHANGE_DELETE_PORT 0x00400000
242#define PRINTER_CHANGE_PORT 0x00700000
243#define PRINTER_CHANGE_ADD_PRINT_PROCESSOR 0x01000000
244#define PRINTER_CHANGE_DELETE_PRINTER_PROCESSOR 0x04000000
245#define PRINTER_CHANGE_PRINT_PROCESSOR 0x07000000
246#define PRINTER_CHANGE_ADD_PRINTER_DRIVER 0x10000000
247#define PRINTER_CHANGE_SET_PRINTER_DRIVER 0x20000000
248#define PRINTER_CHANGE_DELETE_PRINTER_DRIVER 0x40000000
249#define PRINTER_CHANGE_PRINTER_DRIVER 0x70000000
250#define PRINTER_CHANGE_TIMEOUT 0x80000000
251#define PRINTER_CHANGE_ALL 0x7777ffff
252
253#define PRINTER_ERROR_INFORMATION 0x80000000
254#define PRINTER_ERROR_WARNING 0x40000000
255#define PRINTER_ERROR_SEVERE 0x20000000
256
257#define PRINTER_ERROR_OUTODPAPER 0x00000001
258#define PRINTER_ERROR_JAM 0x00000002
259#define PRINTER_ERROR_OUTOFTONER 0x00000004
260
261/* Access Rights for Printserver, Printers and Printjobs */
262#define SERVER_ACCESS_ADMINISTER 0x00000001
263#define SERVER_ACCESS_ENUMERATE 0x00000002
264#define SERVER_READ (STANDARD_RIGHTS_READ | SERVER_ACCESS_ENUMERATE)
265#define SERVER_WRITE (STANDARD_RIGHTS_WRITE | \
266 SERVER_ACCESS_ADMINISTER | SERVER_ACCESS_ENUMERATE)
267#define SERVER_EXECUTE (STANDARD_RIGHTS_EXECUTE | SERVER_ACCESS_ENUMERATE)
268#define SERVER_ALL_ACCESS (STANDARD_RIGHTS_REQUIRED | \
269 SERVER_ACCESS_ADMINISTER | SERVER_ACCESS_ENUMERATE)
270
271#define PRINTER_ACCESS_ADMINISTER 0x00000004
272#define PRINTER_ACCESS_USE 0x00000008
273#define PRINTER_READ (STANDARD_RIGHTS_READ | PRINTER_ACCESS_USE)
274#define PRINTER_WRITE (STANDARD_RIGHTS_WRITE | PRINTER_ACCESS_USE)
275#define PRINTER_EXECUTE (STANDARD_RIGHTS_EXECUTE | PRINTER_ACCESS_USE)
276#define PRINTER_ALL_ACCESS (STANDARD_RIGHTS_REQUIRED | \
277 PRINTER_ACCESS_ADMINISTER | PRINTER_ACCESS_USE)
278
279#define JOB_ACCESS_ADMINISTER 0x00000010
280#define JOB_READ (STANDARD_RIGHTS_READ | JOB_ACCESS_ADMINISTER)
281#define JOB_WRITE (STANDARD_RIGHTS_WRITE | JOB_ACCESS_ADMINISTER)
282#define JOB_EXECUTE (STANDARD_RIGHTS_EXECUTE | JOB_ACCESS_ADMINISTER)
283#define JOB_ALL_ACCESS (STANDARD_RIGHTS_REQUIRED | JOB_ACCESS_ADMINISTER)
284
285
286/* Flags for printer drivers */
287#define DRIVER_KERNELMODE 0x00000001
288#define DRIVER_USERMODE 0x00000002
289
290#define APD_STRICT_UPGRADE 0x00000001
291#define APD_STRICT_DOWNGRADE 0x00000002
292#define APD_COPY_ALL_FILES 0x00000004
293#define APD_COPY_NEW_FILES 0x00000008
294#define APD_COPY_FROM_DIRECTORY 0x00000010
295
296#define DPD_DELETE_UNUSED_FILES 0x00000001
297#define DPD_DELETE_SPECIFIC_VERSION 0x00000002
298#define DPD_DELETE_ALL_FILES 0x00000004
299
300/* dwAction for PRINTER_INFO_7 */
301#define DSPRINT_PUBLISH 0x00000001
302#define DSPRINT_UPDATE 0x00000002
303#define DSPRINT_UNPUBLISH 0x00000004
304#define DSPRINT_REPUBLISH 0x00000008
305#define DSPRINT_PENDING 0x80000000
306
307/* ##################################### */
308
309/* TYPES */
310typedef struct _PRINTER_DEFAULTSA {
311 LPSTR pDatatype;
312 LPDEVMODEA pDevMode;
313 ACCESS_MASK DesiredAccess;
314} PRINTER_DEFAULTSA, *LPPRINTER_DEFAULTSA;
315
316typedef struct _PRINTER_DEFAULTSW {
317 LPWSTR pDatatype;
318 LPDEVMODEW pDevMode;
319 ACCESS_MASK DesiredAccess;
320} PRINTER_DEFAULTSW, *LPPRINTER_DEFAULTSW;
321
322DECL_WINELIB_TYPE_AW(PRINTER_DEFAULTS)
323DECL_WINELIB_TYPE_AW(LPPRINTER_DEFAULTS)
324
325typedef struct _DRIVER_INFO_1A {
326 LPSTR pName;
327} DRIVER_INFO_1A, *PDRIVER_INFO_1A, *LPDRIVER_INFO_1A;
328
329typedef struct _DRIVER_INFO_1W {
330 LPWSTR pName;
331} DRIVER_INFO_1W, *PDRIVER_INFO_1W, *LPDRIVER_INFO_1W;
332
333DECL_WINELIB_TYPE_AW(DRIVER_INFO_1)
334DECL_WINELIB_TYPE_AW(PDRIVER_INFO_1)
335DECL_WINELIB_TYPE_AW(LPDRIVER_INFO_1)
336
337typedef struct _DRIVER_INFO_2A {
338 DWORD cVersion;
339 LPSTR pName;
340 LPSTR pEnvironment;
341 LPSTR pDriverPath;
342 LPSTR pDataFile;
343 LPSTR pConfigFile;
344} DRIVER_INFO_2A, *PDRIVER_INFO_2A, *LPDRIVER_INFO_2A;
345
346typedef struct _DRIVER_INFO_2W {
347 DWORD cVersion;
348 LPWSTR pName;
349 LPWSTR pEnvironment;
350 LPWSTR pDriverPath;
351 LPWSTR pDataFile;
352 LPWSTR pConfigFile;
353} DRIVER_INFO_2W, *PDRIVER_INFO_2W, *LPDRIVER_INFO_2W;
354
355DECL_WINELIB_TYPE_AW(DRIVER_INFO_2)
356DECL_WINELIB_TYPE_AW(PDRIVER_INFO_2)
357DECL_WINELIB_TYPE_AW(LPDRIVER_INFO_2)
358
359typedef struct _DRIVER_INFO_3A {
360 DWORD cVersion;
361 LPSTR pName;
362 LPSTR pEnvironment;
363 LPSTR pDriverPath;
364 LPSTR pDataFile;
365 LPSTR pConfigFile;
366 LPSTR pHelpFile;
367 LPSTR pDependentFiles;
368 LPSTR pMonitorName;
369 LPSTR pDefaultDataType;
370} DRIVER_INFO_3A, *PDRIVER_INFO_3A, *LPDRIVER_INFO_3A;
371
372typedef struct _DRIVER_INFO_3W {
373 DWORD cVersion;
374 LPWSTR pName;
375 LPWSTR pEnvironment;
376 LPWSTR pDriverPath;
377 LPWSTR pDataFile;
378 LPWSTR pConfigFile;
379 LPWSTR pHelpFile;
380 LPWSTR pDependentFiles;
381 LPWSTR pMonitorName;
382 LPWSTR pDefaultDataType;
383} DRIVER_INFO_3W, *PDRIVER_INFO_3W, *LPDRIVER_INFO_3W;
384
385DECL_WINELIB_TYPE_AW(DRIVER_INFO_3)
386DECL_WINELIB_TYPE_AW(PDRIVER_INFO_3)
387DECL_WINELIB_TYPE_AW(LPDRIVER_INFO_3)
388
389typedef struct _DRIVER_INFO_4A {
390 DWORD cVersion;
391 LPSTR pName;
392 LPSTR pEnvironment;
393 LPSTR pDriverPath;
394 LPSTR pDataFile;
395 LPSTR pConfigFile;
396 LPSTR pHelpFile;
397 LPSTR pDependentFiles;
398 LPSTR pMonitorName;
399 LPSTR pDefaultDataType;
400 LPSTR pszzPreviousNames;
401} DRIVER_INFO_4A, *PDRIVER_INFO_4A, *LPDRIVER_INFO_4A;
402
403typedef struct _DRIVER_INFO_4W {
404 DWORD cVersion;
405 LPWSTR pName;
406 LPWSTR pEnvironment;
407 LPWSTR pDriverPath;
408 LPWSTR pDataFile;
409 LPWSTR pConfigFile;
410 LPWSTR pHelpFile;
411 LPWSTR pDependentFiles;
412 LPWSTR pMonitorName;
413 LPWSTR pDefaultDataType;
414 LPWSTR pszzPreviousNames;
415} DRIVER_INFO_4W, *PDRIVER_INFO_4W, *LPDRIVER_INFO_4W;
416
417DECL_WINELIB_TYPE_AW(DRIVER_INFO_4)
418DECL_WINELIB_TYPE_AW(PDRIVER_INFO_4)
419DECL_WINELIB_TYPE_AW(LPDRIVER_INFO_4)
420
421
422typedef struct _DRIVER_INFO_5A {
423 DWORD cVersion;
424 LPSTR pName;
425 LPSTR pEnvironment;
426 LPSTR pDriverPath;
427 LPSTR pDataFile;
428 LPSTR pConfigFile;
429 DWORD dwDriverAttributes;
430 DWORD dwConfigVersion;
431 DWORD dwDriverVersion;
432} DRIVER_INFO_5A, *PDRIVER_INFO_5A, *LPDRIVER_INFO_5A;
433
434typedef struct _DRIVER_INFO_5W {
435 DWORD cVersion;
436 LPWSTR pName;
437 LPWSTR pEnvironment;
438 LPWSTR pDriverPath;
439 LPWSTR pDataFile;
440 LPWSTR pConfigFile;
441 DWORD dwDriverAttributes;
442 DWORD dwConfigVersion;
443 DWORD dwDriverVersion;
444} DRIVER_INFO_5W, *PDRIVER_INFO_5W, *LPDRIVER_INFO_5W;
445
446DECL_WINELIB_TYPE_AW(DRIVER_INFO_5)
447DECL_WINELIB_TYPE_AW(PDRIVER_INFO_5)
448DECL_WINELIB_TYPE_AW(LPDRIVER_INFO_5)
449
450typedef struct _DRIVER_INFO_6A {
451 DWORD cVersion;
452 LPSTR pName;
453 LPSTR pEnvironment;
454 LPSTR pDriverPath;
455 LPSTR pDataFile;
456 LPSTR pConfigFile;
457 LPSTR pHelpFile;
458 LPSTR pDependentFiles;
459 LPSTR pMonitorName;
460 LPSTR pDefaultDataType;
461 LPSTR pszzPreviousNames;
462 FILETIME ftDriverDate;
463 DWORDLONG dwlDriverVersion;
464 LPSTR pszMfgName;
465 LPSTR pszOEMUrl;
466 LPSTR pszHardwareID;
467 LPSTR pszProvider;
468} DRIVER_INFO_6A, *PDRIVER_INFO_6A, *LPDRIVER_INFO_6A;
469
470typedef struct _DRIVER_INFO_6W {
471 DWORD cVersion;
472 LPWSTR pName;
473 LPWSTR pEnvironment;
474 LPWSTR pDriverPath;
475 LPWSTR pDataFile;
476 LPWSTR pConfigFile;
477 LPWSTR pHelpFile;
478 LPWSTR pDependentFiles;
479 LPWSTR pMonitorName;
480 LPWSTR pDefaultDataType;
481 LPWSTR pszzPreviousNames;
482 FILETIME ftDriverDate;
483 DWORDLONG dwlDriverVersion;
484 LPWSTR pszMfgName;
485 LPWSTR pszOEMUrl;
486 LPWSTR pszHardwareID;
487 LPWSTR pszProvider;
488} DRIVER_INFO_6W, *PDRIVER_INFO_6W, *LPDRIVER_INFO_6W;
489
490DECL_WINELIB_TYPE_AW(DRIVER_INFO_6)
491DECL_WINELIB_TYPE_AW(PDRIVER_INFO_6)
492DECL_WINELIB_TYPE_AW(LPDRIVER_INFO_6)
493
494/* DRIVER_INFO_7 is not defined in native winspool.h and not found in the www */
495
496typedef struct _DRIVER_INFO_8A {
497 DWORD cVersion;
498 LPSTR pName;
499 LPSTR pEnvironment;
500 LPSTR pDriverPath;
501 LPSTR pDataFile;
502 LPSTR pConfigFile;
503 LPSTR pHelpFile;
504 LPSTR pDependentFiles;
505 LPSTR pMonitorName;
506 LPSTR pDefaultDataType;
507 LPSTR pszzPreviousNames;
508 FILETIME ftDriverDate;
509 DWORDLONG dwlDriverVersion;
510 LPSTR pszMfgName;
511 LPSTR pszOEMUrl;
512 LPSTR pszHardwareID;
513 LPSTR pszProvider;
514 LPSTR pszPrintProcessor;
515 LPSTR pszVendorSetup;
516 LPSTR pszzColorProfiles;
517 LPSTR pszInfPath;
518 DWORD dwPrinterDriverAttributes;
519 LPSTR pszzCoreDriverDependencies;
520 FILETIME ftMinInboxDriverVerDate;
521 DWORDLONG dwlMinInboxDriverVerVersion;
522} DRIVER_INFO_8A, *PDRIVER_INFO_8A, *LPDRIVER_INFO_8A;
523
524typedef struct _DRIVER_INFO_8W {
525 DWORD cVersion;
526 LPWSTR pName;
527 LPWSTR pEnvironment;
528 LPWSTR pDriverPath;
529 LPWSTR pDataFile;
530 LPWSTR pConfigFile;
531 LPWSTR pHelpFile;
532 LPWSTR pDependentFiles;
533 LPWSTR pMonitorName;
534 LPWSTR pDefaultDataType;
535 LPWSTR pszzPreviousNames;
536 FILETIME ftDriverDate;
537 DWORDLONG dwlDriverVersion;
538 LPWSTR pszMfgName;
539 LPWSTR pszOEMUrl;
540 LPWSTR pszHardwareID;
541 LPWSTR pszProvider;
542 LPWSTR pszPrintProcessor;
543 LPWSTR pszVendorSetup;
544 LPWSTR pszzColorProfiles;
545 LPWSTR pszInfPath;
546 DWORD dwPrinterDriverAttributes;
547 LPWSTR pszzCoreDriverDependencies;
548 FILETIME ftMinInboxDriverVerDate;
549 DWORDLONG dwlMinInboxDriverVerVersion;
550} DRIVER_INFO_8W, *PDRIVER_INFO_8W, *LPDRIVER_INFO_8W;
551
552DECL_WINELIB_TYPE_AW(DRIVER_INFO_8)
553DECL_WINELIB_TYPE_AW(PDRIVER_INFO_8)
554DECL_WINELIB_TYPE_AW(LPDRIVER_INFO_8)
555
556
557typedef struct _PRINTER_INFO_1A {
558 DWORD Flags;
559 LPSTR pDescription;
560 LPSTR pName;
561 LPSTR pComment;
562} PRINTER_INFO_1A, *PPRINTER_INFO_1A, *LPPRINTER_INFO_1A;
563
564typedef struct _PRINTER_INFO_1W {
565 DWORD Flags;
566 LPWSTR pDescription;
567 LPWSTR pName;
568 LPWSTR pComment;
569} PRINTER_INFO_1W, *PPRINTER_INFO_1W, *LPPRINTER_INFO_1W;
570
571DECL_WINELIB_TYPE_AW(PRINTER_INFO_1)
572DECL_WINELIB_TYPE_AW(PPRINTER_INFO_1)
573DECL_WINELIB_TYPE_AW(LPPRINTER_INFO_1)
574
575/* FIXME: winspool.h declares some structure members with the name Status.
576 * unfortunately <X11/ICE/ICElib.h> #defines Status to the type 'int'
577 * therefore the following hack */
578#ifndef Status
579
580typedef struct _PRINTER_INFO_2A {
581 LPSTR pServerName;
582 LPSTR pPrinterName;
583 LPSTR pShareName;
584 LPSTR pPortName;
585 LPSTR pDriverName;
586 LPSTR pComment;
587 LPSTR pLocation;
588 LPDEVMODEA pDevMode;
589 LPSTR pSepFile;
590 LPSTR pPrintProcessor;
591 LPSTR pDatatype;
592 LPSTR pParameters;
593 PSECURITY_DESCRIPTOR pSecurityDescriptor;
594 DWORD Attributes;
595 DWORD Priority;
596 DWORD DefaultPriority;
597 DWORD StartTime;
598 DWORD UntilTime;
599 DWORD Status;
600 DWORD cJobs;
601 DWORD AveragePPM;
602} PRINTER_INFO_2A, *PPRINTER_INFO_2A, *LPPRINTER_INFO_2A;
603
604typedef struct _PRINTER_INFO_2W {
605 LPWSTR pServerName;
606 LPWSTR pPrinterName;
607 LPWSTR pShareName;
608 LPWSTR pPortName;
609 LPWSTR pDriverName;
610 LPWSTR pComment;
611 LPWSTR pLocation;
612 LPDEVMODEW pDevMode;
613 LPWSTR pSepFile;
614 LPWSTR pPrintProcessor;
615 LPWSTR pDatatype;
616 LPWSTR pParameters;
617 PSECURITY_DESCRIPTOR pSecurityDescriptor;
618 DWORD Attributes;
619 DWORD Priority;
620 DWORD DefaultPriority;
621 DWORD StartTime;
622 DWORD UntilTime;
623 DWORD Status;
624 DWORD cJobs;
625 DWORD AveragePPM;
626} PRINTER_INFO_2W, *PPRINTER_INFO_2W, *LPPRINTER_INFO_2W;
627
628DECL_WINELIB_TYPE_AW(PRINTER_INFO_2)
629DECL_WINELIB_TYPE_AW(PPRINTER_INFO_2)
630DECL_WINELIB_TYPE_AW(LPPRINTER_INFO_2)
631
632typedef struct _PRINTER_INFO_3 {
633 PSECURITY_DESCRIPTOR pSecurityDescriptor;
634} PRINTER_INFO_3, *PPRINTER_INFO_3, *LPPRINTER_INFO_3;
635
636typedef struct _PRINTER_INFO_4A {
637 LPSTR pPrinterName;
638 LPSTR pServerName;
639 DWORD Attributes;
640} PRINTER_INFO_4A, *PPRINTER_INFO_4A, *LPPRINTER_INFO_4A;
641
642typedef struct _PRINTER_INFO_4W {
643 LPWSTR pPrinterName;
644 LPWSTR pServerName;
645 DWORD Attributes;
646} PRINTER_INFO_4W, *PPRINTER_INFO_4W, *LPPRINTER_INFO_4W;
647
648DECL_WINELIB_TYPE_AW(PRINTER_INFO_4)
649DECL_WINELIB_TYPE_AW(PPRINTER_INFO_4)
650DECL_WINELIB_TYPE_AW(LPPRINTER_INFO_4)
651
652typedef struct _PRINTER_INFO_5A {
653 LPSTR pPrinterName;
654 LPSTR pPortName;
655 DWORD Attributes;
656 DWORD DeviceNotSelectedTimeout;
657 DWORD TransmissionRetryTimeout;
658} PRINTER_INFO_5A, *PPRINTER_INFO_5A, *LPPRINTER_INFO_5A;
659
660typedef struct _PRINTER_INFO_5W {
661 LPWSTR pPrinterName;
662 LPWSTR pPortName;
663 DWORD Attributes;
664 DWORD DeviceNotSelectedTimeout;
665 DWORD TransmissionRetryTimeout;
666} PRINTER_INFO_5W, *PPRINTER_INFO_5W, *LPPRINTER_INFO_5W;
667
668DECL_WINELIB_TYPE_AW(PRINTER_INFO_5)
669DECL_WINELIB_TYPE_AW(PPRINTER_INFO_5)
670DECL_WINELIB_TYPE_AW(LPPRINTER_INFO_5)
671
672typedef struct _PRINTER_INFO_6 {
673 DWORD dwStatus;
674} PRINTER_INFO_6, *PPRINTER_INFO_6, *LPPRINTER_INFO_6;
675
676typedef struct _PRINTER_INFO_7A {
677 LPSTR pszObjectGUID;
678 DWORD dwAction;
679} PRINTER_INFO_7A, *PPRINTER_INFO_7A, *LPPRINTER_INFO_7A;
680
681typedef struct _PRINTER_INFO_7W {
682 LPWSTR pszObjectGUID;
683 DWORD dwAction;
684} PRINTER_INFO_7W, *PPRINTER_INFO_7W, *LPPRINTER_INFO_7W;
685
686DECL_WINELIB_TYPE_AW(PRINTER_INFO_7)
687DECL_WINELIB_TYPE_AW(PPRINTER_INFO_7)
688DECL_WINELIB_TYPE_AW(LPPRINTER_INFO_7)
689
690typedef struct _PRINTER_INFO_8A {
691 LPDEVMODEA pDevMode;
692} PRINTER_INFO_8A, *PPRINTER_INFO_8A, *LPPRINTER_INFO_8A;
693
694typedef struct _PRINTER_INFO_8W {
695 LPDEVMODEW pDevMode;
696} PRINTER_INFO_8W, *PPRINTER_INFO_8W, *LPPRINTER_INFO_8W;
697
698DECL_WINELIB_TYPE_AW(PRINTER_INFO_8)
699DECL_WINELIB_TYPE_AW(PPRINTER_INFO_8)
700DECL_WINELIB_TYPE_AW(LPPRINTER_INFO_8)
701
702typedef struct _PRINTER_INFO_9A {
703 LPDEVMODEA pDevMode;
704} PRINTER_INFO_9A, *PPRINTER_INFO_9A, *LPPRINTER_INFO_9A;
705
706typedef struct _PRINTER_INFO_9W {
707 LPDEVMODEW pDevMode;
708} PRINTER_INFO_9W, *PPRINTER_INFO_9W, *LPPRINTER_INFO_9W;
709
710DECL_WINELIB_TYPE_AW(PRINTER_INFO_9)
711DECL_WINELIB_TYPE_AW(PPRINTER_INFO_9)
712DECL_WINELIB_TYPE_AW(LPPRINTER_INFO_9)
713
714
715typedef struct _JOB_INFO_1A {
716 DWORD JobId;
717 LPSTR pPrinterName;
718 LPSTR pMachineName;
719 LPSTR pUserName;
720 LPSTR pDocument;
721 LPSTR pDatatype;
722 LPSTR pStatus;
723 DWORD Status;
724 DWORD Priority;
725 DWORD Position;
726 DWORD TotalPages;
727 DWORD PagesPrinted;
728 SYSTEMTIME Submitted;
729} JOB_INFO_1A, *PJOB_INFO_1A, *LPJOB_INFO_1A;
730
731typedef struct _JOB_INFO_1W {
732 DWORD JobId;
733 LPWSTR pPrinterName;
734 LPWSTR pMachineName;
735 LPWSTR pUserName;
736 LPWSTR pDocument;
737 LPWSTR pDatatype;
738 LPWSTR pStatus;
739 DWORD Status;
740 DWORD Priority;
741 DWORD Position;
742 DWORD TotalPages;
743 DWORD PagesPrinted;
744 SYSTEMTIME Submitted;
745} JOB_INFO_1W, *PJOB_INFO_1W, *LPJOB_INFO_1W;
746
747DECL_WINELIB_TYPE_AW(JOB_INFO_1)
748DECL_WINELIB_TYPE_AW(PJOB_INFO_1)
749DECL_WINELIB_TYPE_AW(LPJOB_INFO_1)
750
751typedef struct _JOB_INFO_2A {
752 DWORD JobId;
753 LPSTR pPrinterName;
754 LPSTR pMachineName;
755 LPSTR pUserName;
756 LPSTR pDocument;
757 LPSTR pNotifyName;
758 LPSTR pDatatype;
759 LPSTR pPrintProcessor;
760 LPSTR pParameters;
761 LPSTR pDriverName;
762 LPDEVMODEA pDevMode;
763 LPSTR pStatus;
764 PSECURITY_DESCRIPTOR pSecurityDescriptor;
765 DWORD Status;
766 DWORD Priority;
767 DWORD Position;
768 DWORD StartTime;
769 DWORD UntilTime;
770 DWORD TotalPages;
771 DWORD Size;
772 SYSTEMTIME Submitted;
773 DWORD Time;
774 DWORD PagesPrinted;
775} JOB_INFO_2A, *PJOB_INFO_2A, *LPJOB_INFO_2A;
776
777typedef struct _JOB_INFO_2W {
778 DWORD JobId;
779 LPWSTR pPrinterName;
780 LPWSTR pMachineName;
781 LPWSTR pUserName;
782 LPWSTR pDocument;
783 LPWSTR pNotifyName;
784 LPWSTR pDatatype;
785 LPWSTR pPrintProcessor;
786 LPWSTR pParameters;
787 LPWSTR pDriverName;
788 LPDEVMODEW pDevMode;
789 LPWSTR pStatus;
790 PSECURITY_DESCRIPTOR pSecurityDescriptor;
791 DWORD Status;
792 DWORD Priority;
793 DWORD Position;
794 DWORD StartTime;
795 DWORD UntilTime;
796 DWORD TotalPages;
797 DWORD Size;
798 SYSTEMTIME Submitted;
799 DWORD Time;
800 DWORD PagesPrinted;
801} JOB_INFO_2W, *PJOB_INFO_2W, *LPJOB_INFO_2W;
802
803DECL_WINELIB_TYPE_AW(JOB_INFO_2)
804DECL_WINELIB_TYPE_AW(PJOB_INFO_2)
805DECL_WINELIB_TYPE_AW(LPJOB_INFO_2)
806
807typedef struct _JOB_INFO_3 {
808 DWORD JobId;
809 DWORD NextJobId;
810 DWORD Reserved;
811} JOB_INFO_3, *PJOB_INFO_3, *LPJOB_INFO_3;
812
813typedef struct _ADDJOB_INFO_1A {
814 LPSTR Path;
815 DWORD JobId;
816} ADDJOB_INFO_1A, *PADDJOB_INFO_1A, *LPADDJOB_INFO_1A;
817
818typedef struct _ADDJOB_INFO_1W {
819 LPWSTR Path;
820 DWORD JobId;
821} ADDJOB_INFO_1W, *PADDJOB_INFO_1W, *LPADDJOB_INFO_1W;
822
823DECL_WINELIB_TYPE_AW(ADDJOB_INFO_1)
824DECL_WINELIB_TYPE_AW(PADDJOB_INFO_1)
825DECL_WINELIB_TYPE_AW(LPADDJOB_INFO_1)
826
827typedef struct _DOC_INFO_1A {
828 LPSTR pDocName;
829 LPSTR pOutputFile;
830 LPSTR pDatatype;
831} DOC_INFO_1A, *PDOC_INFO_1A, *LPDOC_INFO_1A;
832
833typedef struct _DOC_INFO_1W {
834 LPWSTR pDocName;
835 LPWSTR pOutputFile;
836 LPWSTR pDatatype;
837} DOC_INFO_1W, *PDOC_INFO_1W, *LPDOC_INFO_1W;
838
839DECL_WINELIB_TYPE_AW(DOC_INFO_1)
840DECL_WINELIB_TYPE_AW(PDOC_INFO_1)
841DECL_WINELIB_TYPE_AW(LPDOC_INFO_1)
842
843typedef struct _DOC_INFO_2A {
844 LPSTR pDocName;
845 LPSTR pOutputFile;
846 LPSTR pDatatype;
847 DWORD dwMode;
848 DWORD JobId;
849} DOC_INFO_2A, *PDOC_INFO_2A, *LPDOC_INFO_2A;
850
851typedef struct _DOC_INFO_2W {
852 LPWSTR pDocName;
853 LPWSTR pOutputFile;
854 LPWSTR pDatatype;
855 DWORD dwMode;
856 DWORD JobId;
857} DOC_INFO_2W, *PDOC_INFO_2W, *LPDOC_INFO_2W;
858
859DECL_WINELIB_TYPE_AW(DOC_INFO_2)
860DECL_WINELIB_TYPE_AW(PDOC_INFO_2)
861DECL_WINELIB_TYPE_AW(LPDOC_INFO_2)
862
863typedef struct _FORM_INFO_1A {
864 DWORD Flags;
865 LPSTR pName;
866 SIZEL Size;
867 RECTL ImageableArea;
868} FORM_INFO_1A, *PFORM_INFO_1A, *LPFORM_INFO_1A;
869
870typedef struct _FORM_INFO_1W {
871 DWORD Flags;
872 LPWSTR pName;
873 SIZEL Size;
874 RECTL ImageableArea;
875} FORM_INFO_1W, *PFORM_INFO_1W, *LPFORM_INFO_1W;
876
877DECL_WINELIB_TYPE_AW(FORM_INFO_1)
878DECL_WINELIB_TYPE_AW(PFORM_INFO_1)
879DECL_WINELIB_TYPE_AW(LPFORM_INFO_1)
880
881typedef struct _FORM_INFO_2A {
882 DWORD Flags;
883 LPSTR pName;
884 SIZEL Size;
885 RECTL ImageableArea;
886 LPCSTR pKeyword;
887 DWORD StringType;
888 LPSTR pMuiDll;
889 DWORD dwResourceId;
890 LPSTR pDisplayName;
891 LANGID wLangId;
892} FORM_INFO_2A, *PFORM_INFO_2A, *LPFORM_INFO_2A;
893
894typedef struct _FORM_INFO_2W {
895 DWORD Flags;
896 LPWSTR pName;
897 SIZEL Size;
898 RECTL ImageableArea;
899 LPCSTR pKeyword;
900 DWORD StringType;
901 LPWSTR pMuiDll;
902 DWORD dwResourceId;
903 LPWSTR pDisplayName;
904 LANGID wLangId;
905} FORM_INFO_2W, *PFORM_INFO_2W, *LPFORM_INFO_2W;
906
907DECL_WINELIB_TYPE_AW(FORM_INFO_2)
908DECL_WINELIB_TYPE_AW(PFORM_INFO_2)
909DECL_WINELIB_TYPE_AW(LPFORM_INFO_2)
910
911typedef struct _PRINTPROCESSOR_INFO_1A {
912 LPSTR pName;
913} PRINTPROCESSOR_INFO_1A, *PPRINTPROCESSOR_INFO_1A,
914 *LPPRINTPROCESSOR_INFO_1A;
915
916typedef struct _PRINTPROCESSOR_INFO_1W {
917 LPWSTR pName;
918} PRINTPROCESSOR_INFO_1W, *PPRINTPROCESSOR_INFO_1W,
919 *LPPRINTPROCESSOR_INFO_1W;
920
921DECL_WINELIB_TYPE_AW(PRINTPROCESSOR_INFO_1)
922DECL_WINELIB_TYPE_AW(PPRINTPROCESSOR_INFO_1)
923DECL_WINELIB_TYPE_AW(LPPRINTPROCESSOR_INFO_1)
924
925typedef struct _PORT_INFO_1A {
926 LPSTR pName;
927} PORT_INFO_1A, *PPORT_INFO_1A, *LPPORT_INFO_1A;
928
929typedef struct _PORT_INFO_1W {
930 LPWSTR pName;
931} PORT_INFO_1W, *PPORT_INFO_1W, *LPPORT_INFO_1W;
932
933DECL_WINELIB_TYPE_AW(PORT_INFO_1)
934DECL_WINELIB_TYPE_AW(PPORT_INFO_1)
935DECL_WINELIB_TYPE_AW(LPPORT_INFO_1)
936
937typedef struct _PORT_INFO_2A {
938 LPSTR pPortName;
939 LPSTR pMonitorName;
940 LPSTR pDescription;
941 DWORD fPortType;
942 DWORD Reserved;
943} PORT_INFO_2A, *PPORT_INFO_2A, *LPPORT_INFO_2A;
944
945typedef struct _PORT_INFO_2W {
946 LPWSTR pPortName;
947 LPWSTR pMonitorName;
948 LPWSTR pDescription;
949 DWORD fPortType;
950 DWORD Reserved;
951} PORT_INFO_2W, *PPORT_INFO_2W, *LPPORT_INFO_2W;
952
953DECL_WINELIB_TYPE_AW(PORT_INFO_2)
954DECL_WINELIB_TYPE_AW(PPORT_INFO_2)
955DECL_WINELIB_TYPE_AW(LPPORT_INFO_2)
956
957typedef struct _PORT_INFO_3A {
958 DWORD dwStatus;
959 LPSTR pszStatus;
960 DWORD dwSeverity;
961} PORT_INFO_3A, *PPORT_INFO_3A, *LPPORT_INFO_3A;
962
963typedef struct _PORT_INFO_3W {
964 DWORD dwStatus;
965 LPWSTR pszStatus;
966 DWORD dwSeverity;
967} PORT_INFO_3W, *PPORT_INFO_3W, *LPPORT_INFO_3W;
968
969DECL_WINELIB_TYPE_AW(PORT_INFO_3)
970DECL_WINELIB_TYPE_AW(PPORT_INFO_3)
971DECL_WINELIB_TYPE_AW(LPPORT_INFO_3)
972
973typedef struct _MONITOR_INFO_1A {
974 LPSTR pName;
975} MONITOR_INFO_1A, *PMONITOR_INFO_1A, *LPMONITOR_INFO_1A;
976
977typedef struct _MONITOR_INFO_1W {
978 LPWSTR pName;
979} MONITOR_INFO_1W, *PMONITOR_INFO_1W, *LPMONITOR_INFO_1W;
980
981DECL_WINELIB_TYPE_AW(MONITOR_INFO_1)
982DECL_WINELIB_TYPE_AW(PMONITOR_INFO_1)
983DECL_WINELIB_TYPE_AW(LPMONITOR_INFO_1)
984
985#endif /* Status */
986
987
988typedef struct _MONITOR_INFO_2A {
989 LPSTR pName;
990 LPSTR pEnvironment;
991 LPSTR pDLLName;
992} MONITOR_INFO_2A, *PMONITOR_INFO_2A, *LPMONITOR_INFO_2A;
993
994typedef struct _MONITOR_INFO_2W {
995 LPWSTR pName;
996 LPWSTR pEnvironment;
997 LPWSTR pDLLName;
998} MONITOR_INFO_2W, *PMONITOR_INFO_2W, *LPMONITOR_INFO_2W;
999
1000DECL_WINELIB_TYPE_AW(MONITOR_INFO_2)
1001DECL_WINELIB_TYPE_AW(PMONITOR_INFO_2)
1002DECL_WINELIB_TYPE_AW(LPMONITOR_INFO_2)
1003
1004typedef struct _DATATYPES_INFO_1A {
1005 LPSTR pName;
1006} DATATYPES_INFO_1A, *PDATATYPES_INFO_1A, *LPDATATYPES_INFO_1A;
1007
1008typedef struct _DATATYPES_INFO_1W {
1009 LPWSTR pName;
1010} DATATYPES_INFO_1W, *PDATATYPES_INFO_1W, *LPDATATYPES_INFO_1W;
1011
1012DECL_WINELIB_TYPE_AW(DATATYPES_INFO_1)
1013DECL_WINELIB_TYPE_AW(PDATATYPES_INFO_1)
1014DECL_WINELIB_TYPE_AW(LPDATATYPES_INFO_1)
1015
1016typedef struct _PRINTER_NOTIFY_OPTIONS_TYPE {
1017 WORD Type;
1018 WORD Reserved0;
1019 DWORD Reserved1;
1020 DWORD Reserved2;
1021 DWORD Count;
1022 PWORD pFields;
1023} PRINTER_NOTIFY_OPTIONS_TYPE, *PPRINTER_NOTIFY_OPTIONS_TYPE,
1024*LPPRINTER_NOTIFY_OPTIONS_TYPE;
1025
1026typedef struct _PRINTER_NOTIFY_OPTIONS {
1027 DWORD Version;
1028 DWORD Flags;
1029 DWORD Count;
1030 PPRINTER_NOTIFY_OPTIONS_TYPE pTypes;
1031} PRINTER_NOTIFY_OPTIONS, *PPRINTER_NOTIFY_OPTIONS, *LPPRINTER_NOTIFY_OPTIONS;
1032
1033typedef struct _PRINTER_NOTIFY_INFO_DATA {
1034 WORD Type;
1035 WORD Field;
1036 DWORD Reserved;
1037 DWORD Id;
1038 union {
1039 DWORD adwData[2];
1040 struct {
1041 DWORD cbBuf;
1042 LPVOID pBuf;
1043 } Data;
1044 } NotifyData;
1045} PRINTER_NOTIFY_INFO_DATA, *PPRINTER_NOTIFY_INFO_DATA,
1046*LPPRINTER_NOTIFY_INFO_DATA;
1047
1048typedef struct _PRINTER_NOTIFY_INFO {
1049 DWORD Version;
1050 DWORD Flags;
1051 DWORD Count;
1052 PRINTER_NOTIFY_INFO_DATA aData[1];
1053} PRINTER_NOTIFY_INFO, *PPRINTER_NOTIFY_INFO, *LPPRINTER_NOTIFY_INFO;
1054
1055typedef struct _PROVIDOR_INFO_1A {
1056 LPSTR pName;
1057 LPSTR pEnvironment;
1058 LPSTR pDLLName;
1059} PROVIDOR_INFO_1A, *PPROVIDOR_INFO_1A, *LPPROVIDOR_INFO_1A;
1060
1061typedef struct _PROVIDOR_INFO_1W {
1062 LPWSTR pName;
1063 LPWSTR pEnvironment;
1064 LPWSTR pDLLName;
1065} PROVIDOR_INFO_1W, *PPROVIDOR_INFO_1W, *LPPROVIDOR_INFO_1W;
1066
1067DECL_WINELIB_TYPE_AW(PROVIDOR_INFO_1)
1068DECL_WINELIB_TYPE_AW(PPROVIDOR_INFO_1)
1069DECL_WINELIB_TYPE_AW(LPPROVIDOR_INFO_1)
1070
1071typedef struct _PRINTER_ENUM_VALUESA {
1072 LPSTR pValueName;
1073 DWORD cbValueName;
1074 DWORD dwType;
1075 LPBYTE pData;
1076 DWORD cbData;
1077} PRINTER_ENUM_VALUESA, *PPRINTER_ENUM_VALUESA;
1078
1079typedef struct _PRINTER_ENUM_VALUESW {
1080 LPWSTR pValueName;
1081 DWORD cbValueName;
1082 DWORD dwType;
1083 LPBYTE pData;
1084 DWORD cbData;
1085} PRINTER_ENUM_VALUESW, *PPRINTER_ENUM_VALUESW;
1086
1087DECL_WINELIB_TYPE_AW(PRINTER_ENUM_VALUES)
1088DECL_WINELIB_TYPE_AW(PPRINTER_ENUM_VALUES)
1089
1090typedef enum {
1091 BIDI_NULL = 0,
1092 BIDI_INT,
1093 BIDI_FLOAT,
1094 BIDI_BOOL,
1095 BIDI_STRING,
1096 BIDI_TEXT,
1097 BIDI_ENUM,
1098 BIDI_BLOB
1099} BIDI_TYPE;
1100
1101typedef struct _BINARY_CONTAINER {
1102 DWORD cbBuf;
1103 LPBYTE pData;
1104} BINARY_CONTAINER, *PBINARY_CONTAINER;
1105
1106typedef struct _BIDI_DATA {
1107 DWORD dwBidiType;
1108 union
1109 {
1110 BOOL bData;
1111 INT iData;
1112 LPWSTR sData;
1113 FLOAT fData;
1114 BINARY_CONTAINER biData;
1115 } u;
1116} BIDI_DATA, *LPBIDI_DATA, *PBIDI_DATA;
1117
1118typedef struct _BIDI_REQUEST_DATA {
1119 DWORD dwReqNumber;
1120 LPWSTR pSchema;
1121 BIDI_DATA data;
1122} BIDI_REQUEST_DATA, *LPBIDI_REQUEST_DATA, *PBIDI_REQUEST_DATA;
1123
1124typedef struct _BIDI_REQUEST_CONTAINER {
1125 DWORD Version;
1126 DWORD Flags;
1127 DWORD Count;
1128 BIDI_REQUEST_DATA aData[1];
1129} BIDI_REQUEST_CONTAINER, *LPBIDI_REQUEST_CONTAINER, *PBIDI_REQUEST_CONTAINER;
1130
1131typedef struct _BIDI_RESPONSE_DATA {
1132 DWORD dwResult;
1133 DWORD dwReqNumber;
1134 LPWSTR pSchema;
1135 BIDI_DATA data;
1136} BIDI_RESPONSE_DATA, *LPBIDI_RESPONSE_DATA, *PBIDI_RESPONSE_DATA;
1137
1138typedef struct _BIDI_RESPONSE_CONTAINER {
1139 DWORD Version;
1140 DWORD Flags;
1141 DWORD Count;
1142 BIDI_RESPONSE_DATA aData[1];
1143} BIDI_RESPONSE_CONTAINER, *LPBIDI_RESPONSE_CONTAINER, *PBIDI_RESPONSE_CONTAINER;
1144
1145/* DECLARATIONS */
1146INT WINAPI DeviceCapabilitiesA(LPCSTR pDevice,LPCSTR pPort,WORD fwCapability,
1147 LPSTR pOutput, LPDEVMODEA pDevMode);
1148INT WINAPI DeviceCapabilitiesW(LPCWSTR pDevice, LPCWSTR pPort,
1149 WORD fwCapability, LPWSTR pOutput,
1150 const DEVMODEW *pDevMode);
1151
1152#define DeviceCapabilities WINELIB_NAME_AW(DeviceCapabilities)
1153
1154LONG WINAPI DocumentPropertiesA(HWND hWnd,HANDLE hPrinter,
1155 LPSTR pDeviceName, LPDEVMODEA pDevModeOutput,
1156 LPDEVMODEA pDevModeInput,DWORD fMode );
1157LONG WINAPI DocumentPropertiesW(HWND hWnd, HANDLE hPrinter,
1158 LPWSTR pDeviceName,
1159 LPDEVMODEW pDevModeOutput,
1160 LPDEVMODEW pDevModeInput, DWORD fMode);
1161
1162#define DocumentProperties WINELIB_NAME_AW(DocumentProperties)
1163
1164BOOL WINAPI OpenPrinterA(LPSTR lpPrinterName,HANDLE *phPrinter,
1165 LPPRINTER_DEFAULTSA pDefault);
1166BOOL WINAPI OpenPrinterW(LPWSTR lpPrinterName,HANDLE *phPrinter,
1167 LPPRINTER_DEFAULTSW pDefault);
1168
1169#define OpenPrinter WINELIB_NAME_AW(OpenPrinter)
1170
1171BOOL WINAPI ResetPrinterA(HANDLE hPrinter, LPPRINTER_DEFAULTSA pDefault);
1172BOOL WINAPI ResetPrinterW(HANDLE hPrinter, LPPRINTER_DEFAULTSW pDefault);
1173#define ResetPrinter WINELIB_NAME_AW(ResetPrinter)
1174
1175BOOL WINAPI ClosePrinter (HANDLE phPrinter);
1176
1177BOOL WINAPI EnumJobsA(HANDLE hPrinter, DWORD FirstJob, DWORD NoJobs,
1178 DWORD Level, LPBYTE pJob, DWORD cbBuf, LPDWORD pcbNeeded,
1179 LPDWORD pcReturned);
1180BOOL WINAPI EnumJobsW(HANDLE hPrinter, DWORD FirstJob, DWORD NoJobs,
1181 DWORD Level, LPBYTE pJob, DWORD cbBuf, LPDWORD pcbNeeded,
1182 LPDWORD pcReturned);
1183#define EnumJobs WINELIB_NAME_AW(EnumJobs)
1184
1185BOOL WINAPI EnumPrintersA(DWORD dwType, LPSTR lpszName,
1186 DWORD dwLevel, LPBYTE lpbPrinters,
1187 DWORD cbBuf, LPDWORD lpdwNeeded,
1188 LPDWORD lpdwReturned);
1189BOOL WINAPI EnumPrintersW(DWORD dwType, LPWSTR lpszName,
1190 DWORD dwLevel, LPBYTE lpbPrinters,
1191 DWORD cbBuf, LPDWORD lpdwNeeded,
1192 LPDWORD lpdwReturned);
1193#define EnumPrinters WINELIB_NAME_AW(EnumPrinters)
1194
1195BOOL WINAPI PrinterProperties(HWND hWnd, HANDLE hPrinter);
1196
1197BOOL WINAPI GetPrinterDriverDirectoryA(LPSTR,LPSTR,DWORD,LPBYTE,DWORD,LPDWORD);
1198BOOL WINAPI GetPrinterDriverDirectoryW(LPWSTR,LPWSTR,DWORD,LPBYTE,DWORD,LPDWORD);
1199#define GetPrinterDriverDirectory WINELIB_NAME_AW(GetPrinterDriverDirectory)
1200
1201BOOL WINAPI GetPrinterDriverA(HANDLE hPrinter, LPSTR pEnvironment,
1202 DWORD Level, LPBYTE pDriverInfo,
1203 DWORD cbBuf, LPDWORD pcbNeeded);
1204BOOL WINAPI GetPrinterDriverW(HANDLE hPrinter, LPWSTR pEnvironment,
1205 DWORD Level, LPBYTE pDriverInfo,
1206 DWORD cbBuf, LPDWORD pcbNeeded);
1207#define GetPrinterDriver WINELIB_NAME_AW(GetPrinterDriver)
1208
1209BOOL WINAPI SetJobA(HANDLE hPrinter, DWORD JobID, DWORD Level, LPBYTE pJob,
1210 DWORD Command);
1211BOOL WINAPI SetJobW(HANDLE hPrinter, DWORD JobID, DWORD Level, LPBYTE pJob,
1212 DWORD Command);
1213#define SetJob WINELIB_NAME_AW(SetJob)
1214
1215BOOL WINAPI GetJobA(HANDLE hPrinter, DWORD JobID, DWORD Level, LPBYTE pJob,
1216 DWORD cbBuf, LPDWORD pcbNeeded);
1217BOOL WINAPI GetJobW(HANDLE hPrinter, DWORD JobID, DWORD Level, LPBYTE pJob,
1218 DWORD cbBuf, LPDWORD pcbNeeded);
1219#define GetJob WINELIB_NAME_AW(GetJob)
1220
1221HANDLE WINAPI AddPrinterA(LPSTR pName, DWORD Level, LPBYTE pPrinter);
1222HANDLE WINAPI AddPrinterW(LPWSTR pName, DWORD Level, LPBYTE pPrinter);
1223#define AddPrinter WINELIB_NAME_AW(AddPrinter)
1224
1225BOOL WINAPI DeletePrinter(HANDLE hPrinter);
1226
1227BOOL WINAPI SetPrinterA(HANDLE hPrinter, DWORD Level, LPBYTE pPrinter,
1228 DWORD Command);
1229BOOL WINAPI SetPrinterW(HANDLE hPrinter, DWORD Level, LPBYTE pPrinter,
1230 DWORD Command);
1231#define SetPrinter WINELIB_NAME_AW(SetPrinter)
1232
1233BOOL WINAPI GetPrinterA(HANDLE hPrinter, DWORD Level, LPBYTE pPrinter,
1234 DWORD cbBuf, LPDWORD pcbNeeded);
1235BOOL WINAPI GetPrinterW(HANDLE hPrinter, DWORD Level, LPBYTE pPrinter,
1236 DWORD cbBuf, LPDWORD pcbNeeded);
1237#define GetPrinter WINELIB_NAME_AW(GetPrinter)
1238
1239BOOL WINAPI AddPrinterDriverA(LPSTR pName, DWORD Level, LPBYTE pDriverInfo);
1240BOOL WINAPI AddPrinterDriverW(LPWSTR pName, DWORD Level, LPBYTE pDriverInfo);
1241#define AddPrinterDriver WINELIB_NAME_AW(AddPrinterDriver)
1242
1243BOOL WINAPI AddPrinterDriverExA(LPSTR pName, DWORD Level, LPBYTE pDriverInfo,
1244 DWORD dwFileCopyFlags);
1245BOOL WINAPI AddPrinterDriverExW(LPWSTR pName, DWORD Level, LPBYTE pDriverInfo,
1246 DWORD dwFileCopyFlags);
1247#define AddPrinterDriverEx WINELIB_NAME_AW(AddPrinterDriverEx)
1248
1249BOOL WINAPI EnumPrinterDriversA(LPSTR pName, LPSTR pEnvironment, DWORD Level,
1250 LPBYTE pDriverInfo, DWORD cbBuf,
1251 LPDWORD pcbNeeded, LPDWORD pcbReturned);
1252BOOL WINAPI EnumPrinterDriversW(LPWSTR pName, LPWSTR pEnvironment, DWORD Level,
1253 LPBYTE pDriverInfo, DWORD cbBuf,
1254 LPDWORD pcbNeeded, LPDWORD pcbReturned);
1255#define EnumPrinterDrivers WINELIB_NAME_AW(EnumPrinterDrivers)
1256
1257BOOL WINAPI GetDefaultPrinterA(LPSTR pName, LPDWORD pcbNameSize);
1258BOOL WINAPI GetDefaultPrinterW(LPWSTR pName, LPDWORD pcbNameSize);
1259#define GetDefaultPrinter WINELIB_NAME_AW(GetDefaultPrinter)
1260
1261BOOL WINAPI DeletePrinterDriverA(LPSTR pName, LPSTR pEnvironment,
1262 LPSTR pDriverName);
1263BOOL WINAPI DeletePrinterDriverW(LPWSTR pName, LPWSTR pEnvironment,
1264 LPWSTR pDriverName);
1265#define DeletePrinterDriver WINELIB_NAME_AW(DeletePrinterDriver)
1266
1267BOOL WINAPI DeletePrinterDriverExA(LPSTR pName, LPSTR pEnvironment,
1268 LPSTR pDriverName, DWORD dwDeleteFlag, DWORD dwVersionFlag);
1269BOOL WINAPI DeletePrinterDriverExW(LPWSTR pName, LPWSTR pEnvironment,
1270 LPWSTR pDriverName, DWORD dwDeleteFlag, DWORD dwVersionFlag);
1271#define DeletePrinterDriverEx WINELIB_NAME_AW(DeletePrinterDriverEx)
1272
1273BOOL WINAPI AddPrintProcessorA(LPSTR pName, LPSTR pEnvironment,
1274 LPSTR pPathName, LPSTR pPrintProcessorName);
1275BOOL WINAPI AddPrintProcessorW(LPWSTR pName, LPWSTR pEnvironment,
1276 LPWSTR pPathName, LPWSTR pPrintProcessorName);
1277#define AddPrintProcessor WINELIB_NAME_AW(AddPrintProcessor)
1278
1279BOOL WINAPI EnumPrintProcessorsA(LPSTR pName, LPSTR pEnvironment,
1280 DWORD Level, LPBYTE pPrintProcessorInfo,
1281 DWORD cbBuf, LPDWORD pcbNeeded,
1282 LPDWORD pcbReturned);
1283BOOL WINAPI EnumPrintProcessorsW(LPWSTR pName, LPWSTR pEnvironment,
1284 DWORD Level, LPBYTE pPrintProcessorInfo,
1285 DWORD cbBuf, LPDWORD pcbNeeded,
1286 LPDWORD pcbReturned);
1287#define EnumPrintProcessors WINELIB_NAME_AW(EnumPrintProcessors)
1288
1289BOOL WINAPI GetPrintProcessorDirectoryA(LPSTR pName, LPSTR pEnvironment,
1290 DWORD Level,
1291 LPBYTE pPrintProcessorInfo,
1292 DWORD cbBuf, LPDWORD pcbNeeded);
1293
1294BOOL WINAPI GetPrintProcessorDirectoryW(LPWSTR pName, LPWSTR pEnvironment,
1295 DWORD Level,
1296 LPBYTE pPrintProcessorInfo,
1297 DWORD cbBuf, LPDWORD pcbNeeded);
1298#define GetPrintProcessorDirectory WINELIB_NAME_AW(GetPrintProcessorDirectory)
1299
1300BOOL WINAPI EnumPrintProcessorDatatypesA(LPSTR pName,
1301 LPSTR pPrintProcessorName,
1302 DWORD Level, LPBYTE pDatatypes,
1303 DWORD cbBuf, LPDWORD pcbNeeded,
1304 LPDWORD pcbReturned);
1305BOOL WINAPI EnumPrintProcessorDatatypesW(LPWSTR pName,
1306 LPWSTR pPrintProcessorName,
1307 DWORD Level, LPBYTE pDatatypes,
1308 DWORD cbBuf, LPDWORD pcbNeeded,
1309 LPDWORD pcbReturned);
1310#define EnumPrintProcessorDatatypes WINELIB_NAME_AW(EnumPrintProcessorDatatypes)
1311
1312BOOL WINAPI DeletePrintProcessorA(LPSTR pName, LPSTR pEnvironment,
1313 LPSTR pPrintProcessorName);
1314BOOL WINAPI DeletePrintProcessorW(LPWSTR pName, LPWSTR pEnvironment,
1315 LPWSTR pPrintProcessorName);
1316#define DeletePrintProcessor WINELIB_NAME_AW(DeletePrintProcessor)
1317
1318DWORD WINAPI StartDocPrinterA(HANDLE hPrinter, DWORD Level, LPBYTE pDocInfo);
1319DWORD WINAPI StartDocPrinterW(HANDLE hPrinter, DWORD Level, LPBYTE pDocInfo);
1320#define StartDocPrinter WINELIB_NAME_AW(StartDocPrinter)
1321
1322BOOL WINAPI StartPagePrinter(HANDLE hPrinter);
1323BOOL WINAPI WritePrinter(HANDLE hPrinter, LPVOID pBuf, DWORD cbBuf,
1324 LPDWORD pcWritten);
1325BOOL WINAPI EndPagePrinter(HANDLE hPrinter);
1326BOOL WINAPI AbortPrinter(HANDLE hPrinter);
1327BOOL WINAPI ReadPrinter(HANDLE hPrinter, LPVOID pBuf, DWORD cbBuf,
1328 LPDWORD pNoBytesRead);
1329BOOL WINAPI EndDocPrinter(HANDLE hPrinter);
1330
1331BOOL WINAPI AddJobA(HANDLE hPrinter, DWORD Level, LPBYTE pData, DWORD cbBuf,
1332 LPDWORD pcbNeeded);
1333BOOL WINAPI AddJobW(HANDLE hPrinter, DWORD Level, LPBYTE pData, DWORD cbBuf,
1334 LPDWORD pcbNeeded);
1335#define AddJob WINELIB_NAME_AW(AddJob)
1336
1337BOOL WINAPI ScheduleJob(HANDLE hPrinter, DWORD JobID);
1338
1339LONG WINAPI AdvancedDocumentPropertiesA(HWND hWnd, HANDLE hPrinter,
1340 LPSTR pDeviceName,
1341 PDEVMODEA pDevModeOutput,
1342 PDEVMODEA pDevModeInput);
1343LONG WINAPI AdvancedDocumentPropertiesW(HWND hWnd, HANDLE hPrinter,
1344 LPWSTR pDeviceName,
1345 PDEVMODEW pDevModeOutput,
1346 PDEVMODEW pDevModeInput);
1347#define AdvancedDocumentProperties WINELIB_NAME_AW(AdvancedDocumentProperties)
1348
1349DWORD WINAPI GetPrinterDataA(HANDLE hPrinter, LPSTR pValueName, LPDWORD pType,
1350 LPBYTE pData, DWORD nSize, LPDWORD pcbNeeded);
1351DWORD WINAPI GetPrinterDataW(HANDLE hPrinter, LPWSTR pValueName, LPDWORD pType,
1352 LPBYTE pData, DWORD nSize, LPDWORD pcbNeeded);
1353#define GetPrinterData WINELIB_NAME_AW(GetPrinterData)
1354
1355DWORD WINAPI GetPrinterDataExA(HANDLE hPrinter, LPCSTR pKeyName,
1356 LPCSTR pValueName, LPDWORD pType,
1357 LPBYTE pData, DWORD nSize, LPDWORD pcbNeeded);
1358DWORD WINAPI GetPrinterDataExW(HANDLE hPrinter, LPCWSTR pKeyName,
1359 LPCWSTR pValueName, LPDWORD pType,
1360 LPBYTE pData, DWORD nSize, LPDWORD pcbNeeded);
1361#define GetPrinterDataEx WINELIB_NAME_AW(GetPrinterDataEx)
1362
1363DWORD WINAPI DeletePrinterDataExA(HANDLE hPrinter, LPCSTR pKeyName,
1364 LPCSTR pValueName);
1365DWORD WINAPI DeletePrinterDataExW(HANDLE hPrinter, LPCWSTR pKeyName,
1366 LPCWSTR pValueName);
1367#define DeletePrinterDataEx WINELIB_NAME_AW(DeletePrinterDataEx)
1368
1369DWORD WINAPI SetPrinterDataA(HANDLE hPrinter, LPSTR pValueName, DWORD Type,
1370 LPBYTE pData, DWORD cbData);
1371DWORD WINAPI SetPrinterDataW(HANDLE hPrinter, LPWSTR pValueName, DWORD Type,
1372 LPBYTE pData, DWORD cbData);
1373#define SetPrinterData WINELIB_NAME_AW(SetPrinterData)
1374
1375DWORD WINAPI SetPrinterDataExA(HANDLE hPrinter, LPCSTR pKeyName,
1376 LPCSTR pValueName, DWORD Type,
1377 LPBYTE pData, DWORD cbData);
1378DWORD WINAPI SetPrinterDataExW(HANDLE hPrinter, LPCWSTR pKeyName,
1379 LPCWSTR pValueName, DWORD Type,
1380 LPBYTE pData, DWORD cbData);
1381#define SetPrinterDataEx WINELIB_NAME_AW(SetPrinterDataEx)
1382
1383DWORD WINAPI WaitForPrinterChange(HANDLE hPrinter, DWORD Flags);
1384HANDLE WINAPI FindFirstPrinterChangeNotification(HANDLE hPrinter,
1385 DWORD fdwFlags,
1386 DWORD fdwOptions,
1387 LPVOID pPrinterNotifyOptions);
1388BOOL WINAPI FindNextPrinterChangeNotification(HANDLE hChange,
1389 PDWORD pdwChange,
1390 LPVOID pvReserved,
1391 LPVOID *ppPrinterNotifyInfo);
1392BOOL WINAPI FreePrinterNotifyInfo(PPRINTER_NOTIFY_INFO pPrinterNotifyInfo);
1393BOOL WINAPI FindClosePrinterChangeNotification(HANDLE hChange);
1394
1395DWORD WINAPI PrinterMessageBoxA(HANDLE hPrinter, DWORD Error, HWND hWnd,
1396 LPSTR pText, LPSTR pCaption, DWORD dwType);
1397DWORD WINAPI PrinterMessageBoxW(HANDLE hPrinter, DWORD Error, HWND hWnd,
1398 LPWSTR pText, LPWSTR pCaption, DWORD dwType);
1399#define PrinterMessageBox WINELIB_NAME_AW(PrinterMessageBox)
1400
1401BOOL WINAPI AddFormA(HANDLE hPrinter, DWORD Level, LPBYTE pForm);
1402BOOL WINAPI AddFormW(HANDLE hPrinter, DWORD Level, LPBYTE pForm);
1403#define AddForm WINELIB_NAME_AW(AddForm)
1404
1405BOOL WINAPI DeleteFormA(HANDLE hPrinter, LPSTR pFormName);
1406BOOL WINAPI DeleteFormW(HANDLE hPrinter, LPWSTR pFormName);
1407#define DeleteForm WINELIB_NAME_AW(DeleteForm)
1408
1409BOOL WINAPI GetFormA(HANDLE hPrinter, LPSTR pFormName, DWORD Level,
1410 LPBYTE pForm, DWORD cbBuf, LPDWORD pcbNeeded);
1411BOOL WINAPI GetFormW(HANDLE hPrinter, LPWSTR pFormName, DWORD Level,
1412 LPBYTE pForm, DWORD cbBuf, LPDWORD pcbNeeded);
1413#define GetForm WINELIB_NAME_AW(GetForm)
1414
1415BOOL WINAPI SetFormA(HANDLE hPrinter, LPSTR pFormName, DWORD Level,
1416 LPBYTE pForm);
1417BOOL WINAPI SetFormW(HANDLE hPrinter, LPWSTR pFormName, DWORD Level,
1418 LPBYTE pForm);
1419#define SetForm WINELIB_NAME_AW(SetForm)
1420
1421BOOL WINAPI EnumFormsA(HANDLE hPrinter, DWORD Level, LPBYTE pForm, DWORD cbBuf,
1422 LPDWORD pcbNeeded, LPDWORD pcReturned);
1423BOOL WINAPI EnumFormsW(HANDLE hPrinter, DWORD Level, LPBYTE pForm, DWORD cbBuf,
1424 LPDWORD pcbNeeded, LPDWORD pcReturned);
1425#define EnumForms WINELIB_NAME_AW(EnumForms)
1426
1427BOOL WINAPI EnumMonitorsA(LPSTR pName, DWORD Level, LPBYTE pMonitors,
1428 DWORD cbBuf, LPDWORD pcbNeeded, LPDWORD pcReturned);
1429BOOL WINAPI EnumMonitorsW(LPWSTR pName, DWORD Level, LPBYTE pMonitors,
1430 DWORD cbBuf, LPDWORD pcbNeeded, LPDWORD pcReturned);
1431#define EnumMonitors WINELIB_NAME_AW(EnumMonitors)
1432
1433DWORD WINAPI EnumPrinterDataA( HANDLE hPrinter, DWORD dwIndex, LPSTR pValueName,
1434 DWORD cbValueName, LPDWORD pcbValueName, LPDWORD pType, LPBYTE pData,
1435 DWORD cbData, LPDWORD pcbData );
1436DWORD WINAPI EnumPrinterDataW( HANDLE hPrinter, DWORD dwIndex, LPWSTR pValueName,
1437 DWORD cbValueName, LPDWORD pcbValueName, LPDWORD pType, LPBYTE pData,
1438 DWORD cbData, LPDWORD pcbData );
1439#define EnumPrinterData WINELIB_NAME_AW(EnumPrinterData)
1440
1441BOOL WINAPI AddMonitorA(LPSTR pName, DWORD Level, LPBYTE pMonitors);
1442BOOL WINAPI AddMonitorW(LPWSTR pName, DWORD Level, LPBYTE pMonitors);
1443#define AddMonitor WINELIB_NAME_AW(AddMonitor)
1444
1445BOOL WINAPI DeleteMonitorA(LPSTR pName, LPSTR pEnvironment,
1446 LPSTR pMonitorName);
1447BOOL WINAPI DeleteMonitorW(LPWSTR pName, LPWSTR pEnvironment,
1448 LPWSTR pMonitorName);
1449#define DeleteMonitor WINELIB_NAME_AW(DeleteMonitor)
1450
1451BOOL WINAPI EnumPortsA(LPSTR pName, DWORD Level, LPBYTE pPorts,
1452 DWORD cbBuf, LPDWORD pcbNeeded, LPDWORD pcReturned);
1453BOOL WINAPI EnumPortsW(LPWSTR pName, DWORD Level, LPBYTE pPorts,
1454 DWORD cbBuf, LPDWORD pcbNeeded, LPDWORD pcReturned);
1455#define EnumPorts WINELIB_NAME_AW(EnumPorts)
1456
1457BOOL WINAPI AddPortA(LPSTR pName, HWND hWnd, LPSTR pMonitorName);
1458BOOL WINAPI AddPortW(LPWSTR pName, HWND hWnd, LPWSTR pMonitorName);
1459#define AddPort WINELIB_NAME_AW(AddPort)
1460
1461BOOL WINAPI AddPortExA(LPSTR, DWORD, LPBYTE, LPSTR);
1462BOOL WINAPI AddPortExW(LPWSTR, DWORD, LPBYTE, LPWSTR);
1463#define AddPortEx WINELIB_NAME_AW(AddPortEx)
1464
1465BOOL WINAPI ConfigurePortA(LPSTR pName, HWND hWnd, LPSTR pPortName);
1466BOOL WINAPI ConfigurePortW(LPWSTR pName, HWND hWnd, LPWSTR pPortName);
1467#define ConfigurePort WINELIB_NAME_AW(ConfigurePort)
1468
1469BOOL WINAPI DeletePortA(LPSTR pName, HWND hWnd, LPSTR pPortName);
1470BOOL WINAPI DeletePortW(LPWSTR pName, HWND hWnd, LPWSTR pPortName);
1471#define DeletePort WINELIB_NAME_AW(DeletePort)
1472
1473BOOL WINAPI SetPortA(LPSTR pName, LPSTR pPortName, DWORD dwLevel,
1474 LPBYTE pPortInfo);
1475BOOL WINAPI SetPortW(LPWSTR pName, LPWSTR pPortName, DWORD dwLevel,
1476 LPBYTE pPortInfo);
1477#define SetPort WINELIB_NAME_AW(SetPort)
1478
1479BOOL WINAPI AddPrinterConnectionA(LPSTR pName);
1480BOOL WINAPI AddPrinterConnectionW(LPWSTR pName);
1481#define AddPrinterConnection WINELIB_NAME_AW(AddPrinterConnection)
1482
1483BOOL WINAPI DeletePrinterConnectionA(LPSTR pName);
1484BOOL WINAPI DeletePrinterConnectionW(LPWSTR pName);
1485#define DeletePrinterConnection WINELIB_NAME_AW(DeletePrinterConnection)
1486
1487HANDLE WINAPI ConnectToPrinterDlg(HWND hwnd, DWORD Flags);
1488
1489BOOL WINAPI AddPrintProvidorA(LPSTR pName, DWORD Level, LPBYTE pProvidorInfo);
1490BOOL WINAPI AddPrintProvidorW(LPWSTR pName, DWORD Level, LPBYTE pProvidorInfo);
1491#define AddPrintProvidor WINELIB_NAME_AW(AddPrintProvidor)
1492
1493BOOL WINAPI DeletePrintProvidorA(LPSTR pName, LPSTR pEnvironment,
1494 LPSTR pPrintProvidorName);
1495BOOL WINAPI DeletePrintProvidorW(LPWSTR pName, LPWSTR pEnvironment,
1496 LPWSTR pPrintProvidorName);
1497#define DeletePrintProvidor WINELIB_NAME_AW(DeletePrintProvidor)
1498
1499DWORD WINAPI EnumPrinterDataExA(HANDLE hPrinter, LPCSTR pKeyName,
1500 LPBYTE pEnumValues, DWORD cbEnumValues,
1501 LPDWORD pcbEnumValues, LPDWORD pnEnumValues);
1502DWORD WINAPI EnumPrinterDataExW(HANDLE hPrinter, LPCWSTR pKeyName,
1503 LPBYTE pEnumValues, DWORD cbEnumValues,
1504 LPDWORD pcbEnumValues, LPDWORD pnEnumValues);
1505#define EnumPrinterDataEx WINELIB_NAME_AW(EnumPrinterDataEx)
1506
1507LONG WINAPI ExtDeviceMode( HWND hWnd, HANDLE hInst, LPDEVMODEA pDevModeOutput,
1508 LPSTR pDeviceName, LPSTR pPort, LPDEVMODEA pDevModeInput, LPSTR pProfile,
1509 DWORD fMode);
1510
1511LPSTR WINAPI StartDocDlgA(HANDLE hPrinter, DOCINFOA *doc);
1512LPWSTR WINAPI StartDocDlgW(HANDLE hPrinter, DOCINFOW *doc);
1513#define StartDocDlg WINELIB_NAME_AW(StartDocDlg)
1514
1515BOOL WINAPI XcvDataW(HANDLE hXcv, LPCWSTR pszDataName, PBYTE pInputData,
1516 DWORD cbInputData, PBYTE pOutputData, DWORD cbOutputData,
1517 PDWORD pcbOutputNeeded, PDWORD pdwStatus);
1518
1519#ifdef __cplusplus
1520} /* extern "C" */
1521#endif
1522
1523#endif /* __WINE_WINSPOOL_H */
Note: See TracBrowser for help on using the repository browser.

© 2024 Oracle Support Privacy / Do Not Sell My Info Terms of Use Trademark Policy Automated Access Etiquette