winspool.pp 61 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885886887888889890891892893894895896897898899900901902903904905906907908909910911912913914915916917918919920921922923924925926927928929930931932933934935936937938939940941942943944945946947948949950951952953954955956957958959960961962963964965966967968969970971972973974975976977978979980981982983984985986987988989990991992993994995996997998999100010011002100310041005100610071008100910101011101210131014101510161017101810191020102110221023102410251026102710281029103010311032103310341035103610371038103910401041104210431044104510461047104810491050105110521053105410551056105710581059106010611062106310641065106610671068106910701071107210731074107510761077107810791080108110821083108410851086108710881089109010911092109310941095109610971098109911001101110211031104110511061107110811091110111111121113111411151116111711181119112011211122112311241125112611271128112911301131113211331134113511361137113811391140114111421143114411451146114711481149115011511152115311541155115611571158115911601161116211631164116511661167116811691170117111721173117411751176117711781179118011811182118311841185118611871188118911901191119211931194119511961197119811991200120112021203120412051206120712081209121012111212121312141215121612171218121912201221122212231224122512261227122812291230123112321233123412351236123712381239124012411242124312441245124612471248124912501251125212531254125512561257125812591260126112621263126412651266126712681269127012711272127312741275127612771278127912801281128212831284128512861287128812891290129112921293129412951296129712981299130013011302130313041305130613071308130913101311131213131314131513161317131813191320132113221323132413251326132713281329133013311332133313341335133613371338133913401341134213431344134513461347134813491350135113521353135413551356135713581359136013611362136313641365136613671368136913701371137213731374137513761377137813791380138113821383138413851386138713881389139013911392139313941395139613971398139914001401140214031404140514061407140814091410141114121413141414151416141714181419142014211422142314241425142614271428142914301431143214331434143514361437143814391440144114421443144414451446144714481449145014511452145314541455145614571458145914601461146214631464146514661467146814691470147114721473147414751476147714781479148014811482148314841485148614871488148914901491149214931494149514961497149814991500150115021503150415051506150715081509151015111512151315141515151615171518151915201521152215231524152515261527152815291530153115321533153415351536153715381539
  1. {$IFNDEF FPC_DOTTEDUNITS}
  2. unit Winspool;
  3. {$ENDIF FPC_DOTTEDUNITS}
  4. interface
  5. {$PACKRECORDS C}
  6. {$ifndef NO_SMART_LINK}
  7. {$smartlink on}
  8. {$endif}
  9. {$IFDEF FPC_DOTTEDUNITS}
  10. uses
  11. System.CTypes,WinApi.Windows;
  12. {$ELSE FPC_DOTTEDUNITS}
  13. uses
  14. ctypes,windows;
  15. {$ENDIF FPC_DOTTEDUNITS}
  16. {
  17. Automatically converted by H2Pas 1.0.0 from winspool.h
  18. The following command line parameters were used:
  19. winspool.h
  20. -D
  21. -w
  22. }
  23. const
  24. External_library='winspool.drv';
  25. type
  26. PPVOID = ppointer;
  27. const
  28. DI_CHANNEL = 1;
  29. DI_CHANNEL_WRITE = 2;
  30. DI_READ_SPOOL_JOB = 3;
  31. DI_MEMORYMAP_WRITE = $1;
  32. FORM_USER = $0;
  33. FORM_BUILTIN = $1;
  34. FORM_PRINTER = $2;
  35. DRIVER_KERNELMODE = $00000001;
  36. DRIVER_USERMODE = $00000002;
  37. DSPRINT_PUBLISH = $00000001;
  38. DSPRINT_UPDATE = $00000002;
  39. DSPRINT_UNPUBLISH = $00000004;
  40. DSPRINT_REPUBLISH = $00000008;
  41. DSPRINT_PENDING = $80000000;
  42. JOB_CONTROL_PAUSE = 1;
  43. JOB_CONTROL_RESUME = 2;
  44. JOB_CONTROL_CANCEL = 3;
  45. JOB_CONTROL_RESTART = 4;
  46. JOB_CONTROL_DELETE = 5;
  47. JOB_CONTROL_SENT_TO_PRINTER = 6;
  48. JOB_CONTROL_LAST_PAGE_EJECTED = 7;
  49. JOB_STATUS_PAUSED = $1;
  50. JOB_STATUS_ERROR = $2;
  51. JOB_STATUS_DELETING = $4;
  52. JOB_STATUS_SPOOLING = $8;
  53. JOB_STATUS_PRINTING = $10;
  54. JOB_STATUS_OFFLINE = $20;
  55. JOB_STATUS_PAPEROUT = $40;
  56. JOB_STATUS_PRINTED = $80;
  57. JOB_STATUS_DELETED = $100;
  58. JOB_STATUS_BLOCKED_DEVQ = $200;
  59. JOB_STATUS_USER_INTERVENTION = $400;
  60. JOB_STATUS_RESTART = $800;
  61. JOB_STATUS_COMPLETE = $1000;
  62. JOB_POSITION_UNSPECIFIED = 0;
  63. JOB_NOTIFY_TYPE = 1;
  64. JOB_NOTIFY_FIELD_PRINTER_NAME = 0;
  65. JOB_NOTIFY_FIELD_MACHINE_NAME = 1;
  66. JOB_NOTIFY_FIELD_PORT_NAME = 2;
  67. JOB_NOTIFY_FIELD_USER_NAME = 3;
  68. JOB_NOTIFY_FIELD_NOTIFY_NAME = 4;
  69. JOB_NOTIFY_FIELD_DATATYPE = 5;
  70. JOB_NOTIFY_FIELD_PRINT_PROCESSOR = 6;
  71. JOB_NOTIFY_FIELD_PARAMETERS = 7;
  72. JOB_NOTIFY_FIELD_DRIVER_NAME = 8;
  73. JOB_NOTIFY_FIELD_DEVMODE = 9;
  74. JOB_NOTIFY_FIELD_STATUS = 10;
  75. JOB_NOTIFY_FIELD_STATUS_STRING = 11;
  76. JOB_NOTIFY_FIELD_SECURITY_DESCRIPTOR = 12;
  77. JOB_NOTIFY_FIELD_DOCUMENT = 13;
  78. JOB_NOTIFY_FIELD_PRIORITY = 14;
  79. JOB_NOTIFY_FIELD_POSITION = 15;
  80. JOB_NOTIFY_FIELD_SUBMITTED = 16;
  81. JOB_NOTIFY_FIELD_START_TIME = 17;
  82. JOB_NOTIFY_FIELD_UNTIL_TIME = 18;
  83. JOB_NOTIFY_FIELD_TIME = 19;
  84. JOB_NOTIFY_FIELD_TOTAL_PAGES = 20;
  85. JOB_NOTIFY_FIELD_PAGES_PRINTED = 21;
  86. JOB_NOTIFY_FIELD_TOTAL_BYTES = 22;
  87. JOB_NOTIFY_FIELD_BYTES_PRINTED = 23;
  88. JOB_ACCESS_ADMINISTER = 16;
  89. JOB_ALL_ACCESS = STANDARD_RIGHTS_REQUIRED or JOB_ACCESS_ADMINISTER;
  90. JOB_READ = STANDARD_RIGHTS_READ or JOB_ACCESS_ADMINISTER;
  91. JOB_WRITE = STANDARD_RIGHTS_WRITE or JOB_ACCESS_ADMINISTER;
  92. JOB_EXECUTE = STANDARD_RIGHTS_EXECUTE or JOB_ACCESS_ADMINISTER;
  93. PRINTER_NOTIFY_OPTIONS_REFRESH = 1;
  94. PRINTER_ACCESS_ADMINISTER = 4;
  95. PRINTER_ACCESS_USE = 8;
  96. PRINTER_ERROR_INFORMATION = $80000000;
  97. PRINTER_ERROR_WARNING = $40000000;
  98. PRINTER_ERROR_SEVERE = $20000000;
  99. PRINTER_ERROR_OUTOFPAPER = 1;
  100. PRINTER_ERROR_JAM = 2;
  101. PRINTER_ERROR_OUTOFTONER = 4;
  102. PRINTER_CONTROL_PAUSE = 1;
  103. PRINTER_CONTROL_RESUME = 2;
  104. PRINTER_CONTROL_PURGE = 3;
  105. PRINTER_CONTROL_SET_STATUS = 4;
  106. PRINTER_STATUS_PAUSED = 1;
  107. PRINTER_STATUS_ERROR = 2;
  108. PRINTER_STATUS_PENDING_DELETION = 4;
  109. PRINTER_STATUS_PAPER_JAM = 8;
  110. PRINTER_STATUS_PAPER_OUT = $10;
  111. PRINTER_STATUS_MANUAL_FEED = $20;
  112. PRINTER_STATUS_PAPER_PROBLEM = $40;
  113. PRINTER_STATUS_OFFLINE = $80;
  114. PRINTER_STATUS_IO_ACTIVE = $100;
  115. PRINTER_STATUS_BUSY = $200;
  116. PRINTER_STATUS_PRINTING = $400;
  117. PRINTER_STATUS_OUTPUT_BIN_FULL = $800;
  118. PRINTER_STATUS_NOT_AVAILABLE = $1000;
  119. PRINTER_STATUS_WAITING = $2000;
  120. PRINTER_STATUS_PROCESSING = $4000;
  121. PRINTER_STATUS_INITIALIZING = $8000;
  122. PRINTER_STATUS_WARMING_UP = $10000;
  123. PRINTER_STATUS_TONER_LOW = $20000;
  124. PRINTER_STATUS_NO_TONER = $40000;
  125. PRINTER_STATUS_PAGE_PUNT = $80000;
  126. PRINTER_STATUS_USER_INTERVENTION = $100000;
  127. PRINTER_STATUS_OUT_OF_MEMORY = $200000;
  128. PRINTER_STATUS_DOOR_OPEN = $400000;
  129. PRINTER_STATUS_SERVER_UNKNOWN = $800000;
  130. PRINTER_STATUS_POWER_SAVE = $1000000;
  131. PRINTER_ATTRIBUTE_QUEUED = 1;
  132. PRINTER_ATTRIBUTE_DIRECT = 2;
  133. PRINTER_ATTRIBUTE_DEFAULT = 4;
  134. PRINTER_ATTRIBUTE_SHARED = 8;
  135. PRINTER_ATTRIBUTE_NETWORK = $10;
  136. PRINTER_ATTRIBUTE_HIDDEN = $20;
  137. PRINTER_ATTRIBUTE_LOCAL = $40;
  138. PRINTER_ATTRIBUTE_ENABLE_DEVQ = $80;
  139. PRINTER_ATTRIBUTE_KEEPPRINTEDJOBS = $100;
  140. PRINTER_ATTRIBUTE_DO_COMPLETE_FIRST = $200;
  141. PRINTER_ATTRIBUTE_WORK_OFFLINE = $400;
  142. PRINTER_ATTRIBUTE_ENABLE_BIDI = $800;
  143. PRINTER_ATTRIBUTE_RAW_ONLY = $1000;
  144. PRINTER_ATTRIBUTE_PUBLISHED = $2000;
  145. PRINTER_ENUM_DEFAULT = 1;
  146. PRINTER_ENUM_LOCAL = 2;
  147. PRINTER_ENUM_CONNECTIONS = 4;
  148. PRINTER_ENUM_FAVORITE = 4;
  149. PRINTER_ENUM_NAME = 8;
  150. PRINTER_ENUM_REMOTE = 16;
  151. PRINTER_ENUM_SHARED = 32;
  152. PRINTER_ENUM_NETWORK = $40;
  153. PRINTER_ENUM_EXPAND = $4000;
  154. PRINTER_ENUM_CONTAINER = $8000;
  155. PRINTER_ENUM_ICONMASK = $ff0000;
  156. PRINTER_ENUM_ICON1 = $10000;
  157. PRINTER_ENUM_ICON2 = $20000;
  158. PRINTER_ENUM_ICON3 = $40000;
  159. PRINTER_ENUM_ICON4 = $80000;
  160. PRINTER_ENUM_ICON5 = $100000;
  161. PRINTER_ENUM_ICON6 = $200000;
  162. PRINTER_ENUM_ICON7 = $400000;
  163. PRINTER_ENUM_ICON8 = $800000;
  164. PRINTER_NOTIFY_TYPE = 0;
  165. PRINTER_NOTIFY_FIELD_SERVER_NAME = 0;
  166. PRINTER_NOTIFY_FIELD_PRINTER_NAME = 1;
  167. PRINTER_NOTIFY_FIELD_SHARE_NAME = 2;
  168. PRINTER_NOTIFY_FIELD_PORT_NAME = 3;
  169. PRINTER_NOTIFY_FIELD_DRIVER_NAME = 4;
  170. PRINTER_NOTIFY_FIELD_COMMENT = 5;
  171. PRINTER_NOTIFY_FIELD_LOCATION = 6;
  172. PRINTER_NOTIFY_FIELD_DEVMODE = 7;
  173. PRINTER_NOTIFY_FIELD_SEPFILE = 8;
  174. PRINTER_NOTIFY_FIELD_PRINT_PROCESSOR = 9;
  175. PRINTER_NOTIFY_FIELD_PARAMETERS = 10;
  176. PRINTER_NOTIFY_FIELD_DATATYPE = 11;
  177. PRINTER_NOTIFY_FIELD_SECURITY_DESCRIPTOR = 12;
  178. PRINTER_NOTIFY_FIELD_ATTRIBUTES = 13;
  179. PRINTER_NOTIFY_FIELD_PRIORITY = 14;
  180. PRINTER_NOTIFY_FIELD_DEFAULT_PRIORITY = 15;
  181. PRINTER_NOTIFY_FIELD_START_TIME = 16;
  182. PRINTER_NOTIFY_FIELD_UNTIL_TIME = 17;
  183. PRINTER_NOTIFY_FIELD_STATUS = 18;
  184. PRINTER_NOTIFY_FIELD_STATUS_STRING = 19;
  185. PRINTER_NOTIFY_FIELD_CJOBS = 20;
  186. PRINTER_NOTIFY_FIELD_AVERAGE_PPM = 21;
  187. PRINTER_NOTIFY_FIELD_TOTAL_PAGES = 22;
  188. PRINTER_NOTIFY_FIELD_PAGES_PRINTED = 23;
  189. PRINTER_NOTIFY_FIELD_TOTAL_BYTES = 24;
  190. PRINTER_NOTIFY_FIELD_BYTES_PRINTED = 25;
  191. PRINTER_CHANGE_ADD_PRINTER = 1;
  192. PRINTER_CHANGE_SET_PRINTER = 2;
  193. PRINTER_CHANGE_DELETE_PRINTER = 4;
  194. PRINTER_CHANGE_FAILED_CONNECTION_PRINTER = 8;
  195. PRINTER_CHANGE_PRINTER = $FF;
  196. PRINTER_CHANGE_ADD_JOB = $100;
  197. PRINTER_CHANGE_SET_JOB = $200;
  198. PRINTER_CHANGE_DELETE_JOB = $400;
  199. PRINTER_CHANGE_WRITE_JOB = $800;
  200. PRINTER_CHANGE_JOB = $FF00;
  201. PRINTER_CHANGE_ADD_FORM = $10000;
  202. PRINTER_CHANGE_SET_FORM = $20000;
  203. PRINTER_CHANGE_DELETE_FORM = $40000;
  204. PRINTER_CHANGE_FORM = $70000;
  205. PRINTER_CHANGE_ADD_PORT = $100000;
  206. PRINTER_CHANGE_CONFIGURE_PORT = $200000;
  207. PRINTER_CHANGE_DELETE_PORT = $400000;
  208. PRINTER_CHANGE_PORT = $700000;
  209. PRINTER_CHANGE_ADD_PRINT_PROCESSOR = $1000000;
  210. PRINTER_CHANGE_DELETE_PRINT_PROCESSOR = $4000000;
  211. PRINTER_CHANGE_PRINT_PROCESSOR = $7000000;
  212. PRINTER_CHANGE_ADD_PRINTER_DRIVER = $10000000;
  213. PRINTER_CHANGE_SET_PRINTER_DRIVER = $20000000;
  214. PRINTER_CHANGE_DELETE_PRINTER_DRIVER = $40000000;
  215. PRINTER_CHANGE_PRINTER_DRIVER = $70000000;
  216. PRINTER_CHANGE_TIMEOUT = $80000000;
  217. PRINTER_CHANGE_ALL = $7777FFFF;
  218. PRINTER_NOTIFY_INFO_DISCARDED = 1;
  219. PRINTER_ALL_ACCESS = (STANDARD_RIGHTS_REQUIRED or PRINTER_ACCESS_ADMINISTER) or PRINTER_ACCESS_USE;
  220. PRINTER_READ = STANDARD_RIGHTS_READ or PRINTER_ACCESS_USE;
  221. PRINTER_WRITE = STANDARD_RIGHTS_WRITE or PRINTER_ACCESS_USE;
  222. PRINTER_EXECUTE = STANDARD_RIGHTS_EXECUTE or PRINTER_ACCESS_USE;
  223. NO_PRIORITY = 0;
  224. MAX_PRIORITY = 99;
  225. MIN_PRIORITY = 1;
  226. DEF_PRIORITY = 1;
  227. PORT_TYPE_WRITE = 1;
  228. PORT_TYPE_READ = 2;
  229. PORT_TYPE_REDIRECTED = 4;
  230. PORT_TYPE_NET_ATTACHED = 8;
  231. SERVER_ACCESS_ADMINISTER = 1;
  232. SERVER_ACCESS_ENUMERATE = 2;
  233. SERVER_ALL_ACCESS = (STANDARD_RIGHTS_REQUIRED or SERVER_ACCESS_ADMINISTER) or SERVER_ACCESS_ENUMERATE;
  234. SERVER_READ = STANDARD_RIGHTS_READ or SERVER_ACCESS_ENUMERATE;
  235. SERVER_WRITE = (STANDARD_RIGHTS_WRITE or SERVER_ACCESS_ADMINISTER) or SERVER_ACCESS_ENUMERATE;
  236. SERVER_EXECUTE = STANDARD_RIGHTS_EXECUTE or SERVER_ACCESS_ENUMERATE;
  237. PORT_STATUS_TYPE_ERROR = 1;
  238. PORT_STATUS_TYPE_WARNING = 2;
  239. PORT_STATUS_TYPE_INFO = 3;
  240. PORT_STATUS_OFFLINE = 1;
  241. PORT_STATUS_PAPER_JAM = 2;
  242. PORT_STATUS_PAPER_OUT = 3;
  243. PORT_STATUS_OUTPUT_BIN_FULL = 4;
  244. PORT_STATUS_PAPER_PROBLEM = 5;
  245. PORT_STATUS_NO_TONER = 6;
  246. PORT_STATUS_DOOR_OPEN = 7;
  247. PORT_STATUS_USER_INTERVENTION = 8;
  248. PORT_STATUS_OUT_OF_MEMORY = 9;
  249. PORT_STATUS_TONER_LOW = 10;
  250. PORT_STATUS_WARMING_UP = 11;
  251. PORT_STATUS_POWER_SAVE = 12;
  252. type
  253. _ADDJOB_INFO_1A = record
  254. Path : LPSTR;
  255. JobId : DWORD;
  256. end;
  257. ADDJOB_INFO_1A = _ADDJOB_INFO_1A;
  258. PADDJOB_INFO_1A = ^_ADDJOB_INFO_1A;
  259. LPADDJOB_INFO_1A = ^_ADDJOB_INFO_1A;
  260. _ADDJOB_INFO_1W = record
  261. Path : LPWSTR;
  262. JobId : DWORD;
  263. end;
  264. ADDJOB_INFO_1W = _ADDJOB_INFO_1W;
  265. PADDJOB_INFO_1W = ^_ADDJOB_INFO_1W;
  266. LPADDJOB_INFO_1W = ^_ADDJOB_INFO_1W;
  267. _DATATYPES_INFO_1A = record
  268. pName : LPSTR;
  269. end;
  270. DATATYPES_INFO_1A = _DATATYPES_INFO_1A;
  271. PDATATYPES_INFO_1A = ^_DATATYPES_INFO_1A;
  272. LPDATATYPES_INFO_1A = ^_DATATYPES_INFO_1A;
  273. _DATATYPES_INFO_1W = record
  274. pName : LPWSTR;
  275. end;
  276. DATATYPES_INFO_1W = _DATATYPES_INFO_1W;
  277. PDATATYPES_INFO_1W = ^_DATATYPES_INFO_1W;
  278. LPDATATYPES_INFO_1W = ^_DATATYPES_INFO_1W;
  279. _JOB_INFO_1A = record
  280. JobId : DWORD;
  281. pPrinterName : LPSTR;
  282. pMachineName : LPSTR;
  283. pUserName : LPSTR;
  284. pDocument : LPSTR;
  285. pDatatype : LPSTR;
  286. pStatus : LPSTR;
  287. Status : DWORD;
  288. Priority : DWORD;
  289. Position : DWORD;
  290. TotalPages : DWORD;
  291. PagesPrinted : DWORD;
  292. Submitted : SYSTEMTIME;
  293. end;
  294. JOB_INFO_1A = _JOB_INFO_1A;
  295. PJOB_INFO_1A = ^_JOB_INFO_1A;
  296. LPJOB_INFO_1A = ^_JOB_INFO_1A;
  297. _JOB_INFO_1W = record
  298. JobId : DWORD;
  299. pPrinterName : LPWSTR;
  300. pMachineName : LPWSTR;
  301. pUserName : LPWSTR;
  302. pDocument : LPWSTR;
  303. pDatatype : LPWSTR;
  304. pStatus : LPWSTR;
  305. Status : DWORD;
  306. Priority : DWORD;
  307. Position : DWORD;
  308. TotalPages : DWORD;
  309. PagesPrinted : DWORD;
  310. Submitted : SYSTEMTIME;
  311. end;
  312. JOB_INFO_1W = _JOB_INFO_1W;
  313. PJOB_INFO_1W = ^_JOB_INFO_1W;
  314. LPJOB_INFO_1W = ^_JOB_INFO_1W;
  315. _JOB_INFO_2A = record
  316. JobId : DWORD;
  317. pPrinterName : LPSTR;
  318. pMachineName : LPSTR;
  319. pUserName : LPSTR;
  320. pDocument : LPSTR;
  321. pNotifyName : LPSTR;
  322. pDatatype : LPSTR;
  323. pPrintProcessor : LPSTR;
  324. pParameters : LPSTR;
  325. pDriverName : LPSTR;
  326. pDevMode : LPDEVMODE;
  327. pStatus : LPSTR;
  328. pSecurityDescriptor : PSECURITY_DESCRIPTOR;
  329. Status : DWORD;
  330. Priority : DWORD;
  331. Position : DWORD;
  332. StartTime : DWORD;
  333. UntilTime : DWORD;
  334. TotalPages : DWORD;
  335. Size : DWORD;
  336. Submitted : SYSTEMTIME;
  337. Time : DWORD;
  338. PagesPrinted : DWORD;
  339. end;
  340. JOB_INFO_2A = _JOB_INFO_2A;
  341. PJOB_INFO_2A = ^_JOB_INFO_2A;
  342. LPJOB_INFO_2A = ^_JOB_INFO_2A;
  343. _JOB_INFO_2W = record
  344. JobId : DWORD;
  345. pPrinterName : LPWSTR;
  346. pMachineName : LPWSTR;
  347. pUserName : LPWSTR;
  348. pDocument : LPWSTR;
  349. pNotifyName : LPWSTR;
  350. pDatatype : LPWSTR;
  351. pPrintProcessor : LPWSTR;
  352. pParameters : LPWSTR;
  353. pDriverName : LPWSTR;
  354. pDevMode : LPDEVMODEW;
  355. pStatus : LPWSTR;
  356. pSecurityDescriptor : PSECURITY_DESCRIPTOR;
  357. Status : DWORD;
  358. Priority : DWORD;
  359. Position : DWORD;
  360. StartTime : DWORD;
  361. UntilTime : DWORD;
  362. TotalPages : DWORD;
  363. Size : DWORD;
  364. Submitted : SYSTEMTIME;
  365. Time : DWORD;
  366. PagesPrinted : DWORD;
  367. end;
  368. JOB_INFO_2W = _JOB_INFO_2W;
  369. PJOB_INFO_2W = ^_JOB_INFO_2W;
  370. LPJOB_INFO_2W = ^_JOB_INFO_2W;
  371. _JOB_INFO_3 = record
  372. JobId : DWORD;
  373. NextJobId : DWORD;
  374. Reserved : DWORD;
  375. end;
  376. JOB_INFO_3 = _JOB_INFO_3;
  377. PJOB_INFO_3 = ^_JOB_INFO_3;
  378. LPJOB_INFO_3 = ^_JOB_INFO_3;
  379. _DOC_INFO_1A = record
  380. pDocName : LPSTR;
  381. pOutputFile : LPSTR;
  382. pDatatype : LPSTR;
  383. end;
  384. DOC_INFO_1A = _DOC_INFO_1A;
  385. PDOC_INFO_1A = ^_DOC_INFO_1A;
  386. LPDOC_INFO_1A = ^_DOC_INFO_1A;
  387. _DOC_INFO_1W = record
  388. pDocName : LPWSTR;
  389. pOutputFile : LPWSTR;
  390. pDatatype : LPWSTR;
  391. end;
  392. DOC_INFO_1W = _DOC_INFO_1W;
  393. PDOC_INFO_1W = ^_DOC_INFO_1W;
  394. LPDOC_INFO_1W = ^_DOC_INFO_1W;
  395. _DOC_INFO_2A = record
  396. pDocName : LPSTR;
  397. pOutputFile : LPSTR;
  398. pDatatype : LPSTR;
  399. dwMode : DWORD;
  400. JobId : DWORD;
  401. end;
  402. DOC_INFO_2A = _DOC_INFO_2A;
  403. PDOC_INFO_2A = ^_DOC_INFO_2A;
  404. LPDOC_INFO_2A = ^_DOC_INFO_2A;
  405. _DOC_INFO_2W = record
  406. pDocName : LPWSTR;
  407. pOutputFile : LPWSTR;
  408. pDatatype : LPWSTR;
  409. dwMode : DWORD;
  410. JobId : DWORD;
  411. end;
  412. DOC_INFO_2W = _DOC_INFO_2W;
  413. PDOC_INFO_2W = ^_DOC_INFO_2W;
  414. LPDOC_INFO_2W = ^_DOC_INFO_2W;
  415. _DRIVER_INFO_1A = record
  416. pName : LPSTR;
  417. end;
  418. DRIVER_INFO_1A = _DRIVER_INFO_1A;
  419. PDRIVER_INFO_1A = ^_DRIVER_INFO_1A;
  420. LPDRIVER_INFO_1A = ^_DRIVER_INFO_1A;
  421. _DRIVER_INFO_1W = record
  422. pName : LPWSTR;
  423. end;
  424. DRIVER_INFO_1W = _DRIVER_INFO_1W;
  425. PDRIVER_INFO_1W = ^_DRIVER_INFO_1W;
  426. LPDRIVER_INFO_1W = ^_DRIVER_INFO_1W;
  427. _DRIVER_INFO_2A = record
  428. cVersion : DWORD;
  429. pName : LPSTR;
  430. pEnvironment : LPSTR;
  431. pDriverPath : LPSTR;
  432. pDataFile : LPSTR;
  433. pConfigFile : LPSTR;
  434. end;
  435. DRIVER_INFO_2A = _DRIVER_INFO_2A;
  436. PDRIVER_INFO_2A = ^_DRIVER_INFO_2A;
  437. LPDRIVER_INFO_2A = ^_DRIVER_INFO_2A;
  438. _DRIVER_INFO_2W = record
  439. cVersion : DWORD;
  440. pName : LPWSTR;
  441. pEnvironment : LPWSTR;
  442. pDriverPath : LPWSTR;
  443. pDataFile : LPWSTR;
  444. pConfigFile : LPWSTR;
  445. end;
  446. DRIVER_INFO_2W = _DRIVER_INFO_2W;
  447. PDRIVER_INFO_2W = ^_DRIVER_INFO_2W;
  448. LPDRIVER_INFO_2W = ^_DRIVER_INFO_2W;
  449. _DRIVER_INFO_3A = record
  450. cVersion : DWORD;
  451. pName : LPSTR;
  452. pEnvironment : LPSTR;
  453. pDriverPath : LPSTR;
  454. pDataFile : LPSTR;
  455. pConfigFile : LPSTR;
  456. pHelpFile : LPSTR;
  457. pDependentFiles : LPSTR;
  458. pMonitorName : LPSTR;
  459. pDefaultDataType : LPSTR;
  460. end;
  461. DRIVER_INFO_3A = _DRIVER_INFO_3A;
  462. PDRIVER_INFO_3A = ^_DRIVER_INFO_3A;
  463. LPDRIVER_INFO_3A = ^_DRIVER_INFO_3A;
  464. _DRIVER_INFO_3W = record
  465. cVersion : DWORD;
  466. pName : LPWSTR;
  467. pEnvironment : LPWSTR;
  468. pDriverPath : LPWSTR;
  469. pDataFile : LPWSTR;
  470. pConfigFile : LPWSTR;
  471. pHelpFile : LPWSTR;
  472. pDependentFiles : LPWSTR;
  473. pMonitorName : LPWSTR;
  474. pDefaultDataType : LPWSTR;
  475. end;
  476. DRIVER_INFO_3W = _DRIVER_INFO_3W;
  477. PDRIVER_INFO_3W = ^_DRIVER_INFO_3W;
  478. LPDRIVER_INFO_3W = ^_DRIVER_INFO_3W;
  479. _DRIVER_INFO_4A = record
  480. cVersion : DWORD;
  481. pName : LPSTR;
  482. pEnvironment : LPSTR;
  483. pDriverPath : LPSTR;
  484. pDataFile : LPSTR;
  485. pConfigFile : LPSTR;
  486. pHelpFile : LPSTR;
  487. pDependentFiles : LPSTR;
  488. pMonitorName : LPSTR;
  489. pDefaultDataType : LPSTR;
  490. pszzPreviousNames : LPSTR;
  491. end;
  492. DRIVER_INFO_4A = _DRIVER_INFO_4A;
  493. PDRIVER_INFO_4A = ^_DRIVER_INFO_4A;
  494. LPDRIVER_INFO_4A = ^_DRIVER_INFO_4A;
  495. _DRIVER_INFO_4W = record
  496. cVersion : DWORD;
  497. pName : LPWSTR;
  498. pEnvironment : LPWSTR;
  499. pDriverPath : LPWSTR;
  500. pDataFile : LPWSTR;
  501. pConfigFile : LPWSTR;
  502. pHelpFile : LPWSTR;
  503. pDependentFiles : LPWSTR;
  504. pMonitorName : LPWSTR;
  505. pDefaultDataType : LPWSTR;
  506. pszzPreviousNames : LPWSTR;
  507. end;
  508. DRIVER_INFO_4W = _DRIVER_INFO_4W;
  509. PDRIVER_INFO_4W = ^_DRIVER_INFO_4W;
  510. LPDRIVER_INFO_4W = ^_DRIVER_INFO_4W;
  511. _DRIVER_INFO_5A = record
  512. cVersion : DWORD;
  513. pName : LPSTR;
  514. pEnvironment : LPSTR;
  515. pDriverPath : LPSTR;
  516. pDataFile : LPSTR;
  517. pConfigFile : LPSTR;
  518. dwDriverAttributes : DWORD;
  519. dwConfigVersion : DWORD;
  520. dwDriverVersion : DWORD;
  521. end;
  522. DRIVER_INFO_5A = _DRIVER_INFO_5A;
  523. PDRIVER_INFO_5A = ^_DRIVER_INFO_5A;
  524. LPDRIVER_INFO_5A = ^_DRIVER_INFO_5A;
  525. _DRIVER_INFO_5W = record
  526. cVersion : DWORD;
  527. pName : LPWSTR;
  528. pEnvironment : LPWSTR;
  529. pDriverPath : LPWSTR;
  530. pDataFile : LPWSTR;
  531. pConfigFile : LPWSTR;
  532. dwDriverAttributes : DWORD;
  533. dwConfigVersion : DWORD;
  534. dwDriverVersion : DWORD;
  535. end;
  536. DRIVER_INFO_5W = _DRIVER_INFO_5W;
  537. PDRIVER_INFO_5W = ^_DRIVER_INFO_5W;
  538. LPDRIVER_INFO_5W = ^_DRIVER_INFO_5W;
  539. _DRIVER_INFO_6A = record
  540. cVersion : DWORD;
  541. pName : LPSTR;
  542. pEnvironment : LPSTR;
  543. pDriverPath : LPSTR;
  544. pDataFile : LPSTR;
  545. pConfigFile : LPSTR;
  546. pHelpFile : LPSTR;
  547. pDependentFiles : LPSTR;
  548. pMonitorName : LPSTR;
  549. pDefaultDataType : LPSTR;
  550. pszzPreviousNames : LPSTR;
  551. ftDriverDate : FILETIME;
  552. dwlDriverVersion : DWORDLONG;
  553. pszMfgName : LPSTR;
  554. pszOEMUrl : LPSTR;
  555. pszHardwareID : LPSTR;
  556. pszProvider : LPSTR;
  557. end;
  558. DRIVER_INFO_6A = _DRIVER_INFO_6A;
  559. PDRIVER_INFO_6A = ^_DRIVER_INFO_6A;
  560. LPDRIVER_INFO_6A = ^_DRIVER_INFO_6A;
  561. _DRIVER_INFO_6W = record
  562. cVersion : DWORD;
  563. pName : LPWSTR;
  564. pEnvironment : LPWSTR;
  565. pDriverPath : LPWSTR;
  566. pDataFile : LPWSTR;
  567. pConfigFile : LPWSTR;
  568. pHelpFile : LPWSTR;
  569. pDependentFiles : LPWSTR;
  570. pMonitorName : LPWSTR;
  571. pDefaultDataType : LPWSTR;
  572. pszzPreviousNames : LPWSTR;
  573. ftDriverDate : FILETIME;
  574. dwlDriverVersion : DWORDLONG;
  575. pszMfgName : LPWSTR;
  576. pszOEMUrl : LPWSTR;
  577. pszHardwareID : LPWSTR;
  578. pszProvider : LPWSTR;
  579. end;
  580. DRIVER_INFO_6W = _DRIVER_INFO_6W;
  581. PDRIVER_INFO_6W = ^_DRIVER_INFO_6W;
  582. LPDRIVER_INFO_6W = ^_DRIVER_INFO_6W;
  583. _MONITOR_INFO_1A = record
  584. pName : LPSTR;
  585. end;
  586. MONITOR_INFO_1A = _MONITOR_INFO_1A;
  587. PMONITOR_INFO_1A = ^_MONITOR_INFO_1A;
  588. LPMONITOR_INFO_1A = ^_MONITOR_INFO_1A;
  589. _MONITOR_INFO_1W = record
  590. pName : LPWSTR;
  591. end;
  592. MONITOR_INFO_1W = _MONITOR_INFO_1W;
  593. PMONITOR_INFO_1W = ^_MONITOR_INFO_1W;
  594. LPMONITOR_INFO_1W = ^_MONITOR_INFO_1W;
  595. _PORT_INFO_1A = record
  596. pName : LPSTR;
  597. end;
  598. PORT_INFO_1A = _PORT_INFO_1A;
  599. PPORT_INFO_1A = ^_PORT_INFO_1A;
  600. LPPORT_INFO_1A = ^_PORT_INFO_1A;
  601. _PORT_INFO_1W = record
  602. pName : LPWSTR;
  603. end;
  604. PORT_INFO_1W = _PORT_INFO_1W;
  605. PPORT_INFO_1W = ^_PORT_INFO_1W;
  606. LPPORT_INFO_1W = ^_PORT_INFO_1W;
  607. _MONITOR_INFO_2A = record
  608. pName : LPSTR;
  609. pEnvironment : LPSTR;
  610. pDLLName : LPSTR;
  611. end;
  612. MONITOR_INFO_2A = _MONITOR_INFO_2A;
  613. PMONITOR_INFO_2A = ^_MONITOR_INFO_2A;
  614. LPMONITOR_INFO_2A = ^_MONITOR_INFO_2A;
  615. _MONITOR_INFO_2W = record
  616. pName : LPWSTR;
  617. pEnvironment : LPWSTR;
  618. pDLLName : LPWSTR;
  619. end;
  620. MONITOR_INFO_2W = _MONITOR_INFO_2W;
  621. PMONITOR_INFO_2W = ^_MONITOR_INFO_2W;
  622. LPMONITOR_INFO_2W = ^_MONITOR_INFO_2W;
  623. _PORT_INFO_2A = record
  624. pPortName : LPSTR;
  625. pMonitorName : LPSTR;
  626. pDescription : LPSTR;
  627. fPortType : DWORD;
  628. Reserved : DWORD;
  629. end;
  630. PORT_INFO_2A = _PORT_INFO_2A;
  631. PPORT_INFO_2A = ^_PORT_INFO_2A;
  632. LPPORT_INFO_2A = ^_PORT_INFO_2A;
  633. _PORT_INFO_2W = record
  634. pPortName : LPWSTR;
  635. pMonitorName : LPWSTR;
  636. pDescription : LPWSTR;
  637. fPortType : DWORD;
  638. Reserved : DWORD;
  639. end;
  640. PORT_INFO_2W = _PORT_INFO_2W;
  641. PPORT_INFO_2W = ^_PORT_INFO_2W;
  642. LPPORT_INFO_2W = ^_PORT_INFO_2W;
  643. _PORT_INFO_3A = record
  644. dwStatus : DWORD;
  645. pszStatus : LPSTR;
  646. dwSeverity : DWORD;
  647. end;
  648. PORT_INFO_3A = _PORT_INFO_3A;
  649. PPORT_INFO_3A = ^_PORT_INFO_3A;
  650. LPPORT_INFO_3A = ^_PORT_INFO_3A;
  651. _PORT_INFO_3W = record
  652. dwStatus : DWORD;
  653. pszStatus : LPWSTR;
  654. dwSeverity : DWORD;
  655. end;
  656. PORT_INFO_3W = _PORT_INFO_3W;
  657. PPORT_INFO_3W = ^_PORT_INFO_3W;
  658. LPPORT_INFO_3W = ^_PORT_INFO_3W;
  659. _PRINTER_ENUM_VALUESA = record
  660. pValueName : LPSTR;
  661. cbValueName : DWORD;
  662. dwType : DWORD;
  663. pData : LPBYTE;
  664. cbData : DWORD;
  665. end;
  666. PRINTER_ENUM_VALUESA = _PRINTER_ENUM_VALUESA;
  667. PPRINTER_ENUM_VALUESA = ^_PRINTER_ENUM_VALUESA;
  668. LPRINTER_ENUM_VALUESA = ^_PRINTER_ENUM_VALUESA;
  669. _PRINTER_ENUM_VALUESW = record
  670. pValueName : LPWSTR;
  671. cbValueName : DWORD;
  672. dwType : DWORD;
  673. pData : LPBYTE;
  674. cbData : DWORD;
  675. end;
  676. PRINTER_ENUM_VALUESW = _PRINTER_ENUM_VALUESW;
  677. PPRINTER_ENUM_VALUESW = ^_PRINTER_ENUM_VALUESW;
  678. LPRINTER_ENUM_VALUESW = ^_PRINTER_ENUM_VALUESW;
  679. _PRINTER_INFO_1A = record
  680. Flags : DWORD;
  681. pDescription : LPSTR;
  682. pName : LPSTR;
  683. pComment : LPSTR;
  684. end;
  685. PRINTER_INFO_1A = _PRINTER_INFO_1A;
  686. PPRINTER_INFO_1A = ^_PRINTER_INFO_1A;
  687. LPPRINTER_INFO_1A = ^_PRINTER_INFO_1A;
  688. _PRINTER_INFO_1W = record
  689. Flags : DWORD;
  690. pDescription : LPWSTR;
  691. pName : LPWSTR;
  692. pComment : LPWSTR;
  693. end;
  694. PRINTER_INFO_1W = _PRINTER_INFO_1W;
  695. PPRINTER_INFO_1W = ^_PRINTER_INFO_1W;
  696. LPPRINTER_INFO_1W = ^_PRINTER_INFO_1W;
  697. _PRINTER_INFO_2A = record
  698. pServerName : LPSTR;
  699. pPrinterName : LPSTR;
  700. pShareName : LPSTR;
  701. pPortName : LPSTR;
  702. pDriverName : LPSTR;
  703. pComment : LPSTR;
  704. pLocation : LPSTR;
  705. pDevMode : LPDEVMODE;
  706. pSepFile : LPSTR;
  707. pPrintProcessor : LPSTR;
  708. pDatatype : LPSTR;
  709. pParameters : LPSTR;
  710. pSecurityDescriptor : PSECURITY_DESCRIPTOR;
  711. Attributes : DWORD;
  712. Priority : DWORD;
  713. DefaultPriority : DWORD;
  714. StartTime : DWORD;
  715. UntilTime : DWORD;
  716. Status : DWORD;
  717. cJobs : DWORD;
  718. AveragePPM : DWORD;
  719. end;
  720. PRINTER_INFO_2A = _PRINTER_INFO_2A;
  721. PPRINTER_INFO_2A = ^_PRINTER_INFO_2A;
  722. LPPRINTER_INFO_2A = ^_PRINTER_INFO_2A;
  723. _PRINTER_INFO_2W = record
  724. pServerName : LPWSTR;
  725. pPrinterName : LPWSTR;
  726. pShareName : LPWSTR;
  727. pPortName : LPWSTR;
  728. pDriverName : LPWSTR;
  729. pComment : LPWSTR;
  730. pLocation : LPWSTR;
  731. pDevMode : LPDEVMODEW;
  732. pSepFile : LPWSTR;
  733. pPrintProcessor : LPWSTR;
  734. pDatatype : LPWSTR;
  735. pParameters : LPWSTR;
  736. pSecurityDescriptor : PSECURITY_DESCRIPTOR;
  737. Attributes : DWORD;
  738. Priority : DWORD;
  739. DefaultPriority : DWORD;
  740. StartTime : DWORD;
  741. UntilTime : DWORD;
  742. Status : DWORD;
  743. cJobs : DWORD;
  744. AveragePPM : DWORD;
  745. end;
  746. PRINTER_INFO_2W = _PRINTER_INFO_2W;
  747. PPRINTER_INFO_2W = ^_PRINTER_INFO_2W;
  748. LPPRINTER_INFO_2W = ^_PRINTER_INFO_2W;
  749. _PRINTER_INFO_3 = record
  750. pSecurityDescriptor : PSECURITY_DESCRIPTOR;
  751. end;
  752. PRINTER_INFO_3 = _PRINTER_INFO_3;
  753. PPRINTER_INFO_3 = ^_PRINTER_INFO_3;
  754. LPPRINTER_INFO_3 = ^_PRINTER_INFO_3;
  755. _PRINTER_INFO_4A = record
  756. pPrinterName : LPSTR;
  757. pServerName : LPSTR;
  758. Attributes : DWORD;
  759. end;
  760. PRINTER_INFO_4A = _PRINTER_INFO_4A;
  761. PPRINTER_INFO_4A = ^_PRINTER_INFO_4A;
  762. LPPRINTER_INFO_4A = ^_PRINTER_INFO_4A;
  763. _PRINTER_INFO_4W = record
  764. pPrinterName : LPWSTR;
  765. pServerName : LPWSTR;
  766. Attributes : DWORD;
  767. end;
  768. PRINTER_INFO_4W = _PRINTER_INFO_4W;
  769. PPRINTER_INFO_4W = ^_PRINTER_INFO_4W;
  770. LPPRINTER_INFO_4W = ^_PRINTER_INFO_4W;
  771. _PRINTER_INFO_5A = record
  772. pPrinterName : LPSTR;
  773. pPortName : LPSTR;
  774. Attributes : DWORD;
  775. DeviceNotSelectedTimeout : DWORD;
  776. TransmissionRetryTimeout : DWORD;
  777. end;
  778. PRINTER_INFO_5A = _PRINTER_INFO_5A;
  779. PPRINTER_INFO_5A = ^_PRINTER_INFO_5A;
  780. LPPRINTER_INFO_5A = ^_PRINTER_INFO_5A;
  781. _PRINTER_INFO_5W = record
  782. pPrinterName : LPWSTR;
  783. pPortName : LPWSTR;
  784. Attributes : DWORD;
  785. DeviceNotSelectedTimeout : DWORD;
  786. TransmissionRetryTimeout : DWORD;
  787. end;
  788. PRINTER_INFO_5W = _PRINTER_INFO_5W;
  789. PPRINTER_INFO_5W = ^_PRINTER_INFO_5W;
  790. LPPRINTER_INFO_5W = ^_PRINTER_INFO_5W;
  791. _PRINTER_INFO_6 = record
  792. dwStatus : DWORD;
  793. end;
  794. PRINTER_INFO_6 = _PRINTER_INFO_6;
  795. PPRINTER_INFO_6 = ^_PRINTER_INFO_6;
  796. LPPRINTER_INFO_6 = ^_PRINTER_INFO_6;
  797. _PRINTER_INFO_7A = record
  798. pszObjectGUID : LPWSTR;
  799. dwAction : DWORD;
  800. end;
  801. PRINTER_INFO_7A = _PRINTER_INFO_7A;
  802. PPRINTER_INFO_7A = ^_PRINTER_INFO_7A;
  803. LPPRINTER_INFO_7A = ^_PRINTER_INFO_7A;
  804. _PRINTER_INFO_7W = record
  805. pszObjectGUID : LPWSTR;
  806. dwAction : DWORD;
  807. end;
  808. PRINTER_INFO_7W = _PRINTER_INFO_7W;
  809. PPRINTER_INFO_7W = ^_PRINTER_INFO_7W;
  810. LPPRINTER_INFO_7W = ^_PRINTER_INFO_7W;
  811. _PRINTER_INFO_8 = record
  812. pDevMode : LPDEVMODE;
  813. end;
  814. PRINTER_INFO_8 = _PRINTER_INFO_8;
  815. PPRINTER_INFO_8 = ^_PRINTER_INFO_8;
  816. LPPRINTER_INFO_8 = ^_PRINTER_INFO_8;
  817. _PRINTER_INFO_9 = record
  818. pDevMode : LPDEVMODE;
  819. end;
  820. PRINTER_INFO_9 = _PRINTER_INFO_9;
  821. PPRINTER_INFO_9 = ^_PRINTER_INFO_9;
  822. LPPRINTER_INFO_9 = ^_PRINTER_INFO_9;
  823. _PRINTPROCESSOR_INFO_1A = record
  824. pName : LPSTR;
  825. end;
  826. PRINTPROCESSOR_INFO_1A = _PRINTPROCESSOR_INFO_1A;
  827. PPRINTPROCESSOR_INFO_1A = ^_PRINTPROCESSOR_INFO_1A;
  828. LPPRINTPROCESSOR_INFO_1A = ^_PRINTPROCESSOR_INFO_1A;
  829. _PRINTPROCESSOR_INFO_1W = record
  830. pName : LPWSTR;
  831. end;
  832. PRINTPROCESSOR_INFO_1W = _PRINTPROCESSOR_INFO_1W;
  833. PPRINTPROCESSOR_INFO_1W = ^_PRINTPROCESSOR_INFO_1W;
  834. LPPRINTPROCESSOR_INFO_1W = ^_PRINTPROCESSOR_INFO_1W;
  835. _PRINTER_NOTIFY_INFO_DATA = record
  836. _Type : WORD;
  837. Field : WORD;
  838. Reserved : DWORD;
  839. Id : DWORD;
  840. NotifyData : record
  841. case longint of
  842. 0 : ( adwData : array[0..1] of DWORD );
  843. 1 : ( Data : record
  844. cbBuf : DWORD;
  845. pBuf : PVOID;
  846. end );
  847. end;
  848. end;
  849. PRINTER_NOTIFY_INFO_DATA = _PRINTER_NOTIFY_INFO_DATA;
  850. PPRINTER_NOTIFY_INFO_DATA = ^_PRINTER_NOTIFY_INFO_DATA;
  851. LPPRINTER_NOTIFY_INFO_DATA = ^_PRINTER_NOTIFY_INFO_DATA;
  852. _PRINTER_NOTIFY_INFO = record
  853. Version : DWORD;
  854. Flags : DWORD;
  855. Count : DWORD;
  856. aData : array[0..0] of PRINTER_NOTIFY_INFO_DATA;
  857. end;
  858. PRINTER_NOTIFY_INFO = _PRINTER_NOTIFY_INFO;
  859. PPRINTER_NOTIFY_INFO = ^_PRINTER_NOTIFY_INFO;
  860. LPPRINTER_NOTIFY_INFO = ^_PRINTER_NOTIFY_INFO;
  861. _FORM_INFO_1A = record
  862. Flags : DWORD;
  863. pName : LPSTR;
  864. Size : SIZEL;
  865. ImageableArea : RECTL;
  866. end;
  867. FORM_INFO_1A = _FORM_INFO_1A;
  868. PFORM_INFO_1A = ^_FORM_INFO_1A;
  869. LPFORM_INFO_1A = ^_FORM_INFO_1A;
  870. _FORM_INFO_1W = record
  871. Flags : DWORD;
  872. pName : LPWSTR;
  873. Size : SIZEL;
  874. ImageableArea : RECTL;
  875. end;
  876. FORM_INFO_1W = _FORM_INFO_1W;
  877. PFORM_INFO_1W = ^_FORM_INFO_1W;
  878. LPFORM_INFO_1W = ^_FORM_INFO_1W;
  879. _PRINTER_DEFAULTSA = record
  880. pDatatype : LPSTR;
  881. pDevMode : LPDEVMODE;
  882. DesiredAccess : ACCESS_MASK;
  883. end;
  884. PRINTER_DEFAULTSA = _PRINTER_DEFAULTSA;
  885. PPRINTER_DEFAULTSA = ^_PRINTER_DEFAULTSA;
  886. LPPRINTER_DEFAULTSA = ^_PRINTER_DEFAULTSA;
  887. _PRINTER_DEFAULTSW = record
  888. pDatatype : LPWSTR;
  889. pDevMode : LPDEVMODE;
  890. DesiredAccess : ACCESS_MASK;
  891. end;
  892. PRINTER_DEFAULTSW = _PRINTER_DEFAULTSW;
  893. PPRINTER_DEFAULTSW = ^_PRINTER_DEFAULTSW;
  894. LPPRINTER_DEFAULTSW = ^_PRINTER_DEFAULTSW;
  895. _PRINTPROCESSOR_CAPS_1 = record
  896. dwLevel : DWORD;
  897. dwNupOptions : DWORD;
  898. dwPageOrderFlags : DWORD;
  899. dwNumberOfCopies : DWORD;
  900. end;
  901. PRINTPROCESSOR_CAPS_1 = _PRINTPROCESSOR_CAPS_1;
  902. PPRINTPROCESSOR_CAPS_1 = ^_PRINTPROCESSOR_CAPS_1;
  903. LPPRINTPROCESSOR_CAPS_1 = ^_PRINTPROCESSOR_CAPS_1;
  904. _PROVIDOR_INFO_1A = record
  905. pName : LPSTR;
  906. pEnvironment : LPSTR;
  907. pDLLName : LPSTR;
  908. end;
  909. PROVIDOR_INFO_1A = _PROVIDOR_INFO_1A;
  910. PPROVIDOR_INFO_1A = ^_PROVIDOR_INFO_1A;
  911. LPPROVIDOR_INFO_1A = ^_PROVIDOR_INFO_1A;
  912. _PROVIDOR_INFO_1W = record
  913. pName : LPWSTR;
  914. pEnvironment : LPWSTR;
  915. pDLLName : LPWSTR;
  916. end;
  917. PROVIDOR_INFO_1W = _PROVIDOR_INFO_1W;
  918. PPROVIDOR_INFO_1W = ^_PROVIDOR_INFO_1W;
  919. LPPROVIDOR_INFO_1W = ^_PROVIDOR_INFO_1W;
  920. _PROVIDOR_INFO_2A = record
  921. pOrder : LPSTR;
  922. end;
  923. PROVIDOR_INFO_2A = _PROVIDOR_INFO_2A;
  924. PPROVIDOR_INFO_2A = ^_PROVIDOR_INFO_2A;
  925. LPROVIDOR_INFO_2A = ^_PROVIDOR_INFO_2A;
  926. _PROVIDOR_INFO_2W = record
  927. pOrder : LPWSTR;
  928. end;
  929. PROVIDOR_INFO_2W = _PROVIDOR_INFO_2W;
  930. PPROVIDOR_INFO_2W = ^_PROVIDOR_INFO_2W;
  931. LPROVIDOR_INFO_2W = ^_PROVIDOR_INFO_2W;
  932. function AbortPrinter(_para1:HANDLE):BOOL;stdcall; external External_library name 'AbortPrinter';
  933. function AddForm(_para1:HANDLE; _para2:DWORD; _para3:PBYTE):BOOL;stdcall; external External_library name 'AddFormA';
  934. function AddFormA(_para1:HANDLE; _para2:DWORD; _para3:PBYTE):BOOL;stdcall; external External_library name 'AddFormA';
  935. function AddFormW(_para1:HANDLE; _para2:DWORD; _para3:PBYTE):BOOL;stdcall; external External_library name 'AddFormW';
  936. function AddJob(_para1:HANDLE; _para2:DWORD; _para3:PBYTE; _para4:DWORD; _para5:PDWORD):BOOL;stdcall; external External_library name 'AddJobA';
  937. function AddJobA(_para1:HANDLE; _para2:DWORD; _para3:PBYTE; _para4:DWORD; _para5:PDWORD):BOOL;stdcall; external External_library name 'AddJobA';
  938. function AddJobW(_para1:HANDLE; _para2:DWORD; _para3:PBYTE; _para4:DWORD; _para5:PDWORD):BOOL;stdcall; external External_library name 'AddJobW';
  939. function AddMonitor(_para1:LPSTR; _para2:DWORD; _para3:PBYTE):BOOL;stdcall; external External_library name 'AddMonitorA';
  940. function AddMonitorA(_para1:LPSTR; _para2:DWORD; _para3:PBYTE):BOOL;stdcall; external External_library name 'AddMonitorA';
  941. function AddMonitorW(_para1:LPWSTR; _para2:DWORD; _para3:PBYTE):BOOL;stdcall; external External_library name 'AddMonitorW';
  942. function AddPort(_para1:LPSTR; _para2:HWND; _para3:LPSTR):BOOL;stdcall; external External_library name 'AddPortA';
  943. function AddPortA(_para1:LPSTR; _para2:HWND; _para3:LPSTR):BOOL;stdcall; external External_library name 'AddPortA';
  944. function AddPortW(_para1:LPWSTR; _para2:HWND; _para3:LPWSTR):BOOL;stdcall; external External_library name 'AddPortW';
  945. function AddPrinter(_para1:LPSTR; _para2:DWORD; _para3:PBYTE):HANDLE;stdcall; external External_library name 'AddPrinterA';
  946. function AddPrinterA(_para1:LPSTR; _para2:DWORD; _para3:PBYTE):HANDLE;stdcall; external External_library name 'AddPrinterA';
  947. function AddPrinterW(_para1:LPWSTR; _para2:DWORD; _para3:PBYTE):HANDLE;stdcall; external External_library name 'AddPrinterW';
  948. function AddPrinterConnection(_para1:LPSTR):BOOL;stdcall; external External_library name 'AddPrinterConnectionA';
  949. function AddPrinterConnectionA(_para1:LPSTR):BOOL;stdcall; external External_library name 'AddPrinterConnectionA';
  950. function AddPrinterConnectionW(_para1:LPWSTR):BOOL;stdcall; external External_library name 'AddPrinterConnectionW';
  951. function AddPrinterDriver(_para1:LPSTR; _para2:DWORD; _para3:PBYTE):BOOL;stdcall; external External_library name 'AddPrinterDriverA';
  952. function AddPrinterDriverA(_para1:LPSTR; _para2:DWORD; _para3:PBYTE):BOOL;stdcall; external External_library name 'AddPrinterDriverA';
  953. function AddPrinterDriverW(_para1:LPWSTR; _para2:DWORD; _para3:PBYTE):BOOL;stdcall; external External_library name 'AddPrinterDriverW';
  954. function AddPrintProcessor(_para1:LPSTR; _para2:LPSTR; _para3:LPSTR; _para4:LPSTR):BOOL;stdcall; external External_library name 'AddPrintProcessorA';
  955. function AddPrintProcessorA(_para1:LPSTR; _para2:LPSTR; _para3:LPSTR; _para4:LPSTR):BOOL;stdcall; external External_library name 'AddPrintProcessorA';
  956. function AddPrintProcessorW(_para1:LPWSTR; _para2:LPWSTR; _para3:LPWSTR; _para4:LPWSTR):BOOL;stdcall; external External_library name 'AddPrintProcessorW';
  957. function AddPrintProvidor(_para1:LPSTR; _para2:DWORD; _para3:PBYTE):BOOL;stdcall; external External_library name 'AddPrintProvidorA';
  958. function AddPrintProvidorA(_para1:LPSTR; _para2:DWORD; _para3:PBYTE):BOOL;stdcall; external External_library name 'AddPrintProvidorA';
  959. function AddPrintProvidorW(_para1:LPWSTR; _para2:DWORD; _para3:PBYTE):BOOL;stdcall; external External_library name 'AddPrintProvidorW';
  960. function AdvancedDocumentProperties(_para1:HWND; _para2:HANDLE; _para3:LPSTR; _para4:PDEVMODE; _para5:PDEVMODE):LONG;stdcall; external External_library name 'AdvancedDocumentPropertiesA';
  961. function AdvancedDocumentPropertiesA(_para1:HWND; _para2:HANDLE; _para3:LPSTR; _para4:PDEVMODE; _para5:PDEVMODE):LONG;stdcall; external External_library name 'AdvancedDocumentPropertiesA';
  962. function AdvancedDocumentProperties(_para1:HWND; _para2:HANDLE; _para3:LPWSTR; _para4:PDEVMODE; _para5:PDEVMODEW):LONG;stdcall; external External_library name 'AdvancedDocumentPropertiesW';
  963. function AdvancedDocumentPropertiesW(_para1:HWND; _para2:HANDLE; _para3:LPWSTR; _para4:PDEVMODE; _para5:PDEVMODEW):LONG;stdcall; external External_library name 'AdvancedDocumentPropertiesW';
  964. function ClosePrinter(_para1:HANDLE):BOOL;stdcall; external External_library name 'ClosePrinter';
  965. function ConfigurePort(_para1:LPSTR; _para2:HWND; _para3:LPSTR):BOOL;stdcall; external External_library name 'ConfigurePortA';
  966. function ConfigurePort(_para1:LPWSTR; _para2:HWND; _para3:LPWSTR):BOOL;stdcall; external External_library name 'ConfigurePortW';
  967. function ConfigurePortA(_para1:LPSTR; _para2:HWND; _para3:LPSTR):BOOL;stdcall; external External_library name 'ConfigurePortA';
  968. function ConfigurePortW(_para1:LPWSTR; _para2:HWND; _para3:LPWSTR):BOOL;stdcall; external External_library name 'ConfigurePortW';
  969. function ConnectToPrinterDlg(_para1:HWND; _para2:DWORD):HANDLE;stdcall; external External_library name 'ConnectToPrinterDlg';
  970. function DeleteForm(_para1:HANDLE; _para2:LPSTR):BOOL;stdcall; external External_library name 'DeleteFormA';
  971. function DeleteForm(_para1:HANDLE; _para2:LPWSTR):BOOL;stdcall; external External_library name 'DeleteFormW';
  972. function DeleteFormA(_para1:HANDLE; _para2:LPSTR):BOOL;stdcall; external External_library name 'DeleteFormA';
  973. function DeleteFormW(_para1:HANDLE; _para2:LPWSTR):BOOL;stdcall; external External_library name 'DeleteFormW';
  974. function DeleteMonitor(_para1:LPSTR; _para2:LPSTR; _para3:LPSTR):BOOL;stdcall; external External_library name 'DeleteMonitorA';
  975. function DeleteMonitor(_para1:LPWSTR; _para2:LPWSTR; _para3:LPWSTR):BOOL;stdcall; external External_library name 'DeleteMonitorW';
  976. function DeleteMonitorA(_para1:LPSTR; _para2:LPSTR; _para3:LPSTR):BOOL;stdcall; external External_library name 'DeleteMonitorA';
  977. function DeleteMonitorW(_para1:LPWSTR; _para2:LPWSTR; _para3:LPWSTR):BOOL;stdcall; external External_library name 'DeleteMonitorW';
  978. function DeletePort(_para1:LPSTR; _para2:HWND; _para3:LPSTR):BOOL;stdcall; external External_library name 'DeletePortA';
  979. function DeletePort(_para1:LPWSTR; _para2:HWND; _para3:LPWSTR):BOOL;stdcall; external External_library name 'DeletePortW';
  980. function DeletePortA(_para1:LPSTR; _para2:HWND; _para3:LPSTR):BOOL;stdcall; external External_library name 'DeletePortA';
  981. function DeletePortW(_para1:LPWSTR; _para2:HWND; _para3:LPWSTR):BOOL;stdcall; external External_library name 'DeletePortW';
  982. function DeletePrinter(_para1:HANDLE):BOOL;stdcall; external External_library name 'DeletePrinter';
  983. function DeletePrinterConnection(_para1:LPSTR):BOOL;stdcall; external External_library name 'DeletePrinterConnectionA';
  984. function DeletePrinterConnection(_para1:LPWSTR):BOOL;stdcall; external External_library name 'DeletePrinterConnectionW';
  985. function DeletePrinterConnectionA(_para1:LPSTR):BOOL;stdcall; external External_library name 'DeletePrinterConnectionA';
  986. function DeletePrinterConnectionW(_para1:LPWSTR):BOOL;stdcall; external External_library name 'DeletePrinterConnectionW';
  987. function DeletePrinterData(_para1:HANDLE; _para2:LPSTR):DWORD;stdcall; external External_library name 'DeletePrinterDataA';
  988. function DeletePrinterData(_para1:HANDLE; _para2:LPWSTR):DWORD;stdcall; external External_library name 'DeletePrinterDataW';
  989. function DeletePrinterDataA(_para1:HANDLE; _para2:LPSTR):DWORD;stdcall; external External_library name 'DeletePrinterDataA';
  990. function DeletePrinterDataW(_para1:HANDLE; _para2:LPWSTR):DWORD;stdcall; external External_library name 'DeletePrinterDataW';
  991. function DeletePrinterDriver(_para1:LPSTR; _para2:LPSTR; _para3:LPSTR):BOOL;stdcall; external External_library name 'DeletePrinterDriverA';
  992. function DeletePrinterDriver(_para1:LPWSTR; _para2:LPWSTR; _para3:LPWSTR):BOOL;stdcall; external External_library name 'DeletePrinterDriverW';
  993. function DeletePrinterDriverA(_para1:LPSTR; _para2:LPSTR; _para3:LPSTR):BOOL;stdcall; external External_library name 'DeletePrinterDriverA';
  994. function DeletePrinterDriverW(_para1:LPWSTR; _para2:LPWSTR; _para3:LPWSTR):BOOL;stdcall; external External_library name 'DeletePrinterDriverW';
  995. function DeletePrintProcessor(_para1:LPSTR; _para2:LPSTR; _para3:LPSTR):BOOL;stdcall; external External_library name 'DeletePrintProcessorA';
  996. function DeletePrintProcessor(_para1:LPWSTR; _para2:LPWSTR; _para3:LPWSTR):BOOL;stdcall; external External_library name 'DeletePrintProcessorW';
  997. function DeletePrintProcessorA(_para1:LPSTR; _para2:LPSTR; _para3:LPSTR):BOOL;stdcall; external External_library name 'DeletePrintProcessorA';
  998. function DeletePrintProcessorW(_para1:LPWSTR; _para2:LPWSTR; _para3:LPWSTR):BOOL;stdcall; external External_library name 'DeletePrintProcessorW';
  999. function DeletePrintProvidor(_para1:LPSTR; _para2:LPSTR; _para3:LPSTR):BOOL;stdcall; external External_library name 'DeletePrintProvidorA';
  1000. function DeletePrintProvidor(_para1:LPWSTR; _para2:LPWSTR; _para3:LPWSTR):BOOL;stdcall; external External_library name 'DeletePrintProvidorW';
  1001. function DeletePrintProvidorA(_para1:LPSTR; _para2:LPSTR; _para3:LPSTR):BOOL;stdcall; external External_library name 'DeletePrintProvidorA';
  1002. function DeletePrintProvidorW(_para1:LPWSTR; _para2:LPWSTR; _para3:LPWSTR):BOOL;stdcall; external External_library name 'DeletePrintProvidorW';
  1003. function DocumentProperties(_para1:HWND; _para2:HANDLE; _para3:LPSTR; _para4:PDEVMODE; _para5:PDEVMODE;
  1004. _para6:DWORD):LONG;stdcall; external External_library name 'DocumentPropertiesA';
  1005. function DocumentProperties(_para1:HWND; _para2:HANDLE; _para3:LPWSTR; _para4:PDEVMODEW; _para5:PDEVMODEW;
  1006. _para6:DWORD):LONG;stdcall; external External_library name 'DocumentPropertiesW';
  1007. function DocumentPropertiesA(_para1:HWND; _para2:HANDLE; _para3:LPSTR; _para4:PDEVMODE; _para5:PDEVMODE;
  1008. _para6:DWORD):LONG;stdcall; external External_library name 'DocumentPropertiesA';
  1009. function DocumentPropertiesW(_para1:HWND; _para2:HANDLE; _para3:LPWSTR; _para4:PDEVMODEW; _para5:PDEVMODEW;
  1010. _para6:DWORD):LONG;stdcall; external External_library name 'DocumentPropertiesW';
  1011. function EndDocPrinter(_para1:HANDLE):BOOL;stdcall; external External_library name 'EndDocPrinter';
  1012. function EndPagePrinter(_para1:HANDLE):BOOL;stdcall; external External_library name 'EndPagePrinter';
  1013. function EnumForms(_para1:HANDLE; _para2:DWORD; _para3:PBYTE; _para4:DWORD; _para5:PDWORD;
  1014. _para6:PDWORD):BOOL;stdcall; external External_library name 'EnumFormsA';
  1015. function EnumFormsA(_para1:HANDLE; _para2:DWORD; _para3:PBYTE; _para4:DWORD; _para5:PDWORD;
  1016. _para6:PDWORD):BOOL;stdcall; external External_library name 'EnumFormsA';
  1017. function EnumFormsW(_para1:HANDLE; _para2:DWORD; _para3:PBYTE; _para4:DWORD; _para5:PDWORD;
  1018. _para6:PDWORD):BOOL;stdcall; external External_library name 'EnumFormsW';
  1019. function EnumJobs(_para1:HANDLE; _para2:DWORD; _para3:DWORD; _para4:DWORD; _para5:PBYTE;
  1020. _para6:DWORD; _para7:PDWORD; _para8:PDWORD):BOOL;stdcall; external External_library name 'EnumJobsA';
  1021. function EnumJobsA(_para1:HANDLE; _para2:DWORD; _para3:DWORD; _para4:DWORD; _para5:PBYTE;
  1022. _para6:DWORD; _para7:PDWORD; _para8:PDWORD):BOOL;stdcall; external External_library name 'EnumJobsA';
  1023. function EnumJobsW(_para1:HANDLE; _para2:DWORD; _para3:DWORD; _para4:DWORD; _para5:PBYTE;
  1024. _para6:DWORD; _para7:PDWORD; _para8:PDWORD):BOOL;stdcall; external External_library name 'EnumJobsW';
  1025. function EnumMonitors(_para1:LPSTR; _para2:DWORD; _para3:PBYTE; _para4:DWORD; _para5:PDWORD;
  1026. _para6:PDWORD):BOOL;stdcall; external External_library name 'EnumMonitorsA';
  1027. function EnumMonitors(_para1:LPWSTR; _para2:DWORD; _para3:PBYTE; _para4:DWORD; _para5:PDWORD;
  1028. _para6:PDWORD):BOOL;stdcall; external External_library name 'EnumMonitorsW';
  1029. function EnumMonitorsA(_para1:LPSTR; _para2:DWORD; _para3:PBYTE; _para4:DWORD; _para5:PDWORD;
  1030. _para6:PDWORD):BOOL;stdcall; external External_library name 'EnumMonitorsA';
  1031. function EnumMonitorsW(_para1:LPWSTR; _para2:DWORD; _para3:PBYTE; _para4:DWORD; _para5:PDWORD;
  1032. _para6:PDWORD):BOOL;stdcall; external External_library name 'EnumMonitorsW';
  1033. function EnumPorts(_para1:LPSTR; _para2:DWORD; _para3:PBYTE; _para4:DWORD; _para5:PDWORD;
  1034. _para6:PDWORD):BOOL;stdcall; external External_library name 'EnumPortsA';
  1035. function EnumPortsA(_para1:LPSTR; _para2:DWORD; _para3:PBYTE; _para4:DWORD; _para5:PDWORD;
  1036. _para6:PDWORD):BOOL;stdcall; external External_library name 'EnumPortsA';
  1037. function EnumPortsW(_para1:LPWSTR; _para2:DWORD; _para3:PBYTE; _para4:DWORD; _para5:PDWORD;
  1038. _para6:PDWORD):BOOL;stdcall; external External_library name 'EnumPortsW';
  1039. function EnumPrinterData(_para1:HANDLE; _para2:DWORD; _para3:LPSTR; _para4:DWORD; _para5:PDWORD;
  1040. _para6:PDWORD; _para7:PBYTE; _para8:DWORD; _para9:PDWORD):DWORD;stdcall; external External_library name 'EnumPrinterDataA';
  1041. function EnumPrinterDataA(_para1:HANDLE; _para2:DWORD; _para3:LPSTR; _para4:DWORD; _para5:PDWORD;
  1042. _para6:PDWORD; _para7:PBYTE; _para8:DWORD; _para9:PDWORD):DWORD;stdcall; external External_library name 'EnumPrinterDataA';
  1043. function EnumPrinterDataW(_para1:HANDLE; _para2:DWORD; _para3:LPWSTR; _para4:DWORD; _para5:PDWORD;
  1044. _para6:PDWORD; _para7:PBYTE; _para8:DWORD; _para9:PDWORD):DWORD;stdcall; external External_library name 'EnumPrinterDataW';
  1045. function EnumPrinterDrivers(_para1:LPSTR; _para2:LPSTR; _para3:DWORD; _para4:PBYTE; _para5:DWORD;
  1046. _para6:PDWORD; _para7:PDWORD):BOOL;stdcall; external External_library name 'EnumPrinterDriversA';
  1047. function EnumPrinterDrivers(_para1:LPWSTR; _para2:LPWSTR; _para3:DWORD; _para4:PBYTE; _para5:DWORD;
  1048. _para6:PDWORD; _para7:PDWORD):BOOL;stdcall; external External_library name 'EnumPrinterDriversW';
  1049. function EnumPrinterDriversA(_para1:LPSTR; _para2:LPSTR; _para3:DWORD; _para4:PBYTE; _para5:DWORD;
  1050. _para6:PDWORD; _para7:PDWORD):BOOL;stdcall; external External_library name 'EnumPrinterDriversA';
  1051. function EnumPrinterDriversW(_para1:LPWSTR; _para2:LPWSTR; _para3:DWORD; _para4:PBYTE; _para5:DWORD;
  1052. _para6:PDWORD; _para7:PDWORD):BOOL;stdcall; external External_library name 'EnumPrinterDriversW';
  1053. function EnumPrinters(_para1:DWORD; _para2:LPSTR; _para3:DWORD; _para4:PBYTE; _para5:DWORD;
  1054. _para6:PDWORD; _para7:PDWORD):BOOL;stdcall; external External_library name 'EnumPrintersA';
  1055. function EnumPrinters(_para1:DWORD; _para2:LPWSTR; _para3:DWORD; _para4:PBYTE; _para5:DWORD;
  1056. _para6:PDWORD; _para7:PDWORD):BOOL;stdcall; external External_library name 'EnumPrintersW';
  1057. function EnumPrintersA(_para1:DWORD; _para2:LPSTR; _para3:DWORD; _para4:PBYTE; _para5:DWORD;
  1058. _para6:PDWORD; _para7:PDWORD):BOOL;stdcall; external External_library name 'EnumPrintersA';
  1059. function EnumPrintersW(_para1:DWORD; _para2:LPWSTR; _para3:DWORD; _para4:PBYTE; _para5:DWORD;
  1060. _para6:PDWORD; _para7:PDWORD):BOOL;stdcall; external External_library name 'EnumPrintersW';
  1061. function EnumPrintProcessorDatatypes(_para1:LPSTR; _para2:LPSTR; _para3:DWORD; _para4:PBYTE; _para5:DWORD;
  1062. _para6:PDWORD; _para7:PDWORD):BOOL;stdcall; external External_library name 'EnumPrintProcessorDatatypesA';
  1063. function EnumPrintProcessorDatatypes(_para1:LPWSTR; _para2:LPWSTR; _para3:DWORD; _para4:PBYTE; _para5:DWORD;
  1064. _para6:PDWORD; _para7:PDWORD):BOOL;stdcall; external External_library name 'EnumPrintProcessorDatatypesW';
  1065. function EnumPrintProcessorDatatypesA(_para1:LPSTR; _para2:LPSTR; _para3:DWORD; _para4:PBYTE; _para5:DWORD;
  1066. _para6:PDWORD; _para7:PDWORD):BOOL;stdcall; external External_library name 'EnumPrintProcessorDatatypesA';
  1067. function EnumPrintProcessorDatatypesW(_para1:LPWSTR; _para2:LPWSTR; _para3:DWORD; _para4:PBYTE; _para5:DWORD;
  1068. _para6:PDWORD; _para7:PDWORD):BOOL;stdcall; external External_library name 'EnumPrintProcessorDatatypesW';
  1069. function EnumPrintProcessorsA(_para1:LPSTR; _para2:LPSTR; _para3:DWORD; _para4:PBYTE; _para5:DWORD;
  1070. _para6:PDWORD; _para7:PDWORD):BOOL;stdcall; external External_library name 'EnumPrintProcessorsA';
  1071. function EnumPrintProcessorsW(_para1:LPWSTR; _para2:LPWSTR; _para3:DWORD; _para4:PBYTE; _para5:DWORD;
  1072. _para6:PDWORD; _para7:PDWORD):BOOL;stdcall; external External_library name 'EnumPrintProcessorsW';
  1073. function EnumPrintProcessors(_para1:LPSTR; _para2:LPSTR; _para3:DWORD; _para4:PBYTE; _para5:DWORD;
  1074. _para6:PDWORD; _para7:PDWORD):BOOL;stdcall; external External_library name 'EnumPrintProcessorsA';
  1075. function EnumPrintProcessors(_para1:LPWSTR; _para2:LPWSTR; _para3:DWORD; _para4:PBYTE; _para5:DWORD;
  1076. _para6:PDWORD; _para7:PDWORD):BOOL;stdcall; external External_library name 'EnumPrintProcessorsW';
  1077. function FindClosePrinterChangeNotification(_para1:HANDLE):BOOL;stdcall; external External_library name 'FindClosePrinterChangeNotification';
  1078. function FindFirstPrinterChangeNotification(_para1:HANDLE; _para2:DWORD; _para3:DWORD; _para4:PVOID):HANDLE;stdcall; external External_library name 'FindFirstPrinterChangeNotification';
  1079. function FindNextPrinterChangeNotification(_para1:HANDLE; _para2:PDWORD; _para3:PVOID; _para4:PPVOID):HANDLE;stdcall; external External_library name 'FindNextPrinterChangeNotification';
  1080. function FreePrinterNotifyInfo(_para1:PPRINTER_NOTIFY_INFO):BOOL;stdcall; external External_library name 'FreePrinterNotifyInfo';
  1081. function GetDefaultPrinter(_para1:LPSTR; _para2:LPDWORD):BOOL;stdcall; external External_library name 'GetDefaultPrinterA';
  1082. function GetDefaultPrinter(_para1:LPWSTR; _para2:LPDWORD):BOOL;stdcall; external External_library name 'GetDefaultPrinterW';
  1083. function GetDefaultPrinterA(_para1:LPSTR; _para2:LPDWORD):BOOL;stdcall; external External_library name 'GetDefaultPrinterA';
  1084. function GetDefaultPrinterW(_para1:LPWSTR; _para2:LPDWORD):BOOL;stdcall; external External_library name 'GetDefaultPrinterW';
  1085. function GetForm(_para1:HANDLE; _para2:LPSTR; _para3:DWORD; _para4:PBYTE; _para5:DWORD;
  1086. _para6:PDWORD):BOOL;stdcall; external External_library name 'GetFormA';
  1087. function GetForm(_para1:HANDLE; _para2:LPWSTR; _para3:DWORD; _para4:PBYTE; _para5:DWORD;
  1088. _para6:PDWORD):BOOL;stdcall; external External_library name 'GetFormW';
  1089. function GetFormA(_para1:HANDLE; _para2:LPSTR; _para3:DWORD; _para4:PBYTE; _para5:DWORD;
  1090. _para6:PDWORD):BOOL;stdcall; external External_library name 'GetFormA';
  1091. function GetFormW(_para1:HANDLE; _para2:LPWSTR; _para3:DWORD; _para4:PBYTE; _para5:DWORD;
  1092. _para6:PDWORD):BOOL;stdcall; external External_library name 'GetFormW';
  1093. function GetJob(_para1:HANDLE; _para2:DWORD; _para3:DWORD; _para4:PBYTE; _para5:DWORD;
  1094. _para6:PDWORD):BOOL;stdcall; external External_library name 'GetJobA';
  1095. function GetJobA(_para1:HANDLE; _para2:DWORD; _para3:DWORD; _para4:PBYTE; _para5:DWORD;
  1096. _para6:PDWORD):BOOL;stdcall; external External_library name 'GetJobA';
  1097. function GetJobW(_para1:HANDLE; _para2:DWORD; _para3:DWORD; _para4:PBYTE; _para5:DWORD;
  1098. _para6:PDWORD):BOOL;stdcall; external External_library name 'GetJobW';
  1099. function GetPrinter(_para1:HANDLE; _para2:DWORD; _para3:PBYTE; _para4:DWORD; _para5:PDWORD):BOOL;stdcall; external External_library name 'GetPrinterA';
  1100. function GetPrinterA(_para1:HANDLE; _para2:DWORD; _para3:PBYTE; _para4:DWORD; _para5:PDWORD):BOOL;stdcall; external External_library name 'GetPrinterA';
  1101. function GetPrinterW(_para1:HANDLE; _para2:DWORD; _para3:PBYTE; _para4:DWORD; _para5:PDWORD):BOOL;stdcall; external External_library name 'GetPrinterW';
  1102. function GetPrinterData(_para1:HANDLE; _para2:LPSTR; _para3:PDWORD; _para4:PBYTE; _para5:DWORD;
  1103. _para6:PDWORD):DWORD;stdcall; external External_library name 'GetPrinterDataA';
  1104. function GetPrinterData(_para1:HANDLE; _para2:LPWSTR; _para3:PDWORD; _para4:PBYTE; _para5:DWORD;
  1105. _para6:PDWORD):DWORD;stdcall; external External_library name 'GetPrinterDataW';
  1106. function GetPrinterDataA(_para1:HANDLE; _para2:LPSTR; _para3:PDWORD; _para4:PBYTE; _para5:DWORD;
  1107. _para6:PDWORD):DWORD;stdcall; external External_library name 'GetPrinterDataA';
  1108. function GetPrinterDataW(_para1:HANDLE; _para2:LPWSTR; _para3:PDWORD; _para4:PBYTE; _para5:DWORD;
  1109. _para6:PDWORD):DWORD;stdcall; external External_library name 'GetPrinterDataW';
  1110. function GetPrinterDriver(_para1:HANDLE; _para2:LPSTR; _para3:DWORD; _para4:PBYTE; _para5:DWORD;
  1111. _para6:PDWORD):DWORD;stdcall; external External_library name 'GetPrinterDriverA';
  1112. function GetPrinterDriver(_para1:HANDLE; _para2:LPWSTR; _para3:DWORD; _para4:PBYTE; _para5:DWORD;
  1113. _para6:PDWORD):DWORD;stdcall; external External_library name 'GetPrinterDriverW';
  1114. function GetPrinterDriverA(_para1:HANDLE; _para2:LPSTR; _para3:DWORD; _para4:PBYTE; _para5:DWORD;
  1115. _para6:PDWORD):DWORD;stdcall; external External_library name 'GetPrinterDriverA';
  1116. function GetPrinterDriverW(_para1:HANDLE; _para2:LPWSTR; _para3:DWORD; _para4:PBYTE; _para5:DWORD;
  1117. _para6:PDWORD):DWORD;stdcall; external External_library name 'GetPrinterDriverW';
  1118. function GetPrinterDriverDirectory(_para1:LPSTR; _para2:LPSTR; _para3:DWORD; _para4:PBYTE; _para5:DWORD;
  1119. _para6:PDWORD):DWORD;stdcall; external External_library name 'GetPrinterDriverDirectoryA';
  1120. function GetPrinterDriverDirectory(_para1:LPWSTR; _para2:LPWSTR; _para3:DWORD; _para4:PBYTE; _para5:DWORD;
  1121. _para6:PDWORD):DWORD;stdcall; external External_library name 'GetPrinterDriverDirectoryW';
  1122. function GetPrinterDriverDirectoryA(_para1:LPSTR; _para2:LPSTR; _para3:DWORD; _para4:PBYTE; _para5:DWORD;
  1123. _para6:PDWORD):DWORD;stdcall; external External_library name 'GetPrinterDriverDirectoryA';
  1124. function GetPrinterDriverDirectoryW(_para1:LPWSTR; _para2:LPWSTR; _para3:DWORD; _para4:PBYTE; _para5:DWORD;
  1125. _para6:PDWORD):DWORD;stdcall; external External_library name 'GetPrinterDriverDirectoryW';
  1126. function GetPrintProcessorDirectory(_para1:LPSTR; _para2:LPSTR; _para3:DWORD; _para4:PBYTE; _para5:DWORD;
  1127. _para6:PDWORD):DWORD;stdcall; external External_library name 'GetPrintProcessorDirectoryA';
  1128. function GetPrintProcessorDirectory(_para1:LPWSTR; _para2:LPWSTR; _para3:DWORD; _para4:PBYTE; _para5:DWORD;
  1129. _para6:PDWORD):DWORD;stdcall; external External_library name 'GetPrintProcessorDirectoryW';
  1130. function GetPrintProcessorDirectoryA(_para1:LPSTR; _para2:LPSTR; _para3:DWORD; _para4:PBYTE; _para5:DWORD;
  1131. _para6:PDWORD):DWORD;stdcall; external External_library name 'GetPrintProcessorDirectoryA';
  1132. function GetPrintProcessorDirectoryW(_para1:LPWSTR; _para2:LPWSTR; _para3:DWORD; _para4:PBYTE; _para5:DWORD;
  1133. _para6:PDWORD):DWORD;stdcall; external External_library name 'GetPrintProcessorDirectoryW';
  1134. function OpenPrinter(_para1:LPSTR; _para2:PHANDLE; _para3:LPPRINTER_DEFAULTSA):BOOL;stdcall; external External_library name 'OpenPrinterA';
  1135. function OpenPrinter(_para1:LPWSTR; _para2:PHANDLE; _para3:LPPRINTER_DEFAULTSW):BOOL;stdcall; external External_library name 'OpenPrinterW';
  1136. function OpenPrinterA(_para1:LPSTR; _para2:PHANDLE; _para3:LPPRINTER_DEFAULTSA):BOOL;stdcall; external External_library name 'OpenPrinterA';
  1137. function OpenPrinterW(_para1:LPWSTR; _para2:PHANDLE; _para3:LPPRINTER_DEFAULTSW):BOOL;stdcall; external External_library name 'OpenPrinterW';
  1138. function PrinterMessageBox(_para1:HANDLE; _para2:DWORD; _para3:HWND; _para4:LPSTR; _para5:LPSTR;
  1139. _para6:DWORD):DWORD;stdcall; external External_library name 'PrinterMessageBoxA';
  1140. function PrinterMessageBox(_para1:HANDLE; _para2:DWORD; _para3:HWND; _para4:LPWSTR; _para5:LPWSTR;
  1141. _para6:DWORD):DWORD;stdcall; external External_library name 'PrinterMessageBoxW';
  1142. function PrinterMessageBoxA(_para1:HANDLE; _para2:DWORD; _para3:HWND; _para4:LPSTR; _para5:LPSTR;
  1143. _para6:DWORD):DWORD;stdcall; external External_library name 'PrinterMessageBoxA';
  1144. function PrinterMessageBoxW(_para1:HANDLE; _para2:DWORD; _para3:HWND; _para4:LPWSTR; _para5:LPWSTR;
  1145. _para6:DWORD):DWORD;stdcall; external External_library name 'PrinterMessageBoxW';
  1146. function PrinterProperties(_para1:HWND; _para2:HANDLE):BOOL;stdcall; external External_library name 'PrinterProperties';
  1147. function ReadPrinter(_para1:HANDLE; _para2:PVOID; _para3:DWORD; _para4:PDWORD):BOOL;stdcall; external External_library name 'ReadPrinter';
  1148. function ResetPrinter(_para1:HANDLE; _para2:LPPRINTER_DEFAULTSA):BOOL;stdcall; external External_library name 'ResetPrinterA';
  1149. function ResetPrinter(_para1:HANDLE; _para2:LPPRINTER_DEFAULTSW):BOOL;stdcall; external External_library name 'ResetPrinterW';
  1150. function ResetPrinterA(_para1:HANDLE; _para2:LPPRINTER_DEFAULTSA):BOOL;stdcall; external External_library name 'ResetPrinterA';
  1151. function ResetPrinterW(_para1:HANDLE; _para2:LPPRINTER_DEFAULTSW):BOOL;stdcall; external External_library name 'ResetPrinterW';
  1152. function ScheduleJob(_para1:HANDLE; _para2:DWORD):BOOL;stdcall; external External_library name 'ScheduleJob';
  1153. function SetForm(_para1:HANDLE; _para2:LPSTR; _para3:DWORD; _para4:PBYTE):BOOL;stdcall; external External_library name 'SetFormA';
  1154. function SetForm(_para1:HANDLE; _para2:LPWSTR; _para3:DWORD; _para4:PBYTE):BOOL;stdcall; external External_library name 'SetFormW';
  1155. function SetFormA(_para1:HANDLE; _para2:LPSTR; _para3:DWORD; _para4:PBYTE):BOOL;stdcall; external External_library name 'SetFormA';
  1156. function SetFormW(_para1:HANDLE; _para2:LPWSTR; _para3:DWORD; _para4:PBYTE):BOOL;stdcall; external External_library name 'SetFormW';
  1157. function SetJob(_para1:HANDLE; _para2:DWORD; _para3:DWORD; _para4:PBYTE; _para5:DWORD):BOOL;stdcall; external External_library name 'SetJobA';
  1158. function SetJobA(_para1:HANDLE; _para2:DWORD; _para3:DWORD; _para4:PBYTE; _para5:DWORD):BOOL;stdcall; external External_library name 'SetJobA';
  1159. function SetJobW(_para1:HANDLE; _para2:DWORD; _para3:DWORD; _para4:PBYTE; _para5:DWORD):BOOL;stdcall; external External_library name 'SetJobW';
  1160. function SetPrinter(_para1:HANDLE; _para2:DWORD; _para3:PBYTE; _para4:DWORD):BOOL;stdcall; external External_library name 'SetPrinterA';
  1161. function SetPrinterA(_para1:HANDLE; _para2:DWORD; _para3:PBYTE; _para4:DWORD):BOOL;stdcall; external External_library name 'SetPrinterA';
  1162. function SetPrinterW(_para1:HANDLE; _para2:DWORD; _para3:PBYTE; _para4:DWORD):BOOL;stdcall; external External_library name 'SetPrinterW';
  1163. function SetPrinterData(_para1:HANDLE; _para2:LPSTR; _para3:DWORD; _para4:PBYTE; _para5:DWORD):BOOL;stdcall; external External_library name 'SetPrinterDataA';
  1164. function SetPrinterDataA(_para1:HANDLE; _para2:LPSTR; _para3:DWORD; _para4:PBYTE; _para5:DWORD):BOOL;stdcall; external External_library name 'SetPrinterDataA';
  1165. function SetPrinterDataW(_para1:HANDLE; _para2:LPWSTR; _para3:DWORD; _para4:PBYTE; _para5:DWORD):BOOL;stdcall; external External_library name 'SetPrinterDataW';
  1166. function StartDocPrinter(_para1:HANDLE; _para2:DWORD; _para3:PBYTE):DWORD;stdcall; external External_library name 'StartDocPrinterA';
  1167. function StartDocPrinterA(_para1:HANDLE; _para2:DWORD; _para3:PBYTE):DWORD;stdcall; external External_library name 'StartDocPrinterA';
  1168. function StartDocPrinterW(_para1:HANDLE; _para2:DWORD; _para3:PBYTE):DWORD;stdcall; external External_library name 'StartDocPrinterW';
  1169. function StartPagePrinter(_para1:HANDLE):BOOL;stdcall; external External_library name 'StartPagePrinter';
  1170. function WaitForPrinterChange(_para1:HANDLE; _para2:DWORD):DWORD;stdcall; external External_library name 'WaitForPrinterChange';
  1171. function WritePrinter(_para1:HANDLE; _para2:PVOID; _para3:DWORD; _para4:PDWORD):BOOL;stdcall; external External_library name 'WritePrinter';
  1172. type
  1173. JOB_INFO_1 = JOB_INFO_1A;
  1174. PJOB_INFO_1 = ^JOB_INFO_1;
  1175. LPJOB_INFO_1 = ^JOB_INFO_1;
  1176. JOB_INFO_2 = JOB_INFO_2A;
  1177. PJOB_INFO_2 = ^JOB_INFO_2;
  1178. LPJOB_INFO_2 = ^JOB_INFO_2;
  1179. ADDJOB_INFO_1 = ADDJOB_INFO_1A;
  1180. PADDJOB_INFO_1 = ^ADDJOB_INFO_1;
  1181. LPADDJOB_INFO_1 = ^ADDJOB_INFO_1;
  1182. DATATYPES_INFO_1 = DATATYPES_INFO_1A;
  1183. PDATATYPES_INFO_1 = ^DATATYPES_INFO_1;
  1184. LPDATATYPES_INFO_1 = ^DATATYPES_INFO_1;
  1185. MONITOR_INFO_1 = MONITOR_INFO_1A;
  1186. PMONITOR_INFO_1 = ^MONITOR_INFO_1;
  1187. LPMONITOR_INFO_1 = ^MONITOR_INFO_1;
  1188. MONITOR_INFO_2 = MONITOR_INFO_2A;
  1189. PMONITOR_INFO_2 = ^MONITOR_INFO_2;
  1190. LPMONITOR_INFO_2 = ^MONITOR_INFO_2;
  1191. DOC_INFO_1 = DOC_INFO_1A;
  1192. PDOC_INFO_1 = ^DOC_INFO_1;
  1193. LPDOC_INFO_1 = ^DOC_INFO_1;
  1194. DOC_INFO_2 = DOC_INFO_2A;
  1195. PDOC_INFO_2 = ^DOC_INFO_2;
  1196. LPDOC_INFO_2 = ^DOC_INFO_2;
  1197. PORT_INFO_1 = PORT_INFO_1A;
  1198. PPORT_INFO_1 = ^PORT_INFO_1;
  1199. LPPORT_INFO_1 = ^PORT_INFO_1;
  1200. PORT_INFO_2 = PORT_INFO_2A;
  1201. PPORT_INFO_2 = ^PORT_INFO_2;
  1202. LPPORT_INFO_2 = ^PORT_INFO_2;
  1203. PORT_INFO_3 = PORT_INFO_3A;
  1204. PPORT_INFO_3 = ^PORT_INFO_3;
  1205. LPPORT_INFO_3 = ^PORT_INFO_3;
  1206. DRIVER_INFO_1 = DRIVER_INFO_1A;
  1207. PDRIVER_INFO_1 = ^DRIVER_INFO_1;
  1208. LPDRIVER_INFO_1 = ^DRIVER_INFO_1;
  1209. DRIVER_INFO_2 = DRIVER_INFO_2A;
  1210. PDRIVER_INFO_2 = ^DRIVER_INFO_2;
  1211. LPDRIVER_INFO_2 = ^DRIVER_INFO_2;
  1212. DRIVER_INFO_3 = DRIVER_INFO_3A;
  1213. PDRIVER_INFO_3 = ^DRIVER_INFO_3;
  1214. LPDRIVER_INFO_3 = ^DRIVER_INFO_3;
  1215. DRIVER_INFO_4 = DRIVER_INFO_4A;
  1216. PDRIVER_INFO_4 = ^DRIVER_INFO_4;
  1217. LPDRIVER_INFO_4 = ^DRIVER_INFO_4;
  1218. DRIVER_INFO_5 = DRIVER_INFO_5A;
  1219. PDRIVER_INFO_5 = ^DRIVER_INFO_5;
  1220. LPDRIVER_INFO_5 = ^DRIVER_INFO_5;
  1221. DRIVER_INFO_6 = DRIVER_INFO_6A;
  1222. PDRIVER_INFO_6 = ^DRIVER_INFO_6;
  1223. LPDRIVER_INFO_6 = ^DRIVER_INFO_6;
  1224. PRINTER_ENUM_VALUES = PRINTER_ENUM_VALUESA;
  1225. PPRINTER_ENUM_VALUES = ^PRINTER_ENUM_VALUES;
  1226. LPRINTER_ENUM_VALUES = ^PRINTER_ENUM_VALUES;
  1227. PRINTER_INFO_1 = PRINTER_INFO_1A;
  1228. PPRINTER_INFO_1 = ^PRINTER_INFO_1;
  1229. LPPRINTER_INFO_1 = ^PRINTER_INFO_1;
  1230. PRINTER_INFO_2 = PRINTER_INFO_2A;
  1231. PPRINTER_INFO_2 = ^PRINTER_INFO_2;
  1232. LPPRINTER_INFO_2 = ^PRINTER_INFO_2;
  1233. PRINTER_INFO_4 = PRINTER_INFO_4A;
  1234. PPRINTER_INFO_4 = ^PRINTER_INFO_4;
  1235. LPPRINTER_INFO_4 = ^PRINTER_INFO_4;
  1236. PRINTER_INFO_5 = PRINTER_INFO_5A;
  1237. PPRINTER_INFO_5 = ^PRINTER_INFO_5;
  1238. LPPRINTER_INFO_5 = ^PRINTER_INFO_5;
  1239. PRINTER_INFO_7 = PRINTER_INFO_7A;
  1240. PPRINTER_INFO_7 = ^PRINTER_INFO_7;
  1241. LPPRINTER_INFO_7 = ^PRINTER_INFO_7;
  1242. PRINTPROCESSOR_INFO_1 = PRINTPROCESSOR_INFO_1A;
  1243. PPRINTPROCESSOR_INFO_1 = ^PRINTPROCESSOR_INFO_1;
  1244. LPPRINTPROCESSOR_INFO_1 = ^PRINTPROCESSOR_INFO_1;
  1245. FORM_INFO_1 = FORM_INFO_1A;
  1246. PFORM_INFO_1 = ^FORM_INFO_1;
  1247. LPFORM_INFO_1 = ^FORM_INFO_1;
  1248. PRINTER_DEFAULTS = PRINTER_DEFAULTSA;
  1249. PPRINTER_DEFAULTS = ^PRINTER_DEFAULTS;
  1250. LPPRINTER_DEFAULTS = ^PRINTER_DEFAULTS;
  1251. PROVIDOR_INFO_1 = PROVIDOR_INFO_1A;
  1252. PPROVIDOR_INFO_1 = ^PROVIDOR_INFO_1;
  1253. LPROVIDOR_INFO_1 = ^PROVIDOR_INFO_1;
  1254. PROVIDOR_INFO_2 = PROVIDOR_INFO_2A;
  1255. PPROVIDOR_INFO_2 = ^PROVIDOR_INFO_2;
  1256. LPROVIDOR_INFO_2 = ^PROVIDOR_INFO_2;
  1257. implementation
  1258. end.