winspool.pp 61 KB

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