VirtualBox

source: vbox/trunk/src/VBox/Devices/Graphics/shaderlib/wine/include/winspool.h@ 53201

Last change on this file since 53201 was 53201, checked in by vboxsync, 11 years ago

Devices/Main: vmsvga updates

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

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