diff -r da7c1a80df0d -r d2d6724aef32 holdingarea/llvm/llvm-gcc4.2-2.7-x86-mingw32/include/winspool.h --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/holdingarea/llvm/llvm-gcc4.2-2.7-x86-mingw32/include/winspool.h Thu Sep 16 09:43:14 2010 +0100 @@ -0,0 +1,982 @@ +#ifndef _WINSPOOL_H +#define _WINSPOOL_H +#if __GNUC__ >=3 +#pragma GCC system_header +#endif + +#ifdef __cplusplus +extern "C" { +#endif +#define DI_CHANNEL 1 +#define DI_CHANNEL_WRITE 2 +#define DI_READ_SPOOL_JOB 3 +#define DI_MEMORYMAP_WRITE 0x1 +#define FORM_USER 0x0 +#define FORM_BUILTIN 0x1 +#define FORM_PRINTER 0x2 +#if (_WIN32_WINNT >= 0x0500) +#define DRIVER_KERNELMODE 0x00000001 +#define DRIVER_USERMODE 0x00000002 +#define DSPRINT_PUBLISH 0x00000001 +#define DSPRINT_UPDATE 0x00000002 +#define DSPRINT_UNPUBLISH 0x00000004 +#define DSPRINT_REPUBLISH 0x00000008 +#define DSPRINT_PENDING 0x80000000 +#endif +#define JOB_CONTROL_PAUSE 1 +#define JOB_CONTROL_RESUME 2 +#define JOB_CONTROL_CANCEL 3 +#define JOB_CONTROL_RESTART 4 +#define JOB_CONTROL_DELETE 5 +#define JOB_CONTROL_SENT_TO_PRINTER 6 +#define JOB_CONTROL_LAST_PAGE_EJECTED 7 +#define JOB_STATUS_PAUSED 0x1 +#define JOB_STATUS_ERROR 0x2 +#define JOB_STATUS_DELETING 0x4 +#define JOB_STATUS_SPOOLING 0x8 +#define JOB_STATUS_PRINTING 0x10 +#define JOB_STATUS_OFFLINE 0x20 +#define JOB_STATUS_PAPEROUT 0x40 +#define JOB_STATUS_PRINTED 0x80 +#define JOB_STATUS_DELETED 0x100 +#define JOB_STATUS_BLOCKED_DEVQ 0x200 +#define JOB_STATUS_USER_INTERVENTION 0x400 +#define JOB_STATUS_RESTART 0x800 +#define JOB_STATUS_COMPLETE 0x1000 +#define JOB_POSITION_UNSPECIFIED 0 +#define JOB_NOTIFY_TYPE 1 +#define JOB_NOTIFY_FIELD_PRINTER_NAME 0 +#define JOB_NOTIFY_FIELD_MACHINE_NAME 1 +#define JOB_NOTIFY_FIELD_PORT_NAME 2 +#define JOB_NOTIFY_FIELD_USER_NAME 3 +#define JOB_NOTIFY_FIELD_NOTIFY_NAME 4 +#define JOB_NOTIFY_FIELD_DATATYPE 5 +#define JOB_NOTIFY_FIELD_PRINT_PROCESSOR 6 +#define JOB_NOTIFY_FIELD_PARAMETERS 7 +#define JOB_NOTIFY_FIELD_DRIVER_NAME 8 +#define JOB_NOTIFY_FIELD_DEVMODE 9 +#define JOB_NOTIFY_FIELD_STATUS 10 +#define JOB_NOTIFY_FIELD_STATUS_STRING 11 +#define JOB_NOTIFY_FIELD_SECURITY_DESCRIPTOR 12 +#define JOB_NOTIFY_FIELD_DOCUMENT 13 +#define JOB_NOTIFY_FIELD_PRIORITY 14 +#define JOB_NOTIFY_FIELD_POSITION 15 +#define JOB_NOTIFY_FIELD_SUBMITTED 16 +#define JOB_NOTIFY_FIELD_START_TIME 17 +#define JOB_NOTIFY_FIELD_UNTIL_TIME 18 +#define JOB_NOTIFY_FIELD_TIME 19 +#define JOB_NOTIFY_FIELD_TOTAL_PAGES 20 +#define JOB_NOTIFY_FIELD_PAGES_PRINTED 21 +#define JOB_NOTIFY_FIELD_TOTAL_BYTES 22 +#define JOB_NOTIFY_FIELD_BYTES_PRINTED 23 +#define JOB_ACCESS_ADMINISTER 16 +#define JOB_ALL_ACCESS (STANDARD_RIGHTS_REQUIRED|JOB_ACCESS_ADMINISTER) +#define JOB_READ (STANDARD_RIGHTS_READ| JOB_ACCESS_ADMINISTER) +#define JOB_WRITE (STANDARD_RIGHTS_WRITE|JOB_ACCESS_ADMINISTER) +#define JOB_EXECUTE (STANDARD_RIGHTS_EXECUTE|JOB_ACCESS_ADMINISTER) +#define PRINTER_NOTIFY_OPTIONS_REFRESH 1 +#define PRINTER_ACCESS_ADMINISTER 4 +#define PRINTER_ACCESS_USE 8 +#define PRINTER_ERROR_INFORMATION 0x80000000 +#define PRINTER_ERROR_WARNING 0x40000000 +#define PRINTER_ERROR_SEVERE 0x20000000 +#define PRINTER_ERROR_OUTOFPAPER 1 +#define PRINTER_ERROR_JAM 2 +#define PRINTER_ERROR_OUTOFTONER 4 +#define PRINTER_CONTROL_PAUSE 1 +#define PRINTER_CONTROL_RESUME 2 +#define PRINTER_CONTROL_PURGE 3 +#define PRINTER_CONTROL_SET_STATUS 4 +#define PRINTER_STATUS_PAUSED 1 +#define PRINTER_STATUS_ERROR 2 +#define PRINTER_STATUS_PENDING_DELETION 4 +#define PRINTER_STATUS_PAPER_JAM 8 +#define PRINTER_STATUS_PAPER_OUT 0x10 +#define PRINTER_STATUS_MANUAL_FEED 0x20 +#define PRINTER_STATUS_PAPER_PROBLEM 0x40 +#define PRINTER_STATUS_OFFLINE 0x80 +#define PRINTER_STATUS_IO_ACTIVE 0x100 +#define PRINTER_STATUS_BUSY 0x200 +#define PRINTER_STATUS_PRINTING 0x400 +#define PRINTER_STATUS_OUTPUT_BIN_FULL 0x800 +#define PRINTER_STATUS_NOT_AVAILABLE 0x1000 +#define PRINTER_STATUS_WAITING 0x2000 +#define PRINTER_STATUS_PROCESSING 0x4000 +#define PRINTER_STATUS_INITIALIZING 0x8000 +#define PRINTER_STATUS_WARMING_UP 0x10000 +#define PRINTER_STATUS_TONER_LOW 0x20000 +#define PRINTER_STATUS_NO_TONER 0x40000 +#define PRINTER_STATUS_PAGE_PUNT 0x80000 +#define PRINTER_STATUS_USER_INTERVENTION 0x100000 +#define PRINTER_STATUS_OUT_OF_MEMORY 0x200000 +#define PRINTER_STATUS_DOOR_OPEN 0x400000 +#define PRINTER_STATUS_SERVER_UNKNOWN 0x800000 +#define PRINTER_STATUS_POWER_SAVE 0x1000000 +#define PRINTER_ATTRIBUTE_QUEUED 1 +#define PRINTER_ATTRIBUTE_DIRECT 2 +#define PRINTER_ATTRIBUTE_DEFAULT 4 +#define PRINTER_ATTRIBUTE_SHARED 8 +#define PRINTER_ATTRIBUTE_NETWORK 0x10 +#define PRINTER_ATTRIBUTE_HIDDEN 0x20 +#define PRINTER_ATTRIBUTE_LOCAL 0x40 +#define PRINTER_ATTRIBUTE_ENABLE_DEVQ 0x80 +#define PRINTER_ATTRIBUTE_KEEPPRINTEDJOBS 0x100 +#define PRINTER_ATTRIBUTE_DO_COMPLETE_FIRST 0x200 +#define PRINTER_ATTRIBUTE_WORK_OFFLINE 0x400 +#define PRINTER_ATTRIBUTE_ENABLE_BIDI 0x800 +#define PRINTER_ATTRIBUTE_RAW_ONLY 0x1000 +#define PRINTER_ATTRIBUTE_PUBLISHED 0x2000 +#define PRINTER_ENUM_DEFAULT 1 +#define PRINTER_ENUM_LOCAL 2 +#define PRINTER_ENUM_CONNECTIONS 4 +#define PRINTER_ENUM_FAVORITE 4 +#define PRINTER_ENUM_NAME 8 +#define PRINTER_ENUM_REMOTE 16 +#define PRINTER_ENUM_SHARED 32 +#define PRINTER_ENUM_NETWORK 0x40 +#define PRINTER_ENUM_EXPAND 0x4000 +#define PRINTER_ENUM_CONTAINER 0x8000 +#define PRINTER_ENUM_ICONMASK 0xff0000 +#define PRINTER_ENUM_ICON1 0x10000 +#define PRINTER_ENUM_ICON2 0x20000 +#define PRINTER_ENUM_ICON3 0x40000 +#define PRINTER_ENUM_ICON4 0x80000 +#define PRINTER_ENUM_ICON5 0x100000 +#define PRINTER_ENUM_ICON6 0x200000 +#define PRINTER_ENUM_ICON7 0x400000 +#define PRINTER_ENUM_ICON8 0x800000 +#define PRINTER_NOTIFY_TYPE 0 +#define PRINTER_NOTIFY_FIELD_SERVER_NAME 0 +#define PRINTER_NOTIFY_FIELD_PRINTER_NAME 1 +#define PRINTER_NOTIFY_FIELD_SHARE_NAME 2 +#define PRINTER_NOTIFY_FIELD_PORT_NAME 3 +#define PRINTER_NOTIFY_FIELD_DRIVER_NAME 4 +#define PRINTER_NOTIFY_FIELD_COMMENT 5 +#define PRINTER_NOTIFY_FIELD_LOCATION 6 +#define PRINTER_NOTIFY_FIELD_DEVMODE 7 +#define PRINTER_NOTIFY_FIELD_SEPFILE 8 +#define PRINTER_NOTIFY_FIELD_PRINT_PROCESSOR 9 +#define PRINTER_NOTIFY_FIELD_PARAMETERS 10 +#define PRINTER_NOTIFY_FIELD_DATATYPE 11 +#define PRINTER_NOTIFY_FIELD_SECURITY_DESCRIPTOR 12 +#define PRINTER_NOTIFY_FIELD_ATTRIBUTES 13 +#define PRINTER_NOTIFY_FIELD_PRIORITY 14 +#define PRINTER_NOTIFY_FIELD_DEFAULT_PRIORITY 15 +#define PRINTER_NOTIFY_FIELD_START_TIME 16 +#define PRINTER_NOTIFY_FIELD_UNTIL_TIME 17 +#define PRINTER_NOTIFY_FIELD_STATUS 18 +#define PRINTER_NOTIFY_FIELD_STATUS_STRING 19 +#define PRINTER_NOTIFY_FIELD_CJOBS 20 +#define PRINTER_NOTIFY_FIELD_AVERAGE_PPM 21 +#define PRINTER_NOTIFY_FIELD_TOTAL_PAGES 22 +#define PRINTER_NOTIFY_FIELD_PAGES_PRINTED 23 +#define PRINTER_NOTIFY_FIELD_TOTAL_BYTES 24 +#define PRINTER_NOTIFY_FIELD_BYTES_PRINTED 25 +#define PRINTER_CHANGE_ADD_PRINTER 1 +#define PRINTER_CHANGE_SET_PRINTER 2 +#define PRINTER_CHANGE_DELETE_PRINTER 4 +#define PRINTER_CHANGE_FAILED_CONNECTION_PRINTER 8 +#define PRINTER_CHANGE_PRINTER 0xFF +#define PRINTER_CHANGE_ADD_JOB 0x100 +#define PRINTER_CHANGE_SET_JOB 0x200 +#define PRINTER_CHANGE_DELETE_JOB 0x400 +#define PRINTER_CHANGE_WRITE_JOB 0x800 +#define PRINTER_CHANGE_JOB 0xFF00 +#define PRINTER_CHANGE_ADD_FORM 0x10000 +#define PRINTER_CHANGE_SET_FORM 0x20000 +#define PRINTER_CHANGE_DELETE_FORM 0x40000 +#define PRINTER_CHANGE_FORM 0x70000 +#define PRINTER_CHANGE_ADD_PORT 0x100000 +#define PRINTER_CHANGE_CONFIGURE_PORT 0x200000 +#define PRINTER_CHANGE_DELETE_PORT 0x400000 +#define PRINTER_CHANGE_PORT 0x700000 +#define PRINTER_CHANGE_ADD_PRINT_PROCESSOR 0x1000000 +#define PRINTER_CHANGE_DELETE_PRINT_PROCESSOR 0x4000000 +#define PRINTER_CHANGE_PRINT_PROCESSOR 0x7000000 +#define PRINTER_CHANGE_ADD_PRINTER_DRIVER 0x10000000 +#define PRINTER_CHANGE_SET_PRINTER_DRIVER 0x20000000 +#define PRINTER_CHANGE_DELETE_PRINTER_DRIVER 0x40000000 +#define PRINTER_CHANGE_PRINTER_DRIVER 0x70000000 +#define PRINTER_CHANGE_TIMEOUT 0x80000000 +#define PRINTER_CHANGE_ALL 0x7777FFFF +#define PRINTER_NOTIFY_INFO_DISCARDED 1 +#define PRINTER_ALL_ACCESS (STANDARD_RIGHTS_REQUIRED|PRINTER_ACCESS_ADMINISTER|PRINTER_ACCESS_USE) +#define PRINTER_READ (STANDARD_RIGHTS_READ|PRINTER_ACCESS_USE) +#define PRINTER_WRITE (STANDARD_RIGHTS_WRITE|PRINTER_ACCESS_USE) +#define PRINTER_EXECUTE (STANDARD_RIGHTS_EXECUTE|PRINTER_ACCESS_USE) +#define NO_PRIORITY 0 +#define MAX_PRIORITY 99 +#define MIN_PRIORITY 1 +#define DEF_PRIORITY 1 +#define PORT_TYPE_WRITE 1 +#define PORT_TYPE_READ 2 +#define PORT_TYPE_REDIRECTED 4 +#define PORT_TYPE_NET_ATTACHED 8 +#define SERVER_ACCESS_ADMINISTER 1 +#define SERVER_ACCESS_ENUMERATE 2 +#define SERVER_ALL_ACCESS (STANDARD_RIGHTS_REQUIRED|SERVER_ACCESS_ADMINISTER|SERVER_ACCESS_ENUMERATE) +#define SERVER_READ (STANDARD_RIGHTS_READ|SERVER_ACCESS_ENUMERATE) +#define SERVER_WRITE (STANDARD_RIGHTS_WRITE|SERVER_ACCESS_ADMINISTER|SERVER_ACCESS_ENUMERATE) +#define SERVER_EXECUTE (STANDARD_RIGHTS_EXECUTE|SERVER_ACCESS_ENUMERATE) +#define PORT_STATUS_TYPE_ERROR 1 +#define PORT_STATUS_TYPE_WARNING 2 +#define PORT_STATUS_TYPE_INFO 3 +#define PORT_STATUS_OFFLINE 1 +#define PORT_STATUS_PAPER_JAM 2 +#define PORT_STATUS_PAPER_OUT 3 +#define PORT_STATUS_OUTPUT_BIN_FULL 4 +#define PORT_STATUS_PAPER_PROBLEM 5 +#define PORT_STATUS_NO_TONER 6 +#define PORT_STATUS_DOOR_OPEN 7 +#define PORT_STATUS_USER_INTERVENTION 8 +#define PORT_STATUS_OUT_OF_MEMORY 9 +#define PORT_STATUS_TONER_LOW 10 +#define PORT_STATUS_WARMING_UP 11 +#define PORT_STATUS_POWER_SAVE 12 +#ifndef RC_INVOKED +typedef struct _ADDJOB_INFO_1A { + LPSTR Path; + DWORD JobId; +} ADDJOB_INFO_1A,*PADDJOB_INFO_1A,*LPADDJOB_INFO_1A; +typedef struct _ADDJOB_INFO_1W { + LPWSTR Path; + DWORD JobId; +} ADDJOB_INFO_1W,*PADDJOB_INFO_1W,*LPADDJOB_INFO_1W; +typedef struct _DATATYPES_INFO_1A{LPSTR pName;} DATATYPES_INFO_1A,*PDATATYPES_INFO_1A,*LPDATATYPES_INFO_1A; +typedef struct _DATATYPES_INFO_1W{LPWSTR pName;} DATATYPES_INFO_1W,*PDATATYPES_INFO_1W,*LPDATATYPES_INFO_1W; +typedef struct _JOB_INFO_1A { + DWORD JobId; + LPSTR pPrinterName; + LPSTR pMachineName; + LPSTR pUserName; + LPSTR pDocument; + LPSTR pDatatype; + LPSTR pStatus; + DWORD Status; + DWORD Priority; + DWORD Position; + DWORD TotalPages; + DWORD PagesPrinted; + SYSTEMTIME Submitted; +} JOB_INFO_1A,*PJOB_INFO_1A,*LPJOB_INFO_1A; +typedef struct _JOB_INFO_1W { + DWORD JobId; + LPWSTR pPrinterName; + LPWSTR pMachineName; + LPWSTR pUserName; + LPWSTR pDocument; + LPWSTR pDatatype; + LPWSTR pStatus; + DWORD Status; + DWORD Priority; + DWORD Position; + DWORD TotalPages; + DWORD PagesPrinted; + SYSTEMTIME Submitted; +} JOB_INFO_1W,*PJOB_INFO_1W,*LPJOB_INFO_1W; +typedef struct _JOB_INFO_2A { + DWORD JobId; + LPSTR pPrinterName; + LPSTR pMachineName; + LPSTR pUserName; + LPSTR pDocument; + LPSTR pNotifyName; + LPSTR pDatatype; + LPSTR pPrintProcessor; + LPSTR pParameters; + LPSTR pDriverName; + LPDEVMODEA pDevMode; + LPSTR pStatus; + PSECURITY_DESCRIPTOR pSecurityDescriptor; + DWORD Status; + DWORD Priority; + DWORD Position; + DWORD StartTime; + DWORD UntilTime; + DWORD TotalPages; + DWORD Size; + SYSTEMTIME Submitted; + DWORD Time; + DWORD PagesPrinted; +} JOB_INFO_2A,*PJOB_INFO_2A,*LPJOB_INFO_2A; +typedef struct _JOB_INFO_2W { + DWORD JobId; + LPWSTR pPrinterName; + LPWSTR pMachineName; + LPWSTR pUserName; + LPWSTR pDocument; + LPWSTR pNotifyName; + LPWSTR pDatatype; + LPWSTR pPrintProcessor; + LPWSTR pParameters; + LPWSTR pDriverName; + LPDEVMODEW pDevMode; + LPWSTR pStatus; + PSECURITY_DESCRIPTOR pSecurityDescriptor; + DWORD Status; + DWORD Priority; + DWORD Position; + DWORD StartTime; + DWORD UntilTime; + DWORD TotalPages; + DWORD Size; + SYSTEMTIME Submitted; + DWORD Time; + DWORD PagesPrinted; +} JOB_INFO_2W,*PJOB_INFO_2W,*LPJOB_INFO_2W; +typedef struct _JOB_INFO_3 { + DWORD JobId; + DWORD NextJobId; + DWORD Reserved; +} JOB_INFO_3,*PJOB_INFO_3,*LPJOB_INFO_3; +typedef struct _DOC_INFO_1A { + LPSTR pDocName; + LPSTR pOutputFile; + LPSTR pDatatype; +} DOC_INFO_1A,*PDOC_INFO_1A,*LPDOC_INFO_1A; +typedef struct _DOC_INFO_1W { + LPWSTR pDocName; + LPWSTR pOutputFile; + LPWSTR pDatatype; +} DOC_INFO_1W,*PDOC_INFO_1W,*LPDOC_INFO_1W; +typedef struct _DOC_INFO_2A { + LPSTR pDocName; + LPSTR pOutputFile; + LPSTR pDatatype; + DWORD dwMode; + DWORD JobId; +} DOC_INFO_2A,*PDOC_INFO_2A,*LPDOC_INFO_2A; +typedef struct _DOC_INFO_2W { + LPWSTR pDocName; + LPWSTR pOutputFile; + LPWSTR pDatatype; + DWORD dwMode; + DWORD JobId; +} DOC_INFO_2W,*PDOC_INFO_2W,*LPDOC_INFO_2W; +typedef struct _DRIVER_INFO_1A {LPSTR pName;} DRIVER_INFO_1A,*PDRIVER_INFO_1A,*LPDRIVER_INFO_1A; +typedef struct _DRIVER_INFO_1W {LPWSTR pName;} DRIVER_INFO_1W,*PDRIVER_INFO_1W,*LPDRIVER_INFO_1W; +typedef struct _DRIVER_INFO_2A { + DWORD cVersion; + LPSTR pName; + LPSTR pEnvironment; + LPSTR pDriverPath; + LPSTR pDataFile; + LPSTR pConfigFile; +} DRIVER_INFO_2A,*PDRIVER_INFO_2A,*LPDRIVER_INFO_2A; +typedef struct _DRIVER_INFO_2W { + DWORD cVersion; + LPWSTR pName; + LPWSTR pEnvironment; + LPWSTR pDriverPath; + LPWSTR pDataFile; + LPWSTR pConfigFile; +} DRIVER_INFO_2W,*PDRIVER_INFO_2W,*LPDRIVER_INFO_2W; +typedef struct _DRIVER_INFO_3A { + DWORD cVersion; + LPSTR pName; + LPSTR pEnvironment; + LPSTR pDriverPath; + LPSTR pDataFile; + LPSTR pConfigFile; + LPSTR pHelpFile; + LPSTR pDependentFiles; + LPSTR pMonitorName; + LPSTR pDefaultDataType; +} DRIVER_INFO_3A,*PDRIVER_INFO_3A,*LPDRIVER_INFO_3A; +typedef struct _DRIVER_INFO_3W { + DWORD cVersion; + LPWSTR pName; + LPWSTR pEnvironment; + LPWSTR pDriverPath; + LPWSTR pDataFile; + LPWSTR pConfigFile; + LPWSTR pHelpFile; + LPWSTR pDependentFiles; + LPWSTR pMonitorName; + LPWSTR pDefaultDataType; +} DRIVER_INFO_3W,*PDRIVER_INFO_3W,*LPDRIVER_INFO_3W; +#if (_WIN32_WINNT >= 0x0500) +typedef struct _DRIVER_INFO_4A { + DWORD cVersion; + LPSTR pName; + LPSTR pEnvironment; + LPSTR pDriverPath; + LPSTR pDataFile; + LPSTR pConfigFile; + LPSTR pHelpFile; + LPSTR pDependentFiles; + LPSTR pMonitorName; + LPSTR pDefaultDataType; + LPSTR pszzPreviousNames; +} DRIVER_INFO_4A,*PDRIVER_INFO_4A,*LPDRIVER_INFO_4A; +typedef struct _DRIVER_INFO_4W { + DWORD cVersion; + LPWSTR pName; + LPWSTR pEnvironment; + LPWSTR pDriverPath; + LPWSTR pDataFile; + LPWSTR pConfigFile; + LPWSTR pHelpFile; + LPWSTR pDependentFiles; + LPWSTR pMonitorName; + LPWSTR pDefaultDataType; + LPWSTR pszzPreviousNames; +} DRIVER_INFO_4W,*PDRIVER_INFO_4W,*LPDRIVER_INFO_4W; +typedef struct _DRIVER_INFO_5A { + DWORD cVersion; + LPSTR pName; + LPSTR pEnvironment; + LPSTR pDriverPath; + LPSTR pDataFile; + LPSTR pConfigFile; + DWORD dwDriverAttributes; + DWORD dwConfigVersion; + DWORD dwDriverVersion; +} DRIVER_INFO_5A,*PDRIVER_INFO_5A,*LPDRIVER_INFO_5A; +typedef struct _DRIVER_INFO_5W { + DWORD cVersion; + LPWSTR pName; + LPWSTR pEnvironment; + LPWSTR pDriverPath; + LPWSTR pDataFile; + LPWSTR pConfigFile; + DWORD dwDriverAttributes; + DWORD dwConfigVersion; + DWORD dwDriverVersion; +} DRIVER_INFO_5W,*PDRIVER_INFO_5W,*LPDRIVER_INFO_5W; +typedef struct _DRIVER_INFO_6A { + DWORD cVersion; + LPSTR pName; + LPSTR pEnvironment; + LPSTR pDriverPath; + LPSTR pDataFile; + LPSTR pConfigFile; + LPSTR pHelpFile; + LPSTR pDependentFiles; + LPSTR pMonitorName; + LPSTR pDefaultDataType; + LPSTR pszzPreviousNames; + FILETIME ftDriverDate; + DWORDLONG dwlDriverVersion; + LPSTR pszMfgName; + LPSTR pszOEMUrl; + LPSTR pszHardwareID; + LPSTR pszProvider; +} DRIVER_INFO_6A,*PDRIVER_INFO_6A,*LPDRIVER_INFO_6A; +typedef struct _DRIVER_INFO_6W { + DWORD cVersion; + LPWSTR pName; + LPWSTR pEnvironment; + LPWSTR pDriverPath; + LPWSTR pDataFile; + LPWSTR pConfigFile; + LPWSTR pHelpFile; + LPWSTR pDependentFiles; + LPWSTR pMonitorName; + LPWSTR pDefaultDataType; + LPWSTR pszzPreviousNames; + FILETIME ftDriverDate; + DWORDLONG dwlDriverVersion; + LPWSTR pszMfgName; + LPWSTR pszOEMUrl; + LPWSTR pszHardwareID; + LPWSTR pszProvider; +} DRIVER_INFO_6W,*PDRIVER_INFO_6W,*LPDRIVER_INFO_6W; +#endif +typedef struct _MONITOR_INFO_1A{LPSTR pName;} MONITOR_INFO_1A,*PMONITOR_INFO_1A,*LPMONITOR_INFO_1A; +typedef struct _MONITOR_INFO_1W{LPWSTR pName;} MONITOR_INFO_1W,*PMONITOR_INFO_1W,*LPMONITOR_INFO_1W; +typedef struct _PORT_INFO_1A {LPSTR pName;} PORT_INFO_1A,*PPORT_INFO_1A,*LPPORT_INFO_1A; +typedef struct _PORT_INFO_1W {LPWSTR pName;} PORT_INFO_1W,*PPORT_INFO_1W,*LPPORT_INFO_1W; +typedef struct _MONITOR_INFO_2A{ + LPSTR pName; + LPSTR pEnvironment; + LPSTR pDLLName; +} MONITOR_INFO_2A,*PMONITOR_INFO_2A,*LPMONITOR_INFO_2A; +typedef struct _MONITOR_INFO_2W{ + LPWSTR pName; + LPWSTR pEnvironment; + LPWSTR pDLLName; +} MONITOR_INFO_2W,*PMONITOR_INFO_2W,*LPMONITOR_INFO_2W; +typedef struct _PORT_INFO_2A { + LPSTR pPortName; + LPSTR pMonitorName; + LPSTR pDescription; + DWORD fPortType; + DWORD Reserved; +} PORT_INFO_2A,*PPORT_INFO_2A,*LPPORT_INFO_2A; +typedef struct _PORT_INFO_2W { + LPWSTR pPortName; + LPWSTR pMonitorName; + LPWSTR pDescription; + DWORD fPortType; + DWORD Reserved; +} PORT_INFO_2W,*PPORT_INFO_2W,*LPPORT_INFO_2W; +typedef struct _PORT_INFO_3A { + DWORD dwStatus; + LPSTR pszStatus; + DWORD dwSeverity; +} PORT_INFO_3A,*PPORT_INFO_3A,*LPPORT_INFO_3A; +typedef struct _PORT_INFO_3W { + DWORD dwStatus; + LPWSTR pszStatus; + DWORD dwSeverity; +} PORT_INFO_3W,*PPORT_INFO_3W,*LPPORT_INFO_3W; +#if (_WIN32_WINNT >= 0x0500) +typedef struct _PRINTER_ENUM_VALUESA { + LPSTR pValueName; + DWORD cbValueName; + DWORD dwType; + LPBYTE pData; + DWORD cbData; +} PRINTER_ENUM_VALUESA,*PPRINTER_ENUM_VALUESA,*LPRINTER_ENUM_VALUESA; +typedef struct _PRINTER_ENUM_VALUESW { + LPWSTR pValueName; + DWORD cbValueName; + DWORD dwType; + LPBYTE pData; + DWORD cbData; +} PRINTER_ENUM_VALUESW,*PPRINTER_ENUM_VALUESW,*LPRINTER_ENUM_VALUESW; +#endif +typedef struct _PRINTER_INFO_1A { + DWORD Flags; + LPSTR pDescription; + LPSTR pName; + LPSTR pComment; +} PRINTER_INFO_1A,*PPRINTER_INFO_1A,*LPPRINTER_INFO_1A; +typedef struct _PRINTER_INFO_1W { + DWORD Flags; + LPWSTR pDescription; + LPWSTR pName; + LPWSTR pComment; +} PRINTER_INFO_1W,*PPRINTER_INFO_1W,*LPPRINTER_INFO_1W; +typedef struct _PRINTER_INFO_2A { + LPSTR pServerName; + LPSTR pPrinterName; + LPSTR pShareName; + LPSTR pPortName; + LPSTR pDriverName; + LPSTR pComment; + LPSTR pLocation; + LPDEVMODEA pDevMode; + LPSTR pSepFile; + LPSTR pPrintProcessor; + LPSTR pDatatype; + LPSTR pParameters; + PSECURITY_DESCRIPTOR pSecurityDescriptor; + DWORD Attributes; + DWORD Priority; + DWORD DefaultPriority; + DWORD StartTime; + DWORD UntilTime; + DWORD Status; + DWORD cJobs; + DWORD AveragePPM; +} PRINTER_INFO_2A,*PPRINTER_INFO_2A,*LPPRINTER_INFO_2A; +typedef struct _PRINTER_INFO_2W { + LPWSTR pServerName; + LPWSTR pPrinterName; + LPWSTR pShareName; + LPWSTR pPortName; + LPWSTR pDriverName; + LPWSTR pComment; + LPWSTR pLocation; + LPDEVMODEW pDevMode; + LPWSTR pSepFile; + LPWSTR pPrintProcessor; + LPWSTR pDatatype; + LPWSTR pParameters; + PSECURITY_DESCRIPTOR pSecurityDescriptor; + DWORD Attributes; + DWORD Priority; + DWORD DefaultPriority; + DWORD StartTime; + DWORD UntilTime; + DWORD Status; + DWORD cJobs; + DWORD AveragePPM; +} PRINTER_INFO_2W,*PPRINTER_INFO_2W,*LPPRINTER_INFO_2W; +typedef struct _PRINTER_INFO_3 { + PSECURITY_DESCRIPTOR pSecurityDescriptor; +} PRINTER_INFO_3,*PPRINTER_INFO_3,*LPPRINTER_INFO_3; +typedef struct _PRINTER_INFO_4A { + LPSTR pPrinterName; + LPSTR pServerName; + DWORD Attributes; +} PRINTER_INFO_4A,*PPRINTER_INFO_4A,*LPPRINTER_INFO_4A; +typedef struct _PRINTER_INFO_4W { + LPWSTR pPrinterName; + LPWSTR pServerName; + DWORD Attributes; +} PRINTER_INFO_4W,*PPRINTER_INFO_4W,*LPPRINTER_INFO_4W; +typedef struct _PRINTER_INFO_5A { + LPSTR pPrinterName; + LPSTR pPortName; + DWORD Attributes; + DWORD DeviceNotSelectedTimeout; + DWORD TransmissionRetryTimeout; +} PRINTER_INFO_5A,*PPRINTER_INFO_5A,*LPPRINTER_INFO_5A; +typedef struct _PRINTER_INFO_5W { + LPWSTR pPrinterName; + LPWSTR pPortName; + DWORD Attributes; + DWORD DeviceNotSelectedTimeout; + DWORD TransmissionRetryTimeout; +} PRINTER_INFO_5W,*PPRINTER_INFO_5W,*LPPRINTER_INFO_5W; +typedef struct _PRINTER_INFO_6 { + DWORD dwStatus; +} PRINTER_INFO_6,*PPRINTER_INFO_6,*LPPRINTER_INFO_6; +#if (_WIN32_WINNT >= 0x0500) +typedef struct _PRINTER_INFO_7A { + LPWSTR pszObjectGUID; + DWORD dwAction; +} PRINTER_INFO_7A,*PPRINTER_INFO_7A,*LPPRINTER_INFO_7A; +typedef struct _PRINTER_INFO_7W { + LPWSTR pszObjectGUID; + DWORD dwAction; +} PRINTER_INFO_7W,*PPRINTER_INFO_7W,*LPPRINTER_INFO_7W; +typedef struct _PRINTER_INFO_8 { + LPDEVMODE pDevMode; +} PRINTER_INFO_8,*PPRINTER_INFO_8,*LPPRINTER_INFO_8; +typedef struct _PRINTER_INFO_9 { + LPDEVMODE pDevMode; +} PRINTER_INFO_9,*PPRINTER_INFO_9,*LPPRINTER_INFO_9; +#endif +typedef struct _PRINTPROCESSOR_INFO_1A {LPSTR pName;} PRINTPROCESSOR_INFO_1A,*PPRINTPROCESSOR_INFO_1A,*LPPRINTPROCESSOR_INFO_1A; +typedef struct _PRINTPROCESSOR_INFO_1W {LPWSTR pName;} PRINTPROCESSOR_INFO_1W,*PPRINTPROCESSOR_INFO_1W,*LPPRINTPROCESSOR_INFO_1W; +typedef struct _PRINTER_NOTIFY_INFO_DATA { + WORD Type; + WORD Field; + DWORD Reserved; + DWORD Id; + union { + DWORD adwData[2]; + struct { + DWORD cbBuf; + PVOID pBuf; + } Data; + } NotifyData; +} PRINTER_NOTIFY_INFO_DATA,*PPRINTER_NOTIFY_INFO_DATA,*LPPRINTER_NOTIFY_INFO_DATA; +typedef struct _PRINTER_NOTIFY_INFO { + DWORD Version; + DWORD Flags; + DWORD Count; + PRINTER_NOTIFY_INFO_DATA aData[1]; +} PRINTER_NOTIFY_INFO,*PPRINTER_NOTIFY_INFO,*LPPRINTER_NOTIFY_INFO; +typedef struct _FORM_INFO_1A { + DWORD Flags; + LPSTR pName; + SIZEL Size; + RECTL ImageableArea; +} FORM_INFO_1A,*PFORM_INFO_1A,*LPFORM_INFO_1A; +typedef struct _FORM_INFO_1W { + DWORD Flags; + LPWSTR pName; + SIZEL Size; + RECTL ImageableArea; +} FORM_INFO_1W,*PFORM_INFO_1W,*LPFORM_INFO_1W; +typedef struct _PRINTER_DEFAULTSA { + LPSTR pDatatype; + LPDEVMODE pDevMode; + ACCESS_MASK DesiredAccess; +} PRINTER_DEFAULTSA,*PPRINTER_DEFAULTSA,*LPPRINTER_DEFAULTSA; +typedef struct _PRINTER_DEFAULTSW { + LPWSTR pDatatype; + LPDEVMODE pDevMode; + ACCESS_MASK DesiredAccess; +} PRINTER_DEFAULTSW,*PPRINTER_DEFAULTSW,*LPPRINTER_DEFAULTSW; +#if (_WIN32_WINNT >= 0x0500) +typedef struct _PRINTPROCESSOR_CAPS_1 { + DWORD dwLevel; + DWORD dwNupOptions; + DWORD dwPageOrderFlags; + DWORD dwNumberOfCopies; +} PRINTPROCESSOR_CAPS_1,*PPRINTPROCESSOR_CAPS_1,*LPPRINTPROCESSOR_CAPS_1; +#endif +typedef struct _PROVIDOR_INFO_1A { + LPSTR pName; + LPSTR pEnvironment; + LPSTR pDLLName; +} PROVIDOR_INFO_1A,*PPROVIDOR_INFO_1A,*LPPROVIDOR_INFO_1A; +typedef struct _PROVIDOR_INFO_1W { + LPWSTR pName; + LPWSTR pEnvironment; + LPWSTR pDLLName; +} PROVIDOR_INFO_1W,*PPROVIDOR_INFO_1W,*LPPROVIDOR_INFO_1W; +typedef struct _PROVIDOR_INFO_2A { + LPSTR pOrder; +} PROVIDOR_INFO_2A,*PPROVIDOR_INFO_2A,*LPROVIDOR_INFO_2A; +typedef struct _PROVIDOR_INFO_2W { + LPWSTR pOrder; +} PROVIDOR_INFO_2W,*PPROVIDOR_INFO_2W,*LPROVIDOR_INFO_2W; + +BOOL WINAPI AbortPrinter(HANDLE); +BOOL WINAPI AddFormA(HANDLE,DWORD,PBYTE); +BOOL WINAPI AddFormW(HANDLE,DWORD,PBYTE); +BOOL WINAPI AddJobA(HANDLE,DWORD,PBYTE,DWORD,PDWORD); +BOOL WINAPI AddJobW(HANDLE,DWORD,PBYTE,DWORD,PDWORD); +BOOL WINAPI AddMonitorA(LPSTR,DWORD,PBYTE); +BOOL WINAPI AddMonitorW(LPWSTR,DWORD,PBYTE); +BOOL WINAPI AddPortA(LPSTR,HWND,LPSTR); +BOOL WINAPI AddPortW(LPWSTR,HWND,LPWSTR); +HANDLE WINAPI AddPrinterA(LPSTR,DWORD,PBYTE); +HANDLE WINAPI AddPrinterW(LPWSTR,DWORD,PBYTE); +BOOL WINAPI AddPrinterConnectionA(LPSTR); +BOOL WINAPI AddPrinterConnectionW(LPWSTR); +BOOL WINAPI AddPrinterDriverA(LPSTR,DWORD,PBYTE); +BOOL WINAPI AddPrinterDriverW(LPWSTR,DWORD,PBYTE); +BOOL WINAPI AddPrintProcessorA(LPSTR,LPSTR,LPSTR,LPSTR); +BOOL WINAPI AddPrintProcessorW(LPWSTR,LPWSTR,LPWSTR,LPWSTR); +BOOL WINAPI AddPrintProvidorA(LPSTR,DWORD,PBYTE); +BOOL WINAPI AddPrintProvidorW(LPWSTR,DWORD,PBYTE); +LONG WINAPI AdvancedDocumentPropertiesA(HWND,HANDLE,LPSTR,PDEVMODE,PDEVMODEA); +LONG WINAPI AdvancedDocumentPropertiesW(HWND,HANDLE,LPWSTR,PDEVMODE,PDEVMODEW); +BOOL WINAPI ClosePrinter(HANDLE); +BOOL WINAPI ConfigurePortA(LPSTR,HWND,LPSTR); +BOOL WINAPI ConfigurePortW(LPWSTR,HWND,LPWSTR); +HANDLE WINAPI ConnectToPrinterDlg(HWND,DWORD); +BOOL WINAPI DeleteFormA(HANDLE,LPSTR); +BOOL WINAPI DeleteFormW(HANDLE,LPWSTR); +BOOL WINAPI DeleteMonitorA(LPSTR,LPSTR,LPSTR); +BOOL WINAPI DeleteMonitorW(LPWSTR,LPWSTR,LPWSTR); +BOOL WINAPI DeletePortA(LPSTR,HWND,LPSTR); +BOOL WINAPI DeletePortW(LPWSTR,HWND,LPWSTR); +BOOL WINAPI DeletePrinter(HANDLE); +BOOL WINAPI DeletePrinterConnectionA(LPSTR); +BOOL WINAPI DeletePrinterConnectionW(LPWSTR); +DWORD WINAPI DeletePrinterDataA(HANDLE,LPSTR); +DWORD WINAPI DeletePrinterDataW(HANDLE,LPWSTR); +BOOL WINAPI DeletePrinterDriverA(LPSTR,LPSTR,LPSTR); +BOOL WINAPI DeletePrinterDriverW(LPWSTR,LPWSTR,LPWSTR); +BOOL WINAPI DeletePrintProcessorA(LPSTR,LPSTR,LPSTR); +BOOL WINAPI DeletePrintProcessorW(LPWSTR,LPWSTR,LPWSTR); +BOOL WINAPI DeletePrintProvidorA(LPSTR,LPSTR,LPSTR); +BOOL WINAPI DeletePrintProvidorW(LPWSTR,LPWSTR,LPWSTR); +LONG WINAPI DocumentPropertiesA(HWND,HANDLE,LPSTR,PDEVMODEA,PDEVMODEA,DWORD); +LONG WINAPI DocumentPropertiesW(HWND,HANDLE,LPWSTR,PDEVMODEW,PDEVMODEW,DWORD); +BOOL WINAPI EndDocPrinter(HANDLE); +BOOL WINAPI EndPagePrinter(HANDLE); +BOOL WINAPI EnumFormsA(HANDLE,DWORD,PBYTE,DWORD,PDWORD,PDWORD); +BOOL WINAPI EnumFormsW(HANDLE,DWORD,PBYTE,DWORD,PDWORD,PDWORD); +BOOL WINAPI EnumJobsA(HANDLE,DWORD,DWORD,DWORD,PBYTE,DWORD,PDWORD,PDWORD); +BOOL WINAPI EnumJobsW(HANDLE,DWORD,DWORD,DWORD,PBYTE,DWORD,PDWORD,PDWORD); +BOOL WINAPI EnumMonitorsA(LPSTR,DWORD,PBYTE,DWORD,PDWORD,PDWORD); +BOOL WINAPI EnumMonitorsW(LPWSTR,DWORD,PBYTE,DWORD,PDWORD,PDWORD); +BOOL WINAPI EnumPortsA(LPSTR,DWORD,PBYTE,DWORD,PDWORD,PDWORD); +BOOL WINAPI EnumPortsW(LPWSTR,DWORD,PBYTE,DWORD,PDWORD,PDWORD); +DWORD WINAPI EnumPrinterDataA(HANDLE,DWORD,LPSTR,DWORD,PDWORD,PDWORD,PBYTE,DWORD,PDWORD); +DWORD WINAPI EnumPrinterDataW(HANDLE,DWORD,LPWSTR,DWORD,PDWORD,PDWORD,PBYTE,DWORD,PDWORD); +BOOL WINAPI EnumPrinterDriversA(LPSTR,LPSTR,DWORD,PBYTE,DWORD,PDWORD,PDWORD); +BOOL WINAPI EnumPrinterDriversW(LPWSTR,LPWSTR,DWORD,PBYTE,DWORD,PDWORD,PDWORD); +BOOL WINAPI EnumPrintersA(DWORD,LPSTR,DWORD,PBYTE,DWORD,PDWORD,PDWORD); +BOOL WINAPI EnumPrintersW(DWORD,LPWSTR,DWORD,PBYTE,DWORD,PDWORD,PDWORD); +BOOL WINAPI EnumPrintProcessorDatatypesA(LPSTR,LPSTR,DWORD,PBYTE,DWORD,PDWORD,PDWORD); +BOOL WINAPI EnumPrintProcessorDatatypesW(LPWSTR,LPWSTR,DWORD,PBYTE,DWORD,PDWORD,PDWORD); +BOOL WINAPI EnumPrintProcessorsA(LPSTR,LPSTR,DWORD,PBYTE,DWORD,PDWORD,PDWORD); +BOOL WINAPI EnumPrintProcessorsW(LPWSTR,LPWSTR,DWORD,PBYTE,DWORD,PDWORD,PDWORD); +BOOL WINAPI FindClosePrinterChangeNotification(HANDLE); +HANDLE WINAPI FindFirstPrinterChangeNotification(HANDLE,DWORD,DWORD,PVOID); +HANDLE WINAPI FindNextPrinterChangeNotification(HANDLE,PDWORD,PVOID,PVOID*); +BOOL WINAPI FreePrinterNotifyInfo(PPRINTER_NOTIFY_INFO); +#if _WIN32_WINNT >= 0x0500 +BOOL WINAPI GetDefaultPrinterA(LPSTR,LPDWORD); +BOOL WINAPI GetDefaultPrinterW(LPWSTR,LPDWORD); +#endif +BOOL WINAPI GetFormA(HANDLE,LPSTR,DWORD,PBYTE,DWORD,PDWORD); +BOOL WINAPI GetFormW(HANDLE,LPWSTR,DWORD,PBYTE,DWORD,PDWORD); +BOOL WINAPI GetJobA(HANDLE,DWORD,DWORD,PBYTE,DWORD,PDWORD); +BOOL WINAPI GetJobW(HANDLE,DWORD,DWORD,PBYTE,DWORD,PDWORD); +BOOL WINAPI GetPrinterA(HANDLE,DWORD,PBYTE,DWORD,PDWORD); +BOOL WINAPI GetPrinterW(HANDLE,DWORD,PBYTE,DWORD,PDWORD); +DWORD WINAPI GetPrinterDataA(HANDLE,LPSTR,PDWORD,PBYTE,DWORD,PDWORD); +DWORD WINAPI GetPrinterDataW(HANDLE,LPWSTR,PDWORD,PBYTE,DWORD,PDWORD); +DWORD WINAPI GetPrinterDriverA(HANDLE,LPSTR,DWORD,PBYTE,DWORD,PDWORD); +DWORD WINAPI GetPrinterDriverW(HANDLE,LPWSTR,DWORD,PBYTE,DWORD,PDWORD); +DWORD WINAPI GetPrinterDriverDirectoryA(LPSTR,LPSTR,DWORD,PBYTE,DWORD,PDWORD); +DWORD WINAPI GetPrinterDriverDirectoryW(LPWSTR,LPWSTR,DWORD,PBYTE,DWORD,PDWORD); +DWORD WINAPI GetPrintProcessorDirectoryA(LPSTR,LPSTR,DWORD,PBYTE,DWORD,PDWORD); +DWORD WINAPI GetPrintProcessorDirectoryW(LPWSTR,LPWSTR,DWORD,PBYTE,DWORD,PDWORD); +BOOL WINAPI OpenPrinterA(LPSTR,PHANDLE,LPPRINTER_DEFAULTSA); +BOOL WINAPI OpenPrinterW(LPWSTR,PHANDLE,LPPRINTER_DEFAULTSW); +DWORD WINAPI PrinterMessageBoxA(HANDLE,DWORD,HWND,LPSTR,LPSTR,DWORD); +DWORD WINAPI PrinterMessageBoxW(HANDLE,DWORD,HWND,LPWSTR,LPWSTR,DWORD); +BOOL WINAPI PrinterProperties(HWND,HANDLE); +BOOL WINAPI ReadPrinter(HANDLE,PVOID,DWORD,PDWORD); +BOOL WINAPI ResetPrinterA(HANDLE,LPPRINTER_DEFAULTSA); +BOOL WINAPI ResetPrinterW(HANDLE,LPPRINTER_DEFAULTSW); +BOOL WINAPI ScheduleJob(HANDLE,DWORD); +BOOL WINAPI SetFormA(HANDLE,LPSTR,DWORD,PBYTE); +BOOL WINAPI SetFormW(HANDLE,LPWSTR,DWORD,PBYTE); +BOOL WINAPI SetJobA(HANDLE,DWORD,DWORD,PBYTE,DWORD); +BOOL WINAPI SetJobW(HANDLE,DWORD,DWORD,PBYTE,DWORD); +BOOL WINAPI SetPrinterA(HANDLE,DWORD,PBYTE,DWORD); +BOOL WINAPI SetPrinterW(HANDLE,DWORD,PBYTE,DWORD); +BOOL WINAPI SetPrinterDataA(HANDLE,LPSTR,DWORD,PBYTE,DWORD); +BOOL WINAPI SetPrinterDataW(HANDLE,LPWSTR,DWORD,PBYTE,DWORD); +DWORD WINAPI StartDocPrinterA(HANDLE,DWORD,PBYTE); +DWORD WINAPI StartDocPrinterW(HANDLE,DWORD,PBYTE); +BOOL WINAPI StartPagePrinter(HANDLE); +DWORD WINAPI WaitForPrinterChange(HANDLE,DWORD); +BOOL WINAPI WritePrinter(HANDLE,PVOID,DWORD,PDWORD); + +#ifdef UNICODE +typedef JOB_INFO_1W JOB_INFO_1,*PJOB_INFO_1,*LPJOB_INFO_1; +typedef JOB_INFO_2W JOB_INFO_2,*PJOB_INFO_2,*LPJOB_INFO_2; +typedef ADDJOB_INFO_1W ADDJOB_INFO_1,*PADDJOB_INFO_1,*LPADDJOB_INFO_1; +typedef DATATYPES_INFO_1W DATATYPES_INFO_1,*PDATATYPES_INFO_1,*LPDATATYPES_INFO_1; +typedef MONITOR_INFO_1W MONITOR_INFO_1,*PMONITOR_INFO_1,*LPMONITOR_INFO_1; +typedef MONITOR_INFO_2W MONITOR_INFO_2,*PMONITOR_INFO_2,*LPMONITOR_INFO_2; +typedef DOC_INFO_1W DOC_INFO_1,*PDOC_INFO_1,*LPDOC_INFO_1; +typedef DOC_INFO_2W DOC_INFO_2,*PDOC_INFO_2,*LPDOC_INFO_2; +typedef PORT_INFO_1W PORT_INFO_1,*PPORT_INFO_1,*LPPORT_INFO_1; +typedef PORT_INFO_2W PORT_INFO_2,*PPORT_INFO_2,*LPPORT_INFO_2; +typedef PORT_INFO_3W PORT_INFO_3,*PPORT_INFO_3,*LPPORT_INFO_3; +typedef DRIVER_INFO_1W DRIVER_INFO_1,*PDRIVER_INFO_1,*LPDRIVER_INFO_1; +typedef DRIVER_INFO_2W DRIVER_INFO_2,*PDRIVER_INFO_2,*LPDRIVER_INFO_2; +typedef DRIVER_INFO_3W DRIVER_INFO_3,*PDRIVER_INFO_3,*LPDRIVER_INFO_3; +#if (_WIN32_WINNT >= 0x0500) +typedef DRIVER_INFO_4W DRIVER_INFO_4,*PDRIVER_INFO_4,*LPDRIVER_INFO_4; +typedef DRIVER_INFO_5W DRIVER_INFO_5,*PDRIVER_INFO_5,*LPDRIVER_INFO_5; +typedef DRIVER_INFO_6W DRIVER_INFO_6,*PDRIVER_INFO_6,*LPDRIVER_INFO_6; +typedef PRINTER_ENUM_VALUESW PRINTER_ENUM_VALUES,*PPRINTER_ENUM_VALUES,*LPRINTER_ENUM_VALUES; +#endif +typedef PRINTER_INFO_1W PRINTER_INFO_1,*PPRINTER_INFO_1,*LPPRINTER_INFO_1; +typedef PRINTER_INFO_2W PRINTER_INFO_2,*PPRINTER_INFO_2,*LPPRINTER_INFO_2; +typedef PRINTER_INFO_4W PRINTER_INFO_4,*PPRINTER_INFO_4,*LPPRINTER_INFO_4; +typedef PRINTER_INFO_5W PRINTER_INFO_5,*PPRINTER_INFO_5,*LPPRINTER_INFO_5; +#if (_WIN32_WINNT >= 0x0500) +typedef PRINTER_INFO_7W PRINTER_INFO_7,*PPRINTER_INFO_7,*LPPRINTER_INFO_7; +#endif +typedef PRINTPROCESSOR_INFO_1W PRINTPROCESSOR_INFO_1,*PPRINTPROCESSOR_INFO_1,*LPPRINTPROCESSOR_INFO_1; +typedef FORM_INFO_1W FORM_INFO_1,*PFORM_INFO_1,*LPFORM_INFO_1; +typedef PRINTER_DEFAULTSW PRINTER_DEFAULTS,*PPRINTER_DEFAULTS,*LPPRINTER_DEFAULTS; +typedef PROVIDOR_INFO_1W PROVIDOR_INFO_1,*PPROVIDOR_INFO_1,*LPROVIDOR_INFO_1; +typedef PROVIDOR_INFO_2W PROVIDOR_INFO_2,*PPROVIDOR_INFO_2,*LPROVIDOR_INFO_2; +#define AddForm AddFormW +#define AddJob AddJobW +#define AddMonitor AddMonitorW +#define AddPort AddPortW +#define AddPrinter AddPrinterW +#define AddPrinterConnection AddPrinterConnectionW +#define AddPrinterDriver AddPrinterDriverW +#define AddPrintProcessor AddPrintProcessorW +#define AddPrintProvidor AddPrintProvidorW +#define AdvancedDocumentProperties AdvancedDocumentPropertiesW +#define ConfigurePort ConfigurePortW +#define DeleteForm DeleteFormW +#define DeleteMonitor DeleteMonitorW +#define DeletePort DeletePortW +#define DeletePrinterConnection DeletePrinterConnectionW +#define DeletePrinterData DeletePrinterDataW +#define DeletePrinterDriver DeletePrinterDriverW +#define DeletePrintProcessor DeletePrinterProcessorW +#define DeletePrintProvidor DeletePrinterProvidorW +#define DocumentProperties DocumentPropertiesW +#define EnumForms EnumFormsW +#define EnumJobs EnumJobsW +#define EnumMonitors EnumMonitorsW +#define EnumPorts EnumPortsW +#define EnumPrinterData EnumPrinterDataW +#define EnumPrinterDrivers EnumPrinterDriversW +#define EnumPrinters EnumPrintersW +#define EnumPrintProcessorDatatypes EnumPrintProcessorDatatypesW +#define EnumPrintProcessors EnumPrintProcessorsW +#define GetDefaultPrinter GetDefaultPrinterW +#define GetForm GetFormW +#define GetJob GetJobW +#define GetPrinter GetPrinterW +#define GetPrinterData GetPrinterDataW +#define GetPrinterDriver GetPrinterDriverW +#define GetPrinterDriverDirectory GetPrinterDriverDirectoryW +#define GetPrintProcessorDirectory GetPrintProcessorDirectoryW +#define OpenPrinter OpenPrinterW +#define PrinterMessageBox PrinterMessageBoxW +#define ResetPrinter ResetPrinterW +#define SetForm SetFormW +#define SetJob SetJobW +#define SetPrinter SetPrinterW +#define SetPrinterData SetPrinterDataW +#define StartDocPrinter StartDocPrinterW +#else +typedef JOB_INFO_1A JOB_INFO_1,*PJOB_INFO_1,*LPJOB_INFO_1; +typedef JOB_INFO_2A JOB_INFO_2,*PJOB_INFO_2,*LPJOB_INFO_2; +typedef ADDJOB_INFO_1A ADDJOB_INFO_1,*PADDJOB_INFO_1,*LPADDJOB_INFO_1; +typedef DATATYPES_INFO_1A DATATYPES_INFO_1,*PDATATYPES_INFO_1,*LPDATATYPES_INFO_1; +typedef MONITOR_INFO_1A MONITOR_INFO_1,*PMONITOR_INFO_1,*LPMONITOR_INFO_1; +typedef MONITOR_INFO_2A MONITOR_INFO_2,*PMONITOR_INFO_2,*LPMONITOR_INFO_2; +typedef DOC_INFO_1A DOC_INFO_1,*PDOC_INFO_1,*LPDOC_INFO_1; +typedef DOC_INFO_2A DOC_INFO_2,*PDOC_INFO_2,*LPDOC_INFO_2; +typedef PORT_INFO_1A PORT_INFO_1,*PPORT_INFO_1,*LPPORT_INFO_1; +typedef PORT_INFO_2A PORT_INFO_2,*PPORT_INFO_2,*LPPORT_INFO_2; +typedef PORT_INFO_3A PORT_INFO_3,*PPORT_INFO_3,*LPPORT_INFO_3; +typedef DRIVER_INFO_1A DRIVER_INFO_1,*PDRIVER_INFO_1,*LPDRIVER_INFO_1; +typedef DRIVER_INFO_2A DRIVER_INFO_2,*PDRIVER_INFO_2,*LPDRIVER_INFO_2; +typedef DRIVER_INFO_3A DRIVER_INFO_3,*PDRIVER_INFO_3,*LPDRIVER_INFO_3; +#if (_WIN32_WINNT >= 0x0500) +typedef DRIVER_INFO_4A DRIVER_INFO_4,*PDRIVER_INFO_4,*LPDRIVER_INFO_4; +typedef DRIVER_INFO_5A DRIVER_INFO_5,*PDRIVER_INFO_5,*LPDRIVER_INFO_5; +typedef DRIVER_INFO_6A DRIVER_INFO_6,*PDRIVER_INFO_6,*LPDRIVER_INFO_6; +typedef PRINTER_ENUM_VALUESA PRINTER_ENUM_VALUES,*PPRINTER_ENUM_VALUES,*LPRINTER_ENUM_VALUES; +#endif +typedef PRINTER_INFO_1A PRINTER_INFO_1,*PPRINTER_INFO_1,*LPPRINTER_INFO_1; +typedef PRINTER_INFO_2A PRINTER_INFO_2,*PPRINTER_INFO_2,*LPPRINTER_INFO_2; +typedef PRINTER_INFO_4A PRINTER_INFO_4,*PPRINTER_INFO_4,*LPPRINTER_INFO_4; +typedef PRINTER_INFO_5A PRINTER_INFO_5,*PPRINTER_INFO_5,*LPPRINTER_INFO_5; +#if (_WIN32_WINNT >= 0x0500) +typedef PRINTER_INFO_7A PRINTER_INFO_7,*PPRINTER_INFO_7,*LPPRINTER_INFO_7; +#endif +typedef PRINTPROCESSOR_INFO_1A PRINTPROCESSOR_INFO_1,*PPRINTPROCESSOR_INFO_1,*LPPRINTPROCESSOR_INFO_1; +typedef FORM_INFO_1A FORM_INFO_1,*PFORM_INFO_1,*LPFORM_INFO_1; +typedef PRINTER_DEFAULTSA PRINTER_DEFAULTS,*PPRINTER_DEFAULTS,*LPPRINTER_DEFAULTS; +typedef PROVIDOR_INFO_1A PROVIDOR_INFO_1,*PPROVIDOR_INFO_1,*LPROVIDOR_INFO_1; +typedef PROVIDOR_INFO_2A PROVIDOR_INFO_2,*PPROVIDOR_INFO_2,*LPROVIDOR_INFO_2; +#define AddForm AddFormA +#define AddJob AddJobA +#define AddMonitor AddMonitorA +#define AddPort AddPortA +#define AddPrinter AddPrinterA +#define AddPrinterConnection AddPrinterConnectionA +#define AddPrinterDriver AddPrinterDriverA +#define AddPrintProcessor AddPrintProcessorA +#define AddPrintProvidor AddPrintProvidorA +#define AdvancedDocumentProperties AdvancedDocumentPropertiesA +#define ConfigurePort ConfigurePortA +#define DeleteForm DeleteFormA +#define DeleteMonitor DeleteMonitorA +#define DeletePort DeletePortA +#define DeletePrinterConnection DeletePrinterConnectionA +#define DeletePrinterData DeletePrinterDataA +#define DeletePrinterDriver DeletePrinterDriverA +#define DeletePrintProcessor DeletePrinterProcessorA +#define DeletePrintProvidor DeletePrinterProvidorA +#define DocumentProperties DocumentPropertiesA +#define EnumForms EnumFormsA +#define EnumJobs EnumJobsA +#define EnumMonitors EnumMonitorsA +#define EnumPorts EnumPortsA +#define EnumPrinterData EnumPrinterDataA +#define EnumPrinterDrivers EnumPrinterDriversA +#define EnumPrinters EnumPrintersA +#define EnumPrintProcessorDatatypes EnumPrintProcessorDatatypesA +#define EnumPrintProcessors EnumPrintProcessorsA +#define GetDefaultPrinter GetDefaultPrinterA +#define GetForm GetFormA +#define GetJob GetJobA +#define GetPrinter GetPrinterA +#define GetPrinterData GetPrinterDataA +#define GetPrinterDriver GetPrinterDriverA +#define GetPrinterDriverDirectory GetPrinterDriverDirectoryA +#define GetPrintProcessorDirectory GetPrintProcessorDirectoryA +#define OpenPrinter OpenPrinterA +#define PrinterMessageBox PrinterMessageBoxA +#define ResetPrinter ResetPrinterA +#define SetForm SetFormA +#define SetJob SetJobA +#define SetPrinter SetPrinterA +#define SetPrinterData SetPrinterDataA +#define StartDocPrinter StartDocPrinterA +#endif +#endif /* RC_INVOKED */ +#ifdef __cplusplus +} +#endif +#endif