home *** CD-ROM | disk | FTP | other *** search
/ Beginning C++ Through Gam…rogramming (2nd Edition) / BCGP2E.ISO / bloodshed / devcpp-4.9.9.2_setup.exe / winspool.h < prev    next >
C/C++ Source or Header  |  2005-01-29  |  30KB  |  792 lines

  1. #ifndef _WINSPOOL_H
  2. #define _WINSPOOL_H
  3. #if __GNUC__ >=3
  4. #pragma GCC system_header
  5. #endif
  6.  
  7. #ifdef __cplusplus
  8. extern "C" {
  9. #endif
  10. #define DI_CHANNEL 1
  11. #define DI_CHANNEL_WRITE 2
  12. #define DI_READ_SPOOL_JOB 3
  13. #define    FORM_BUILTIN    1
  14. #define    JOB_CONTROL_PAUSE    1
  15. #define    JOB_CONTROL_RESUME    2
  16. #define    JOB_CONTROL_CANCEL    3
  17. #define    JOB_CONTROL_RESTART    4
  18. #define    JOB_CONTROL_DELETE    5
  19. #define    JOB_STATUS_PAUSED    1
  20. #define    JOB_STATUS_ERROR    2
  21. #define    JOB_STATUS_DELETING    4
  22. #define    JOB_STATUS_SPOOLING    8
  23. #define    JOB_STATUS_PRINTING    16
  24. #define    JOB_STATUS_OFFLINE    32
  25. #define    JOB_STATUS_PAPEROUT    0x40
  26. #define    JOB_STATUS_PRINTED    0x80
  27. #define    JOB_STATUS_DELETED    0x100
  28. #define    JOB_STATUS_BLOCKED_DEVQ    0x200
  29. #define    JOB_STATUS_USER_INTERVENTION    0x400
  30. #define    JOB_POSITION_UNSPECIFIED    0
  31. #define    JOB_NOTIFY_TYPE    1
  32. #define    JOB_NOTIFY_FIELD_PRINTER_NAME    0
  33. #define    JOB_NOTIFY_FIELD_MACHINE_NAME    1
  34. #define    JOB_NOTIFY_FIELD_PORT_NAME    2
  35. #define    JOB_NOTIFY_FIELD_USER_NAME    3
  36. #define    JOB_NOTIFY_FIELD_NOTIFY_NAME    4
  37. #define    JOB_NOTIFY_FIELD_DATATYPE    5
  38. #define    JOB_NOTIFY_FIELD_PRINT_PROCESSOR    6
  39. #define    JOB_NOTIFY_FIELD_PARAMETERS    7
  40. #define    JOB_NOTIFY_FIELD_DRIVER_NAME    8
  41. #define    JOB_NOTIFY_FIELD_DEVMODE    9
  42. #define    JOB_NOTIFY_FIELD_STATUS    10
  43. #define    JOB_NOTIFY_FIELD_STATUS_STRING    11
  44. #define    JOB_NOTIFY_FIELD_SECURITY_DESCRIPTOR    12
  45. #define    JOB_NOTIFY_FIELD_DOCUMENT    13
  46. #define    JOB_NOTIFY_FIELD_PRIORITY    14
  47. #define    JOB_NOTIFY_FIELD_POSITION    15
  48. #define    JOB_NOTIFY_FIELD_SUBMITTED    16
  49. #define    JOB_NOTIFY_FIELD_START_TIME    17
  50. #define    JOB_NOTIFY_FIELD_UNTIL_TIME    18
  51. #define    JOB_NOTIFY_FIELD_TIME    19
  52. #define    JOB_NOTIFY_FIELD_TOTAL_PAGES    20
  53. #define    JOB_NOTIFY_FIELD_PAGES_PRINTED    21
  54. #define    JOB_NOTIFY_FIELD_TOTAL_BYTES    22
  55. #define    JOB_NOTIFY_FIELD_BYTES_PRINTED    23
  56. #define    JOB_ACCESS_ADMINISTER    16
  57. #define    JOB_ALL_ACCESS    (STANDARD_RIGHTS_REQUIRED|JOB_ACCESS_ADMINISTER)
  58. #define    JOB_READ    (STANDARD_RIGHTS_READ|    JOB_ACCESS_ADMINISTER)
  59. #define    JOB_WRITE    (STANDARD_RIGHTS_WRITE|JOB_ACCESS_ADMINISTER)
  60. #define    JOB_EXECUTE    (STANDARD_RIGHTS_EXECUTE|JOB_ACCESS_ADMINISTER)
  61. #define    PRINTER_NOTIFY_OPTIONS_REFRESH    1
  62. #define    PRINTER_ACCESS_ADMINISTER    4
  63. #define    PRINTER_ACCESS_USE    8
  64. #define    PRINTER_ERROR_INFORMATION    0x80000000
  65. #define    PRINTER_ERROR_WARNING    0x40000000
  66. #define    PRINTER_ERROR_SEVERE    0x20000000
  67. #define    PRINTER_ERROR_OUTOFPAPER    1
  68. #define    PRINTER_ERROR_JAM    2
  69. #define    PRINTER_ERROR_OUTOFTONER    4
  70. #define    PRINTER_CONTROL_PAUSE    1
  71. #define    PRINTER_CONTROL_RESUME    2
  72. #define    PRINTER_CONTROL_PURGE    3
  73. #define    PRINTER_CONTROL_SET_STATUS    4
  74. #define    PRINTER_STATUS_PAUSED    1
  75. #define    PRINTER_STATUS_ERROR    2
  76. #define    PRINTER_STATUS_PENDING_DELETION    4
  77. #define    PRINTER_STATUS_PAPER_JAM    8
  78. #define    PRINTER_STATUS_PAPER_OUT    0x10
  79. #define    PRINTER_STATUS_MANUAL_FEED    0x20
  80. #define    PRINTER_STATUS_PAPER_PROBLEM    0x40
  81. #define    PRINTER_STATUS_OFFLINE    0x80
  82. #define    PRINTER_STATUS_IO_ACTIVE    0x100
  83. #define    PRINTER_STATUS_BUSY    0x200
  84. #define    PRINTER_STATUS_PRINTING    0x400
  85. #define    PRINTER_STATUS_OUTPUT_BIN_FULL    0x800
  86. #define    PRINTER_STATUS_NOT_AVAILABLE    0x1000
  87. #define    PRINTER_STATUS_WAITING    0x2000
  88. #define    PRINTER_STATUS_PROCESSING    0x4000
  89. #define    PRINTER_STATUS_INITIALIZING    0x8000
  90. #define    PRINTER_STATUS_WARMING_UP    0x10000
  91. #define    PRINTER_STATUS_TONER_LOW    0x20000
  92. #define    PRINTER_STATUS_NO_TONER    0x40000
  93. #define    PRINTER_STATUS_PAGE_PUNT    0x80000
  94. #define    PRINTER_STATUS_USER_INTERVENTION    0x100000
  95. #define    PRINTER_STATUS_OUT_OF_MEMORY    0x200000
  96. #define    PRINTER_STATUS_DOOR_OPEN    0x400000
  97. #define    PRINTER_STATUS_SERVER_UNKNOWN    0x800000
  98. #define    PRINTER_STATUS_POWER_SAVE    0x1000000
  99. #define    PRINTER_ATTRIBUTE_QUEUED    1
  100. #define    PRINTER_ATTRIBUTE_DIRECT    2
  101. #define    PRINTER_ATTRIBUTE_DEFAULT    4
  102. #define    PRINTER_ATTRIBUTE_SHARED    8
  103. #define    PRINTER_ATTRIBUTE_NETWORK    0x10
  104. #define    PRINTER_ATTRIBUTE_HIDDEN    0x20
  105. #define    PRINTER_ATTRIBUTE_LOCAL    0x40
  106. #define    PRINTER_ATTRIBUTE_ENABLE_DEVQ    0x80
  107. #define    PRINTER_ATTRIBUTE_KEEPPRINTEDJOBS    0x100
  108. #define    PRINTER_ATTRIBUTE_DO_COMPLETE_FIRST    0x200
  109. #define    PRINTER_ATTRIBUTE_WORK_OFFLINE    0x400
  110. #define    PRINTER_ATTRIBUTE_ENABLE_BIDI    0x800
  111. #define    PRINTER_ATTRIBUTE_RAW_ONLY    0x1000
  112. #define    PRINTER_ATTRIBUTE_PUBLISHED    0x2000
  113. #define    PRINTER_ENUM_DEFAULT    1
  114. #define    PRINTER_ENUM_LOCAL    2
  115. #define    PRINTER_ENUM_CONNECTIONS    4
  116. #define    PRINTER_ENUM_FAVORITE    4
  117. #define    PRINTER_ENUM_NAME    8
  118. #define    PRINTER_ENUM_REMOTE    16
  119. #define    PRINTER_ENUM_SHARED    32
  120. #define    PRINTER_ENUM_NETWORK    0x40
  121. #define    PRINTER_ENUM_EXPAND    0x4000
  122. #define    PRINTER_ENUM_CONTAINER    0x8000
  123. #define    PRINTER_ENUM_ICONMASK    0xff0000
  124. #define    PRINTER_ENUM_ICON1    0x10000
  125. #define    PRINTER_ENUM_ICON2    0x20000
  126. #define    PRINTER_ENUM_ICON3    0x40000
  127. #define    PRINTER_ENUM_ICON4    0x80000
  128. #define    PRINTER_ENUM_ICON5    0x100000
  129. #define    PRINTER_ENUM_ICON6    0x200000
  130. #define    PRINTER_ENUM_ICON7    0x400000
  131. #define    PRINTER_ENUM_ICON8    0x800000
  132. #define PRINTER_NOTIFY_TYPE    0
  133. #define PRINTER_NOTIFY_FIELD_SERVER_NAME    0
  134. #define PRINTER_NOTIFY_FIELD_PRINTER_NAME    1
  135. #define PRINTER_NOTIFY_FIELD_SHARE_NAME    2
  136. #define PRINTER_NOTIFY_FIELD_PORT_NAME    3
  137. #define PRINTER_NOTIFY_FIELD_DRIVER_NAME    4
  138. #define PRINTER_NOTIFY_FIELD_COMMENT    5
  139. #define PRINTER_NOTIFY_FIELD_LOCATION    6
  140. #define PRINTER_NOTIFY_FIELD_DEVMODE    7
  141. #define PRINTER_NOTIFY_FIELD_SEPFILE    8
  142. #define PRINTER_NOTIFY_FIELD_PRINT_PROCESSOR    9
  143. #define PRINTER_NOTIFY_FIELD_PARAMETERS    10
  144. #define PRINTER_NOTIFY_FIELD_DATATYPE    11
  145. #define PRINTER_NOTIFY_FIELD_SECURITY_DESCRIPTOR    12
  146. #define PRINTER_NOTIFY_FIELD_ATTRIBUTES    13
  147. #define PRINTER_NOTIFY_FIELD_PRIORITY    14
  148. #define PRINTER_NOTIFY_FIELD_DEFAULT_PRIORITY    15
  149. #define PRINTER_NOTIFY_FIELD_START_TIME    16
  150. #define PRINTER_NOTIFY_FIELD_UNTIL_TIME    17
  151. #define PRINTER_NOTIFY_FIELD_STATUS    18
  152. #define PRINTER_NOTIFY_FIELD_STATUS_STRING    19
  153. #define PRINTER_NOTIFY_FIELD_CJOBS    20
  154. #define PRINTER_NOTIFY_FIELD_AVERAGE_PPM    21
  155. #define PRINTER_NOTIFY_FIELD_TOTAL_PAGES    22
  156. #define PRINTER_NOTIFY_FIELD_PAGES_PRINTED    23
  157. #define PRINTER_NOTIFY_FIELD_TOTAL_BYTES    24
  158. #define PRINTER_NOTIFY_FIELD_BYTES_PRINTED    25
  159. #define PRINTER_CHANGE_ADD_PRINTER    1
  160. #define PRINTER_CHANGE_SET_PRINTER    2
  161. #define PRINTER_CHANGE_DELETE_PRINTER    4
  162. #define PRINTER_CHANGE_FAILED_CONNECTION_PRINTER    8
  163. #define PRINTER_CHANGE_PRINTER    0xFF
  164. #define PRINTER_CHANGE_ADD_JOB    0x100
  165. #define PRINTER_CHANGE_SET_JOB    0x200
  166. #define PRINTER_CHANGE_DELETE_JOB    0x400
  167. #define PRINTER_CHANGE_WRITE_JOB    0x800
  168. #define PRINTER_CHANGE_JOB    0xFF00
  169. #define PRINTER_CHANGE_ADD_FORM    0x10000
  170. #define PRINTER_CHANGE_SET_FORM    0x20000
  171. #define PRINTER_CHANGE_DELETE_FORM    0x40000
  172. #define PRINTER_CHANGE_FORM    0x70000
  173. #define PRINTER_CHANGE_ADD_PORT    0x100000
  174. #define PRINTER_CHANGE_CONFIGURE_PORT    0x200000
  175. #define PRINTER_CHANGE_DELETE_PORT    0x400000
  176. #define PRINTER_CHANGE_PORT    0x700000
  177. #define PRINTER_CHANGE_ADD_PRINT_PROCESSOR    0x1000000
  178. #define PRINTER_CHANGE_DELETE_PRINT_PROCESSOR    0x4000000
  179. #define PRINTER_CHANGE_PRINT_PROCESSOR    0x7000000
  180. #define PRINTER_CHANGE_ADD_PRINTER_DRIVER    0x10000000
  181. #define PRINTER_CHANGE_SET_PRINTER_DRIVER    0x20000000
  182. #define PRINTER_CHANGE_DELETE_PRINTER_DRIVER    0x40000000
  183. #define PRINTER_CHANGE_PRINTER_DRIVER    0x70000000
  184. #define PRINTER_CHANGE_TIMEOUT    0x80000000
  185. #define PRINTER_CHANGE_ALL    0x7777FFFF
  186. #define PRINTER_NOTIFY_INFO_DISCARDED    1
  187. #define PRINTER_ALL_ACCESS    (STANDARD_RIGHTS_REQUIRED|PRINTER_ACCESS_ADMINISTER|PRINTER_ACCESS_USE)
  188. #define PRINTER_READ    (STANDARD_RIGHTS_READ|PRINTER_ACCESS_USE)
  189. #define PRINTER_WRITE    (STANDARD_RIGHTS_WRITE|PRINTER_ACCESS_USE)
  190. #define PRINTER_EXECUTE    (STANDARD_RIGHTS_EXECUTE|PRINTER_ACCESS_USE)
  191. #define NO_PRIORITY    0
  192. #define MAX_PRIORITY    99
  193. #define MIN_PRIORITY    1
  194. #define DEF_PRIORITY    1
  195. #define PORT_TYPE_WRITE    1
  196. #define PORT_TYPE_READ    2
  197. #define PORT_TYPE_REDIRECTED    4
  198. #define PORT_TYPE_NET_ATTACHED    8
  199. #define SERVER_ACCESS_ADMINISTER    1
  200. #define SERVER_ACCESS_ENUMERATE    2
  201. #define SERVER_ALL_ACCESS    (STANDARD_RIGHTS_REQUIRED|SERVER_ACCESS_ADMINISTER|SERVER_ACCESS_ENUMERATE)
  202. #define SERVER_READ    (STANDARD_RIGHTS_READ|SERVER_ACCESS_ENUMERATE)
  203. #define SERVER_WRITE    (STANDARD_RIGHTS_WRITE|SERVER_ACCESS_ADMINISTER|SERVER_ACCESS_ENUMERATE)
  204. #define SERVER_EXECUTE    (STANDARD_RIGHTS_EXECUTE|SERVER_ACCESS_ENUMERATE)
  205. #define PORT_STATUS_TYPE_ERROR    1
  206. #define PORT_STATUS_TYPE_WARNING    2
  207. #define PORT_STATUS_TYPE_INFO    3
  208. #define PORT_STATUS_OFFLINE    1
  209. #define PORT_STATUS_PAPER_JAM    2
  210. #define PORT_STATUS_PAPER_OUT    3
  211. #define PORT_STATUS_OUTPUT_BIN_FULL    4
  212. #define PORT_STATUS_PAPER_PROBLEM    5
  213. #define PORT_STATUS_NO_TONER    6
  214. #define PORT_STATUS_DOOR_OPEN    7
  215. #define PORT_STATUS_USER_INTERVENTION    8
  216. #define PORT_STATUS_OUT_OF_MEMORY    9
  217. #define PORT_STATUS_TONER_LOW    10
  218. #define PORT_STATUS_WARMING_UP    11
  219. #define PORT_STATUS_POWER_SAVE    12
  220. #ifndef RC_INVOKED
  221. typedef struct _ADDJOB_INFO_1A {
  222.     LPSTR Path;
  223.     DWORD JobId;
  224. } ADDJOB_INFO_1A,*PADDJOB_INFO_1A,*LPADDJOB_INFO_1A;
  225. typedef struct _ADDJOB_INFO_1W {
  226.     LPWSTR Path;
  227.     DWORD JobId;
  228. } ADDJOB_INFO_1W,*PADDJOB_INFO_1W,*LPADDJOB_INFO_1W;
  229. typedef struct _DATATYPES_INFO_1A{LPSTR pName;} DATATYPES_INFO_1A,*PDATATYPES_INFO_1A,*LPDATATYPES_INFO_1A;
  230. typedef struct _DATATYPES_INFO_1W{LPWSTR pName;} DATATYPES_INFO_1W,*PDATATYPES_INFO_1W,*LPDATATYPES_INFO_1W;
  231. typedef struct _JOB_INFO_1A {
  232.     DWORD JobId;
  233.     LPSTR pPrinterName;
  234.     LPSTR pMachineName;
  235.     LPSTR pUserName;
  236.     LPSTR pDocument;
  237.     LPSTR pDatatype;
  238.     LPSTR pStatus;
  239.     DWORD Status;
  240.     DWORD Priority;
  241.     DWORD Position;
  242.     DWORD TotalPages;
  243.     DWORD PagesPrinted;
  244.     SYSTEMTIME Submitted;
  245. } JOB_INFO_1A,*PJOB_INFO_1A,*LPJOB_INFO_1A;
  246. typedef struct _JOB_INFO_1W {
  247.     DWORD JobId;
  248.     LPWSTR pPrinterName;
  249.     LPWSTR pMachineName;
  250.     LPWSTR pUserName;
  251.     LPWSTR pDocument;
  252.     LPWSTR pDatatype;
  253.     LPWSTR pStatus;
  254.     DWORD Status;
  255.     DWORD Priority;
  256.     DWORD Position;
  257.     DWORD TotalPages;
  258.     DWORD PagesPrinted;
  259.     SYSTEMTIME Submitted;
  260. } JOB_INFO_1W,*PJOB_INFO_1W,*LPJOB_INFO_1W;
  261. typedef struct _JOB_INFO_2A {
  262.     DWORD JobId;
  263.     LPSTR pPrinterName;
  264.     LPSTR pMachineName;
  265.     LPSTR pUserName;
  266.     LPSTR pDocument;
  267.     LPSTR pNotifyName;
  268.     LPSTR pDatatype;
  269.     LPSTR pPrintProcessor;
  270.     LPSTR pParameters;
  271.     LPSTR pDriverName;
  272.     LPDEVMODEA pDevMode;
  273.     LPSTR pStatus;
  274.     PSECURITY_DESCRIPTOR pSecurityDescriptor;
  275.     DWORD Status;
  276.     DWORD Priority;
  277.     DWORD Position;
  278.     DWORD StartTime;
  279.     DWORD UntilTime;
  280.     DWORD TotalPages;
  281.     DWORD Size;
  282.     SYSTEMTIME Submitted;
  283.     DWORD Time;
  284.     DWORD PagesPrinted;
  285. } JOB_INFO_2A,*PJOB_INFO_2A,*LPJOB_INFO_2A;
  286. typedef struct _JOB_INFO_2W {
  287.     DWORD JobId;
  288.     LPWSTR pPrinterName;
  289.     LPWSTR pMachineName;
  290.     LPWSTR pUserName;
  291.     LPWSTR pDocument;
  292.     LPWSTR pNotifyName;
  293.     LPWSTR pDatatype;
  294.     LPWSTR pPrintProcessor;
  295.     LPWSTR pParameters;
  296.     LPWSTR pDriverName;
  297.     LPDEVMODEW pDevMode;
  298.     LPWSTR pStatus;
  299.     PSECURITY_DESCRIPTOR pSecurityDescriptor;
  300.     DWORD Status;
  301.     DWORD Priority;
  302.     DWORD Position;
  303.     DWORD StartTime;
  304.     DWORD UntilTime;
  305.     DWORD TotalPages;
  306.     DWORD Size;
  307.     SYSTEMTIME Submitted;
  308.     DWORD Time;
  309.     DWORD PagesPrinted;
  310. } JOB_INFO_2W,*PJOB_INFO_2W,*LPJOB_INFO_2W;
  311. typedef struct _DOC_INFO_1A {
  312.     LPSTR pDocName;
  313.     LPSTR pOutputFile;
  314.     LPSTR pDatatype;
  315. } DOC_INFO_1A,*PDOC_INFO_1A,*LPDOC_INFO_1A;
  316. typedef struct _DOC_INFO_1W {
  317.     LPWSTR pDocName;
  318.     LPWSTR pOutputFile;
  319.     LPWSTR pDatatype;
  320. } DOC_INFO_1W,*PDOC_INFO_1W,*LPDOC_INFO_1W;
  321. typedef struct _DOC_INFO_2A {
  322.     LPSTR pDocName;
  323.     LPSTR pOutputFile;
  324.     LPSTR pDatatype;
  325.     DWORD dwMode;
  326.     DWORD JobId;
  327. } DOC_INFO_2A,*PDOC_INFO_2A,*LPDOC_INFO_2A;
  328. typedef struct _DOC_INFO_2W {
  329.     LPWSTR pDocName;
  330.     LPWSTR pOutputFile;
  331.     LPWSTR pDatatype;
  332.     DWORD dwMode;
  333.     DWORD JobId;
  334. } DOC_INFO_2W,*PDOC_INFO_2W,*LPDOC_INFO_2W;
  335. typedef    struct    _DRIVER_INFO_1A    {LPSTR    pName;} DRIVER_INFO_1A,*PDRIVER_INFO_1A,*LPDRIVER_INFO_1A;
  336. typedef    struct    _DRIVER_INFO_1W    {LPWSTR    pName;} DRIVER_INFO_1W,*PDRIVER_INFO_1W,*LPDRIVER_INFO_1W;
  337. typedef    struct    _DRIVER_INFO_2A    {
  338.     DWORD cVersion;
  339.     LPSTR pName;
  340.     LPSTR pEnvironment;
  341.     LPSTR pDriverPath;
  342.     LPSTR pDataFile;
  343.     LPSTR pConfigFile;
  344. } DRIVER_INFO_2A,*PDRIVER_INFO_2A,*LPDRIVER_INFO_2A;
  345. typedef    struct    _DRIVER_INFO_2W    {
  346.     DWORD cVersion;
  347.     LPWSTR pName;
  348.     LPWSTR pEnvironment;
  349.     LPWSTR pDriverPath;
  350.     LPWSTR pDataFile;
  351.     LPWSTR pConfigFile;
  352. }    DRIVER_INFO_2W,*PDRIVER_INFO_2W,*LPDRIVER_INFO_2W;
  353. typedef    struct    _DRIVER_INFO_3A    {
  354.     DWORD cVersion;
  355.     LPSTR pName;
  356.     LPSTR pEnvironment;
  357.     LPSTR pDriverPath;
  358.     LPSTR pDataFile;
  359.     LPSTR pConfigFile;
  360.     LPSTR pHelpFile;
  361.     LPSTR pDependentFiles;
  362.     LPSTR pMonitorName;
  363.     LPSTR pDefaultDataType;
  364. } DRIVER_INFO_3A,*PDRIVER_INFO_3A,*LPDRIVER_INFO_3A;
  365. typedef    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. typedef struct _MONITOR_INFO_1A{LPSTR pName;} MONITOR_INFO_1A,*PMONITOR_INFO_1A,*LPMONITOR_INFO_1A;
  378. typedef struct _MONITOR_INFO_1W{LPWSTR pName;} MONITOR_INFO_1W,*PMONITOR_INFO_1W,*LPMONITOR_INFO_1W;
  379. typedef struct _PORT_INFO_1A {LPSTR pName;} PORT_INFO_1A,*PPORT_INFO_1A,*LPPORT_INFO_1A;
  380. typedef struct _PORT_INFO_1W {LPWSTR pName;} PORT_INFO_1W,*PPORT_INFO_1W,*LPPORT_INFO_1W;
  381. typedef struct _MONITOR_INFO_2A{
  382.     LPSTR pName;
  383.     LPSTR pEnvironment;
  384.     LPSTR pDLLName;
  385. } MONITOR_INFO_2A,*PMONITOR_INFO_2A,*LPMONITOR_INFO_2A;
  386. typedef struct _MONITOR_INFO_2W{
  387.     LPWSTR pName;
  388.     LPWSTR pEnvironment;
  389.     LPWSTR pDLLName;
  390. } MONITOR_INFO_2W,*PMONITOR_INFO_2W,*LPMONITOR_INFO_2W;
  391. typedef struct _PORT_INFO_2A {
  392.     LPSTR pPortName;
  393.     LPSTR pMonitorName;
  394.     LPSTR pDescription;
  395.     DWORD fPortType;
  396.     DWORD Reserved;
  397. } PORT_INFO_2A,*PPORT_INFO_2A,*LPPORT_INFO_2A;
  398. typedef struct _PORT_INFO_2W {
  399.     LPWSTR pPortName;
  400.     LPWSTR pMonitorName;
  401.     LPWSTR pDescription;
  402.     DWORD fPortType;
  403.     DWORD Reserved;
  404. } PORT_INFO_2W,*PPORT_INFO_2W,*LPPORT_INFO_2W;
  405. typedef struct _PORT_INFO_3A {
  406.     DWORD dwStatus;
  407.     LPSTR pszStatus;
  408.     DWORD dwSeverity;
  409. } PORT_INFO_3A,*PPORT_INFO_3A,*LPPORT_INFO_3A;
  410. typedef struct _PORT_INFO_3W {
  411.     DWORD dwStatus;
  412.     LPWSTR pszStatus;
  413.     DWORD dwSeverity;
  414. } PORT_INFO_3W,*PPORT_INFO_3W,*LPPORT_INFO_3W;
  415. typedef    struct _PRINTER_INFO_1A {
  416.     DWORD Flags;
  417.     LPSTR pDescription;
  418.     LPSTR pName;
  419.     LPSTR pComment;
  420. } PRINTER_INFO_1A,*PPRINTER_INFO_1A,*LPPRINTER_INFO_1A;
  421. typedef    struct _PRINTER_INFO_1W    {
  422.     DWORD Flags;
  423.     LPWSTR pDescription;
  424.     LPWSTR pName;
  425.     LPWSTR pComment;
  426. } PRINTER_INFO_1W,*PPRINTER_INFO_1W,*LPPRINTER_INFO_1W;
  427. typedef    struct _PRINTER_INFO_2A {
  428.     LPSTR pServerName;
  429.     LPSTR pPrinterName;
  430.     LPSTR pShareName;
  431.     LPSTR pPortName;
  432.     LPSTR pDriverName;
  433.     LPSTR pComment;
  434.     LPSTR pLocation;
  435.     LPDEVMODEA pDevMode;
  436.     LPSTR pSepFile;
  437.     LPSTR pPrintProcessor;
  438.     LPSTR pDatatype;
  439.     LPSTR pParameters;
  440.     PSECURITY_DESCRIPTOR pSecurityDescriptor;
  441.     DWORD Attributes;
  442.     DWORD Priority;
  443.     DWORD DefaultPriority;
  444.     DWORD StartTime;
  445.     DWORD UntilTime;
  446.     DWORD Status;
  447.     DWORD cJobs;
  448.     DWORD AveragePPM;
  449. } PRINTER_INFO_2A,*PPRINTER_INFO_2A,*LPPRINTER_INFO_2A;
  450. typedef    struct _PRINTER_INFO_2W {
  451.     LPWSTR pServerName;
  452.     LPWSTR pPrinterName;
  453.     LPWSTR pShareName;
  454.     LPWSTR pPortName;
  455.     LPWSTR pDriverName;
  456.     LPWSTR pComment;
  457.     LPWSTR pLocation;
  458.     LPDEVMODEW pDevMode;
  459.     LPWSTR pSepFile;
  460.     LPWSTR pPrintProcessor;
  461.     LPWSTR pDatatype;
  462.     LPWSTR pParameters;
  463.     PSECURITY_DESCRIPTOR pSecurityDescriptor;
  464.     DWORD Attributes;
  465.     DWORD Priority;
  466.     DWORD DefaultPriority;
  467.     DWORD StartTime;
  468.     DWORD UntilTime;
  469.     DWORD Status;
  470.     DWORD cJobs;
  471.     DWORD AveragePPM;
  472. } PRINTER_INFO_2W,*PPRINTER_INFO_2W,*LPPRINTER_INFO_2W;
  473. typedef    struct _PRINTER_INFO_3    {
  474.     PSECURITY_DESCRIPTOR pSecurityDescriptor;
  475. } PRINTER_INFO_3,*PPRINTER_INFO_3,*LPPRINTER_INFO_3;
  476. typedef    struct _PRINTER_INFO_4A {
  477.     LPSTR pPrinterName;
  478.     LPSTR pServerName;
  479.     DWORD Attributes;
  480. } PRINTER_INFO_4A,*PPRINTER_INFO_4A,*LPPRINTER_INFO_4A;
  481. typedef    struct _PRINTER_INFO_4W    {
  482.     LPWSTR pPrinterName;
  483.     LPWSTR pServerName;
  484.     DWORD Attributes;
  485. } PRINTER_INFO_4W,*PPRINTER_INFO_4W,*LPPRINTER_INFO_4W;
  486. typedef    struct _PRINTER_INFO_5A    {
  487.     LPSTR pPrinterName;
  488.     LPSTR pPortName;
  489.     DWORD Attributes;
  490.     DWORD DeviceNotSelectedTimeout;
  491.     DWORD TransmissionRetryTimeout;
  492. } PRINTER_INFO_5A,*PPRINTER_INFO_5A,*LPPRINTER_INFO_5A;
  493. typedef    struct _PRINTER_INFO_5W    {
  494.     LPWSTR pPrinterName;
  495.     LPWSTR pPortName;
  496.     DWORD Attributes;
  497.     DWORD DeviceNotSelectedTimeout;
  498.     DWORD TransmissionRetryTimeout;
  499. } PRINTER_INFO_5W,*PPRINTER_INFO_5W,*LPPRINTER_INFO_5W;
  500. typedef struct _PRINTER_INFO_6 {
  501.     DWORD    dwStatus;
  502. } PRINTER_INFO_6,*PPRINTER_INFO_6,*LPPRINTER_INFO_6;
  503. typedef    struct _PRINTPROCESSOR_INFO_1A {LPSTR pName;} PRINTPROCESSOR_INFO_1A,*PPRINTPROCESSOR_INFO_1A,*LPPRINTPROCESSOR_INFO_1A;
  504. typedef    struct _PRINTPROCESSOR_INFO_1W {LPWSTR pName;} PRINTPROCESSOR_INFO_1W,*PPRINTPROCESSOR_INFO_1W,*LPPRINTPROCESSOR_INFO_1W;
  505. typedef    struct    _PRINTER_NOTIFY_INFO_DATA {
  506.     WORD Type;
  507.     WORD Field;
  508.     DWORD Reserved;
  509.     DWORD Id;
  510.     union {
  511.         DWORD adwData[2];
  512.         struct {
  513.             DWORD cbBuf;
  514.             PVOID pBuf;
  515.         } Data;
  516.     } NotifyData;
  517. } PRINTER_NOTIFY_INFO_DATA,*PPRINTER_NOTIFY_INFO_DATA,*LPPRINTER_NOTIFY_INFO_DATA;
  518. typedef    struct    _PRINTER_NOTIFY_INFO {
  519.     DWORD Version;
  520.     DWORD Flags;
  521.     DWORD Count;
  522.     PRINTER_NOTIFY_INFO_DATA aData[1];
  523. } PRINTER_NOTIFY_INFO,*PPRINTER_NOTIFY_INFO,*LPPRINTER_NOTIFY_INFO;
  524. typedef    struct _FORM_INFO_1A {
  525.     DWORD    Flags;
  526.     LPSTR    pName;
  527.     SIZEL    Size;
  528.     RECTL    ImageableArea;
  529. } FORM_INFO_1A,*PFORM_INFO_1A,*LPFORM_INFO_1A;
  530. typedef    struct _FORM_INFO_1W {
  531.     DWORD    Flags;
  532.     LPWSTR    pName;
  533.     SIZEL    Size;
  534.     RECTL    ImageableArea;
  535. } FORM_INFO_1W,*PFORM_INFO_1W,*LPFORM_INFO_1W;
  536. typedef    struct _PRINTER_DEFAULTSA {
  537.     LPSTR pDatatype;
  538.     LPDEVMODE pDevMode;
  539.     ACCESS_MASK    DesiredAccess;
  540. } PRINTER_DEFAULTSA,*PPRINTER_DEFAULTSA,*LPPRINTER_DEFAULTSA;
  541. typedef    struct _PRINTER_DEFAULTSW {
  542.     LPWSTR pDatatype;
  543.     LPDEVMODE pDevMode;
  544.     ACCESS_MASK DesiredAccess;
  545. } PRINTER_DEFAULTSW,*PPRINTER_DEFAULTSW,*LPPRINTER_DEFAULTSW;
  546.  
  547. BOOL WINAPI AbortPrinter(HANDLE);
  548. BOOL WINAPI AddFormA(HANDLE,DWORD,PBYTE);
  549. BOOL WINAPI AddFormW(HANDLE,DWORD,PBYTE);
  550. BOOL WINAPI AddJobA(HANDLE,DWORD,PBYTE,DWORD,PDWORD);
  551. BOOL WINAPI AddJobW(HANDLE,DWORD,PBYTE,DWORD,PDWORD);
  552. BOOL WINAPI AddMonitorA(LPSTR,DWORD,PBYTE);
  553. BOOL WINAPI AddMonitorW(LPWSTR,DWORD,PBYTE);
  554. BOOL WINAPI AddPortA(LPSTR,HWND,LPSTR);
  555. BOOL WINAPI AddPortW(LPWSTR,HWND,LPWSTR);
  556. HANDLE WINAPI AddPrinterA(LPSTR,DWORD,PBYTE);
  557. HANDLE WINAPI AddPrinterW(LPWSTR,DWORD,PBYTE);
  558. BOOL WINAPI AddPrinterConnectionA(LPSTR);
  559. BOOL WINAPI AddPrinterConnectionW(LPWSTR);
  560. BOOL WINAPI AddPrinterDriverA(LPSTR,DWORD,PBYTE);
  561. BOOL WINAPI AddPrinterDriverW(LPWSTR,DWORD,PBYTE);
  562. BOOL WINAPI AddPrintProcessorA(LPSTR,LPSTR,LPSTR,LPSTR);
  563. BOOL WINAPI AddPrintProcessorW(LPWSTR,LPWSTR,LPWSTR,LPWSTR);
  564. BOOL WINAPI AddPrintProvidorA(LPSTR,DWORD,PBYTE);
  565. BOOL WINAPI AddPrintProvidorW(LPWSTR,DWORD,PBYTE);
  566. LONG WINAPI AdvancedDocumentPropertiesA(HWND,HANDLE,LPSTR,PDEVMODE,PDEVMODEA);
  567. LONG WINAPI AdvancedDocumentPropertiesW(HWND,HANDLE,LPWSTR,PDEVMODE,PDEVMODEW);
  568. BOOL WINAPI ClosePrinter(HANDLE);
  569. BOOL WINAPI ConfigurePortA(LPSTR,HWND,LPSTR);
  570. BOOL WINAPI ConfigurePortW(LPWSTR,HWND,LPWSTR);
  571. HANDLE WINAPI ConnectToPrinterDlg(HWND,DWORD);
  572. BOOL WINAPI DeleteFormA(HANDLE,LPSTR);
  573. BOOL WINAPI DeleteFormW(HANDLE,LPWSTR);
  574. BOOL WINAPI DeleteMonitorA(LPSTR,LPSTR,LPSTR);
  575. BOOL WINAPI DeleteMonitorW(LPWSTR,LPWSTR,LPWSTR);
  576. BOOL WINAPI DeletePortA(LPSTR,HWND,LPSTR);
  577. BOOL WINAPI DeletePortW(LPWSTR,HWND,LPWSTR);
  578. BOOL WINAPI DeletePrinter(HANDLE);
  579. BOOL WINAPI DeletePrinterConnectionA(LPSTR);
  580. BOOL WINAPI DeletePrinterConnectionW(LPWSTR);
  581. DWORD WINAPI DeletePrinterDataA(HANDLE,LPSTR);
  582. DWORD WINAPI DeletePrinterDataW(HANDLE,LPWSTR);
  583. BOOL WINAPI DeletePrinterDriverA(LPSTR,LPSTR,LPSTR);
  584. BOOL WINAPI DeletePrinterDriverW(LPWSTR,LPWSTR,LPWSTR);
  585. BOOL WINAPI DeletePrintProcessorA(LPSTR,LPSTR,LPSTR);
  586. BOOL WINAPI DeletePrintProcessorW(LPWSTR,LPWSTR,LPWSTR);
  587. BOOL WINAPI DeletePrintProvidorA(LPSTR,LPSTR,LPSTR);
  588. BOOL WINAPI DeletePrintProvidorW(LPWSTR,LPWSTR,LPWSTR);
  589. LONG WINAPI DocumentPropertiesA(HWND,HANDLE,LPSTR,PDEVMODEA,PDEVMODEA,DWORD);
  590. LONG WINAPI DocumentPropertiesW(HWND,HANDLE,LPWSTR,PDEVMODEW,PDEVMODEW,DWORD);
  591. BOOL WINAPI EndDocPrinter(HANDLE);
  592. BOOL WINAPI EndPagePrinter(HANDLE);
  593. BOOL WINAPI EnumFormsA(HANDLE,DWORD,PBYTE,DWORD,PDWORD,PDWORD);
  594. BOOL WINAPI EnumFormsW(HANDLE,DWORD,PBYTE,DWORD,PDWORD,PDWORD);
  595. BOOL WINAPI EnumJobsA(HANDLE,DWORD,DWORD,DWORD,PBYTE,DWORD,PDWORD,PDWORD);
  596. BOOL WINAPI EnumJobsW(HANDLE,DWORD,DWORD,DWORD,PBYTE,DWORD,PDWORD,PDWORD);
  597. BOOL WINAPI EnumMonitorsA(LPSTR,DWORD,PBYTE,DWORD,PDWORD,PDWORD);
  598. BOOL WINAPI EnumMonitorsW(LPWSTR,DWORD,PBYTE,DWORD,PDWORD,PDWORD);
  599. BOOL WINAPI EnumPortsA(LPSTR,DWORD,PBYTE,DWORD,PDWORD,PDWORD);
  600. BOOL WINAPI EnumPortsW(LPWSTR,DWORD,PBYTE,DWORD,PDWORD,PDWORD);
  601. DWORD WINAPI EnumPrinterDataA(HANDLE,DWORD,LPSTR,DWORD,PDWORD,PDWORD,PBYTE,DWORD,PDWORD);
  602. DWORD WINAPI EnumPrinterDataW(HANDLE,DWORD,LPWSTR,DWORD,PDWORD,PDWORD,PBYTE,DWORD,PDWORD);
  603. BOOL WINAPI EnumPrinterDriversA(LPSTR,LPSTR,DWORD,PBYTE,DWORD,PDWORD,PDWORD);
  604. BOOL WINAPI EnumPrinterDriversW(LPWSTR,LPWSTR,DWORD,PBYTE,DWORD,PDWORD,PDWORD);
  605. BOOL WINAPI EnumPrintersA(DWORD,LPSTR,DWORD,PBYTE,DWORD,PDWORD,PDWORD);
  606. BOOL WINAPI EnumPrintersW(DWORD,LPWSTR,DWORD,PBYTE,DWORD,PDWORD,PDWORD);
  607. BOOL WINAPI EnumPrintProcessorDatatypesA(LPSTR,LPSTR,DWORD,PBYTE,DWORD,PDWORD,PDWORD);
  608. BOOL WINAPI EnumPrintProcessorDatatypesW(LPWSTR,LPWSTR,DWORD,PBYTE,DWORD,PDWORD,PDWORD);
  609. BOOL WINAPI EnumPrintProcessorsA(LPSTR,LPSTR,DWORD,PBYTE,DWORD,PDWORD,PDWORD);
  610. BOOL WINAPI EnumPrintProcessorsW(LPWSTR,LPWSTR,DWORD,PBYTE,DWORD,PDWORD,PDWORD);
  611. BOOL WINAPI FindClosePrinterChangeNotification(HANDLE);
  612. HANDLE WINAPI FindFirstPrinterChangeNotification(HANDLE,DWORD,DWORD,PVOID);
  613. HANDLE WINAPI FindNextPrinterChangeNotification(HANDLE,PDWORD,PVOID,PVOID*);
  614. BOOL WINAPI FreePrinterNotifyInfo(PPRINTER_NOTIFY_INFO);
  615. #if _WIN32_WINNT >= 0x0500
  616. BOOL WINAPI GetDefaultPrinterA(LPSTR,LPDWORD);
  617. BOOL WINAPI GetDefaultPrinterW(LPWSTR,LPDWORD);
  618. #endif
  619. BOOL WINAPI GetFormA(HANDLE,LPSTR,DWORD,PBYTE,DWORD,PDWORD);
  620. BOOL WINAPI GetFormW(HANDLE,LPWSTR,DWORD,PBYTE,DWORD,PDWORD);
  621. BOOL WINAPI GetJobA(HANDLE,DWORD,DWORD,PBYTE,DWORD,PDWORD);
  622. BOOL WINAPI GetJobW(HANDLE,DWORD,DWORD,PBYTE,DWORD,PDWORD);
  623. BOOL WINAPI GetPrinterA(HANDLE,DWORD,PBYTE,DWORD,PDWORD);
  624. BOOL WINAPI GetPrinterW(HANDLE,DWORD,PBYTE,DWORD,PDWORD);
  625. DWORD WINAPI GetPrinterDataA(HANDLE,LPSTR,PDWORD,PBYTE,DWORD,PDWORD);
  626. DWORD WINAPI GetPrinterDataW(HANDLE,LPWSTR,PDWORD,PBYTE,DWORD,PDWORD);
  627. DWORD WINAPI GetPrinterDriverA(HANDLE,LPSTR,DWORD,PBYTE,DWORD,PDWORD);
  628. DWORD WINAPI GetPrinterDriverW(HANDLE,LPWSTR,DWORD,PBYTE,DWORD,PDWORD);
  629. DWORD WINAPI GetPrinterDriverDirectoryA(LPSTR,LPSTR,DWORD,PBYTE,DWORD,PDWORD);
  630. DWORD WINAPI GetPrinterDriverDirectoryW(LPWSTR,LPWSTR,DWORD,PBYTE,DWORD,PDWORD);
  631. DWORD WINAPI GetPrintProcessorDirectoryA(LPSTR,LPSTR,DWORD,PBYTE,DWORD,PDWORD);
  632. DWORD WINAPI GetPrintProcessorDirectoryW(LPWSTR,LPWSTR,DWORD,PBYTE,DWORD,PDWORD);
  633. BOOL WINAPI OpenPrinterA(LPSTR,PHANDLE,LPPRINTER_DEFAULTSA);
  634. BOOL WINAPI OpenPrinterW(LPWSTR,PHANDLE,LPPRINTER_DEFAULTSW);
  635. DWORD WINAPI PrinterMessageBoxA(HANDLE,DWORD,HWND,LPSTR,LPSTR,DWORD);
  636. DWORD WINAPI PrinterMessageBoxW(HANDLE,DWORD,HWND,LPWSTR,LPWSTR,DWORD);
  637. BOOL WINAPI PrinterProperties(HWND,HANDLE);
  638. BOOL WINAPI ReadPrinter(HANDLE,PVOID,DWORD,PDWORD);
  639. BOOL WINAPI ResetPrinterA(HANDLE,LPPRINTER_DEFAULTSA);
  640. BOOL WINAPI ResetPrinterW(HANDLE,LPPRINTER_DEFAULTSW);
  641. BOOL WINAPI ScheduleJob(HANDLE,DWORD);
  642. BOOL WINAPI SetFormA(HANDLE,LPSTR,DWORD,PBYTE);
  643. BOOL WINAPI SetFormW(HANDLE,LPWSTR,DWORD,PBYTE);
  644. BOOL WINAPI SetJobA(HANDLE,DWORD,DWORD,PBYTE,DWORD);
  645. BOOL WINAPI SetJobW(HANDLE,DWORD,DWORD,PBYTE,DWORD);
  646. BOOL WINAPI SetPrinterA(HANDLE,DWORD,PBYTE,DWORD);
  647. BOOL WINAPI SetPrinterW(HANDLE,DWORD,PBYTE,DWORD);
  648. BOOL WINAPI SetPrinterDataA(HANDLE,LPSTR,DWORD,PBYTE,DWORD);
  649. BOOL WINAPI SetPrinterDataW(HANDLE,LPWSTR,DWORD,PBYTE,DWORD);
  650. DWORD WINAPI StartDocPrinterA(HANDLE,DWORD,PBYTE);
  651. DWORD WINAPI StartDocPrinterW(HANDLE,DWORD,PBYTE);
  652. BOOL WINAPI StartPagePrinter(HANDLE);
  653. DWORD WINAPI WaitForPrinterChange(HANDLE,DWORD);
  654. BOOL WINAPI WritePrinter(HANDLE,PVOID,DWORD,PDWORD);
  655.  
  656. #ifdef UNICODE
  657. typedef JOB_INFO_1W JOB_INFO_1,*PJOB_INFO_1,*LPJOB_INFO_1;
  658. typedef JOB_INFO_2W JOB_INFO_2,*PJOB_INFO_2,*LPJOB_INFO_2;
  659. typedef ADDJOB_INFO_1W ADDJOB_INFO_1,*PADDJOB_INFO_1,*LPADDJOB_INFO_1;
  660. typedef DATATYPES_INFO_1W DATATYPES_INFO_1,*PDATATYPES_INFO_1,*LPDATATYPES_INFO_1;
  661. typedef MONITOR_INFO_1W MONITOR_INFO_1,*PMONITOR_INFO_1,*LPMONITOR_INFO_1;
  662. typedef MONITOR_INFO_2W MONITOR_INFO_2,*PMONITOR_INFO_2,*LPMONITOR_INFO_2;
  663. typedef DOC_INFO_1W DOC_INFO_1,*PDOC_INFO_1,*LPDOC_INFO_1;
  664. typedef DOC_INFO_2W DOC_INFO_2,*PDOC_INFO_2,*LPDOC_INFO_2;
  665. typedef PORT_INFO_1W PORT_INFO_1,*PPORT_INFO_1,*LPPORT_INFO_1;
  666. typedef PORT_INFO_2W PORT_INFO_2,*PPORT_INFO_2,*LPPORT_INFO_2;
  667. typedef PORT_INFO_3W PORT_INFO_3,*PPORT_INFO_3,*LPPORT_INFO_3;
  668. typedef DRIVER_INFO_2W DRIVER_INFO_2,*PDRIVER_INFO_2,*LPDRIVER_INFO_2;
  669. typedef PRINTER_INFO_1W PRINTER_INFO_1,*PPRINTER_INFO_1,*LPPRINTER_INFO_1;
  670. typedef PRINTER_INFO_2W PRINTER_INFO_2,*PPRINTER_INFO_2,*LPPRINTER_INFO_2;
  671. typedef PRINTER_INFO_4W PRINTER_INFO_4,*PPRINTER_INFO_4,*LPPRINTER_INFO_4;
  672. typedef PRINTER_INFO_5W PRINTER_INFO_5,*PPRINTER_INFO_5,*LPPRINTER_INFO_5;
  673. typedef PRINTPROCESSOR_INFO_1W PRINTPROCESSOR_INFO_1,*PPRINTPROCESSOR_INFO_1,*LPPRINTPROCESSOR_INFO_1;
  674. typedef FORM_INFO_1W FORM_INFO_1,*PFORM_INFO_1,*LPFORM_INFO_1;
  675. typedef PRINTER_DEFAULTSW PRINTER_DEFAULTS,*PPRINTER_DEFAULTS,*LPPRINTER_DEFAULTS;
  676. #define AddForm AddFormW
  677. #define AddJob AddJobW
  678. #define AddMonitor AddMonitorW
  679. #define AddPort AddPortW
  680. #define AddPrinter AddPrinterW
  681. #define AddPrinterConnection AddPrinterConnectionW
  682. #define AddPrinterDriver AddPrinterDriverW
  683. #define AddPrintProcessor AddPrintProcessorW
  684. #define AddPrintProvidor AddPrintProvidorW
  685. #define AdvancedDocumentProperties AdvancedDocumentPropertiesW
  686. #define ConfigurePort ConfigurePortW
  687. #define DeleteForm DeleteFormW
  688. #define DeleteMonitor DeleteMonitorW
  689. #define DeletePort DeletePortW
  690. #define DeletePrinterConnection DeletePrinterConnectionW
  691. #define DeletePrinterData DeletePrinterDataW
  692. #define DeletePrinterDriver DeletePrinterDriverW
  693. #define DeletePrintProcessor DeletePrinterProcessorW
  694. #define DeletePrintProvidor DeletePrinterProvidorW
  695. #define DocumentProperties DocumentPropertiesW
  696. #define EnumForms EnumFormsW
  697. #define EnumJobs EnumJobsW
  698. #define EnumMonitors EnumMonitorsW
  699. #define EnumPorts EnumPortsW
  700. #define EnumPrinterData EnumPrinterDataW
  701. #define EnumPrinterDrivers EnumPrinterDriversW
  702. #define EnumPrinters EnumPrintersW
  703. #define EnumPrintProcessorDatatypes EnumPrintProcessorDatatypesW
  704. #define EnumPrintProcessors EnumPrintProcessorsW
  705. #define GetDefaultPrinter GetDefaultPrinterW
  706. #define    GetForm    GetFormW
  707. #define GetJob GetJobW
  708. #define GetPrinter GetPrinterW
  709. #define GetPrinterData GetPrinterDataW
  710. #define GetPrinterDriver GetPrinterDriverW
  711. #define GetPrinterDriverDirectory GetPrinterDriverDirectoryW
  712. #define GetPrintProcessorDirectory GetPrintProcessorDirectoryW
  713. #define OpenPrinter OpenPrinterW
  714. #define PrinterMessageBox PrinterMessageBoxW
  715. #define ResetPrinter ResetPrinterW
  716. #define SetForm SetFormW
  717. #define SetJob SetJobW
  718. #define SetPrinter SetPrinterW
  719. #define SetPrinterData SetPrinterDataW
  720. #define StartDocPrinter StartDocPrinterW
  721. #else
  722. typedef JOB_INFO_1A JOB_INFO_1,*PJOB_INFO_1,*LPJOB_INFO_1;
  723. typedef JOB_INFO_2A JOB_INFO_2,*PJOB_INFO_2,*LPJOB_INFO_2;
  724. typedef ADDJOB_INFO_1A ADDJOB_INFO_1,*PADDJOB_INFO_1,*LPADDJOB_INFO_1;
  725. typedef DATATYPES_INFO_1A DATATYPES_INFO_1,*PDATATYPES_INFO_1,*LPDATATYPES_INFO_1;
  726. typedef MONITOR_INFO_1A MONITOR_INFO_1,*PMONITOR_INFO_1,*LPMONITOR_INFO_1;
  727. typedef MONITOR_INFO_2A MONITOR_INFO_2,*PMONITOR_INFO_2,*LPMONITOR_INFO_2;
  728. typedef DOC_INFO_1A DOC_INFO_1,*PDOC_INFO_1,*LPDOC_INFO_1;
  729. typedef DOC_INFO_2A DOC_INFO_2,*PDOC_INFO_2,*LPDOC_INFO_2;
  730. typedef PORT_INFO_1A PORT_INFO_1,*PPORT_INFO_1,*LPPORT_INFO_1;
  731. typedef PORT_INFO_2A PORT_INFO_2,*PPORT_INFO_2,*LPPORT_INFO_2;
  732. typedef PORT_INFO_3A PORT_INFO_3,*PPORT_INFO_3,*LPPORT_INFO_3;
  733. typedef DRIVER_INFO_2A DRIVER_INFO_2,*PDRIVER_INFO_2,*LPDRIVER_INFO_2;
  734. typedef PRINTER_INFO_1A PRINTER_INFO_1,*PPRINTER_INFO_1,*LPPRINTER_INFO_1;
  735. typedef PRINTER_INFO_2A PRINTER_INFO_2,*PPRINTER_INFO_2,*LPPRINTER_INFO_2;
  736. typedef PRINTER_INFO_4A PRINTER_INFO_4,*PPRINTER_INFO_4,*LPPRINTER_INFO_4;
  737. typedef PRINTER_INFO_5A PRINTER_INFO_5,*PPRINTER_INFO_5,*LPPRINTER_INFO_5;
  738. typedef PRINTPROCESSOR_INFO_1A PRINTPROCESSOR_INFO_1,*PPRINTPROCESSOR_INFO_1,*LPPRINTPROCESSOR_INFO_1;
  739. typedef FORM_INFO_1A FORM_INFO_1,*PFORM_INFO_1,*LPFORM_INFO_1;
  740. typedef PRINTER_DEFAULTSA PRINTER_DEFAULTS,*PPRINTER_DEFAULTS,*LPPRINTER_DEFAULTS;
  741. #define AddForm AddFormA
  742. #define AddJob AddJobA
  743. #define AddMonitor AddMonitorA
  744. #define AddPort AddPortA
  745. #define AddPrinter AddPrinterA
  746. #define AddPrinterConnection AddPrinterConnectionA
  747. #define AddPrinterDriver AddPrinterDriverA
  748. #define AddPrintProcessor AddPrintProcessorA
  749. #define AddPrintProvidor AddPrintProvidorA
  750. #define AdvancedDocumentProperties AdvancedDocumentPropertiesA
  751. #define ConfigurePort ConfigurePortA
  752. #define DeleteForm DeleteFormA
  753. #define DeleteMonitor DeleteMonitorA
  754. #define DeletePort DeletePortA
  755. #define DeletePrinterConnection DeletePrinterConnectionA
  756. #define DeletePrinterData DeletePrinterDataA
  757. #define DeletePrinterDriver DeletePrinterDriverA
  758. #define DeletePrintProcessor DeletePrinterProcessorA
  759. #define DeletePrintProvidor DeletePrinterProvidorA
  760. #define DocumentProperties DocumentPropertiesA
  761. #define EnumForms EnumFormsA
  762. #define EnumJobs EnumJobsA
  763. #define EnumMonitors EnumMonitorsA
  764. #define EnumPorts EnumPortsA
  765. #define EnumPrinterData EnumPrinterDataA
  766. #define EnumPrinterDrivers EnumPrinterDriversA
  767. #define EnumPrinters EnumPrintersA
  768. #define EnumPrintProcessorDatatypes EnumPrintProcessorDatatypesA
  769. #define EnumPrintProcessors EnumPrintProcessorsA
  770. #define GetDefaultPrinter GetDefaultPrinterA
  771. #define    GetForm    GetFormA
  772. #define GetJob GetJobA
  773. #define GetPrinter GetPrinterA
  774. #define GetPrinterData GetPrinterDataA
  775. #define GetPrinterDriver GetPrinterDriverA
  776. #define GetPrinterDriverDirectory GetPrinterDriverDirectoryA
  777. #define GetPrintProcessorDirectory GetPrintProcessorDirectoryA
  778. #define OpenPrinter OpenPrinterA
  779. #define PrinterMessageBox PrinterMessageBoxA
  780. #define ResetPrinter ResetPrinterA
  781. #define SetForm SetFormA
  782. #define SetJob SetJobA
  783. #define SetPrinter SetPrinterA
  784. #define SetPrinterData SetPrinterDataA
  785. #define StartDocPrinter StartDocPrinterA
  786. #endif
  787. #endif /* RC_INVOKED */
  788. #ifdef __cplusplus
  789. }
  790. #endif
  791. #endif
  792.