jwalmwksta.pas 34 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394959697989910010110210310410510610710810911011111211311411511611711811912012112212312412512612712812913013113213313413513613713813914014114214314414514614714814915015115215315415515615715815916016116216316416516616716816917017117217317417517617717817918018118218318418518618718818919019119219319419519619719819920020120220320420520620720820921021121221321421521621721821922022122222322422522622722822923023123223323423523623723823924024124224324424524624724824925025125225325425525625725825926026126226326426526626726826927027127227327427527627727827928028128228328428528628728828929029129229329429529629729829930030130230330430530630730830931031131231331431531631731831932032132232332432532632732832933033133233333433533633733833934034134234334434534634734834935035135235335435535635735835936036136236336436536636736836937037137237337437537637737837938038138238338438538638738838939039139239339439539639739839940040140240340440540640740840941041141241341441541641741841942042142242342442542642742842943043143243343443543643743843944044144244344444544644744844945045145245345445545645745845946046146246346446546646746846947047147247347447547647747847948048148248348448548648748848949049149249349449549649749849950050150250350450550650750850951051151251351451551651751851952052152252352452552652752852953053153253353453553653753853954054154254354454554654754854955055155255355455555655755855956056156256356456556656756856957057157257357457557657757857958058158258358458558658758858959059159259359459559659759859960060160260360460560660760860961061161261361461561661761861962062162262362462562662762862963063163263363463563663763863964064164264364464564664764864965065165265365465565665765865966066166266366466566666766866967067167267367467567667767867968068168268368468568668768868969069169269369469569669769869970070170270370470570670770870971071171271371471571671771871972072172272372472572672772872973073173273373473573673773873974074174274374474574674774874975075175275375475575675775875976076176276376476576676776876977077177277377477577677777877978078178278378478578678778878979079179279379479579679779879980080180280380480580680780880981081181281381481581681781881982082182282382482582682782882983083183283383483583683783883984084184284384484584684784884985085185285385485585685785885986086186286386486586686786886987087187287387487587687787887988088188288388488588688788888989089189289389489589689789889990090190290390490590690790890991091191291391491591691791891992092192292392492592692792892993093193293393493593693793893994094194294394494594694794894995095195295395495595695795895996096196296396496596696796896997097197297397497597697797897998098198298398498598698798898999099199299399499599699799899910001001100210031004100510061007100810091010101110121013101410151016101710181019102010211022102310241025102610271028102910301031103210331034103510361037103810391040104110421043104410451046104710481049105010511052105310541055105610571058105910601061106210631064106510661067106810691070107110721073107410751076107710781079108010811082108310841085108610871088108910901091
  1. {******************************************************************************}
  2. { }
  3. { Lan Manager Workstation API interface Unit for Object Pascal }
  4. { }
  5. { Portions created by Microsoft are Copyright (C) 1995-2001 Microsoft }
  6. { Corporation. All Rights Reserved. }
  7. { }
  8. { The original file is: lmwksta.h, released November 2001. The original Pascal }
  9. { code is: LmWkSta.pas, released Februari 2002. The initial developer of the }
  10. { Pascal code is Marcel van Brakel (brakelm att chello dott nl). }
  11. { }
  12. { Portions created by Marcel van Brakel are Copyright (C) 1999-2001 }
  13. { Marcel van Brakel. All Rights Reserved. }
  14. { }
  15. { Obtained through: Joint Endeavour of Delphi Innovators (Project JEDI) }
  16. { }
  17. { You may retrieve the latest version of this file at the Project JEDI }
  18. { APILIB home page, located at http://jedi-apilib.sourceforge.net }
  19. { }
  20. { The contents of this file are used with permission, subject to the Mozilla }
  21. { Public License Version 1.1 (the "License"); you may not use this file except }
  22. { in compliance with the License. You may obtain a copy of the License at }
  23. { http://www.mozilla.org/MPL/MPL-1.1.html }
  24. { }
  25. { Software distributed under the License is distributed on an "AS IS" basis, }
  26. { WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License for }
  27. { the specific language governing rights and limitations under the License. }
  28. { }
  29. { Alternatively, the contents of this file may be used under the terms of the }
  30. { GNU Lesser General Public License (the "LGPL License"), in which case the }
  31. { provisions of the LGPL License are applicable instead of those above. }
  32. { If you wish to allow use of your version of this file only under the terms }
  33. { of the LGPL License and not to allow others to use your version of this file }
  34. { under the MPL, indicate your decision by deleting the provisions above and }
  35. { replace them with the notice and other provisions required by the LGPL }
  36. { License. If you do not delete the provisions above, a recipient may use }
  37. { your version of this file under either the MPL or the LGPL License. }
  38. { }
  39. { For more information about the LGPL: http://www.gnu.org/copyleft/lesser.html }
  40. { }
  41. {******************************************************************************}
  42. // $Id: JwaLmWkSta.pas,v 1.11 2007/09/05 11:58:51 dezipaitor Exp $
  43. {$IFNDEF JWA_OMIT_SECTIONS_LM}
  44. unit JwaLmWkSta;
  45. {$WEAKPACKAGEUNIT}
  46. {$ENDIF JWA_OMIT_SECTIONS_LM}
  47. {$HPPEMIT ''}
  48. {$HPPEMIT '#include "lmwksta.h"'}
  49. {$HPPEMIT ''}
  50. {$IFNDEF JWA_OMIT_SECTIONS_LM}
  51. {$I jediapilib.inc}
  52. interface
  53. uses
  54. JwaLmCons, JwaWinType;
  55. {$ENDIF JWA_OMIT_SECTIONS_LM}
  56. {$IFNDEF JWA_IMPLEMENTATIONSECTION}
  57. //
  58. // Function Prototypes
  59. //
  60. function NetWkstaGetInfo(servername: LMSTR; level: DWORD; var bufptr: LPBYTE): NET_API_STATUS; stdcall;
  61. {$EXTERNALSYM NetWkstaGetInfo}
  62. function NetWkstaSetInfo(servername: LMSTR; level: DWORD; buffer: LPBYTE; parm_err: LPDWORD): NET_API_STATUS; stdcall;
  63. {$EXTERNALSYM NetWkstaSetInfo}
  64. function NetWkstaUserGetInfo(reserved: LMSTR; level: DWORD; var bufptr: LPBYTE): NET_API_STATUS; stdcall;
  65. {$EXTERNALSYM NetWkstaUserGetInfo}
  66. function NetWkstaUserSetInfo(reserved: LMSTR; level: DWORD; buf: LPBYTE; parm_err: LPDWORD): NET_API_STATUS; stdcall;
  67. {$EXTERNALSYM NetWkstaUserSetInfo}
  68. function NetWkstaUserEnum(servername: LMSTR; level: DWORD; var bufptr: LPBYTE; prefmaxlen: DWORD; entriesread: LPDWORD; totalentries: LPDWORD; resumehandle: LPDWORD): NET_API_STATUS; stdcall;
  69. {$EXTERNALSYM NetWkstaUserEnum}
  70. function NetWkstaTransportAdd(servername: LMSTR; level: DWORD; buf: LPBYTE; parm_err: LPDWORD): NET_API_STATUS; stdcall;
  71. {$EXTERNALSYM NetWkstaTransportAdd}
  72. function NetWkstaTransportDel(servername: LMSTR; transportname: LMSTR; ucond: DWORD): NET_API_STATUS; stdcall;
  73. {$EXTERNALSYM NetWkstaTransportDel}
  74. function NetWkstaTransportEnum(servername: LMSTR; level: DWORD; var bufptr: LPBYTE; prefmaxlen: DWORD; entriesread: LPDWORD; totalentries: LPDWORD; resumehandle: LPDWORD): NET_API_STATUS; stdcall;
  75. {$EXTERNALSYM NetWkstaTransportEnum}
  76. //
  77. // Data Structures
  78. //
  79. //
  80. // NetWkstaGetInfo and NetWkstaSetInfo
  81. //
  82. //
  83. // NetWkstaGetInfo only. System information - guest access
  84. //
  85. type
  86. LPWKSTA_INFO_100 = ^WKSTA_INFO_100;
  87. {$EXTERNALSYM LPWKSTA_INFO_100}
  88. PWKSTA_INFO_100 = ^WKSTA_INFO_100;
  89. {$EXTERNALSYM PWKSTA_INFO_100}
  90. _WKSTA_INFO_100 = record
  91. wki100_platform_id: DWORD;
  92. wki100_computername: LMSTR;
  93. wki100_langroup: LMSTR;
  94. wki100_ver_major: DWORD;
  95. wki100_ver_minor: DWORD;
  96. end;
  97. {$EXTERNALSYM _WKSTA_INFO_100}
  98. WKSTA_INFO_100 = _WKSTA_INFO_100;
  99. {$EXTERNALSYM WKSTA_INFO_100}
  100. TWkstaInfo100 = WKSTA_INFO_100;
  101. PWkstaInfo100 = PWKSTA_INFO_100;
  102. //
  103. // NetWkstaGetInfo only. System information - user access
  104. //
  105. LPWKSTA_INFO_101 = ^WKSTA_INFO_101;
  106. {$EXTERNALSYM LPWKSTA_INFO_101}
  107. PWKSTA_INFO_101 = ^WKSTA_INFO_101;
  108. {$EXTERNALSYM PWKSTA_INFO_101}
  109. _WKSTA_INFO_101 = record
  110. wki101_platform_id: DWORD;
  111. wki101_computername: LMSTR;
  112. wki101_langroup: LMSTR;
  113. wki101_ver_major: DWORD;
  114. wki101_ver_minor: DWORD;
  115. wki101_lanroot: LMSTR;
  116. end;
  117. {$EXTERNALSYM _WKSTA_INFO_101}
  118. WKSTA_INFO_101 = _WKSTA_INFO_101;
  119. {$EXTERNALSYM WKSTA_INFO_101}
  120. TWkstaInfo101 = WKSTA_INFO_101;
  121. PWkstaInfo101 = PWKSTA_INFO_101;
  122. //
  123. // NetWkstaGetInfo only. System information - admin or operator access
  124. //
  125. LPWKSTA_INFO_102 = ^WKSTA_INFO_102;
  126. {$EXTERNALSYM LPWKSTA_INFO_102}
  127. PWKSTA_INFO_102 = ^WKSTA_INFO_102;
  128. {$EXTERNALSYM PWKSTA_INFO_102}
  129. _WKSTA_INFO_102 = record
  130. wki102_platform_id: DWORD;
  131. wki102_computername: LMSTR;
  132. wki102_langroup: LMSTR;
  133. wki102_ver_major: DWORD;
  134. wki102_ver_minor: DWORD;
  135. wki102_lanroot: LMSTR;
  136. wki102_logged_on_users: DWORD;
  137. end;
  138. {$EXTERNALSYM _WKSTA_INFO_102}
  139. WKSTA_INFO_102 = _WKSTA_INFO_102;
  140. {$EXTERNALSYM WKSTA_INFO_102}
  141. TWkstaInfo102 = WKSTA_INFO_102;
  142. PWkstaInfo102 = PWKSTA_INFO_102;
  143. //
  144. // Down-level NetWkstaGetInfo and NetWkstaSetInfo.
  145. //
  146. // DOS specific workstation information -
  147. // admin or domain operator access
  148. //
  149. LPWKSTA_INFO_302 = ^WKSTA_INFO_302;
  150. {$EXTERNALSYM LPWKSTA_INFO_302}
  151. PWKSTA_INFO_302 = ^WKSTA_INFO_302;
  152. {$EXTERNALSYM PWKSTA_INFO_302}
  153. _WKSTA_INFO_302 = record
  154. wki302_char_wait: DWORD;
  155. wki302_collection_time: DWORD;
  156. wki302_maximum_collection_count: DWORD;
  157. wki302_keep_conn: DWORD;
  158. wki302_keep_search: DWORD;
  159. wki302_max_cmds: DWORD;
  160. wki302_num_work_buf: DWORD;
  161. wki302_siz_work_buf: DWORD;
  162. wki302_max_wrk_cache: DWORD;
  163. wki302_sess_timeout: DWORD;
  164. wki302_siz_error: DWORD;
  165. wki302_num_alerts: DWORD;
  166. wki302_num_services: DWORD;
  167. wki302_errlog_sz: DWORD;
  168. wki302_print_buf_time: DWORD;
  169. wki302_num_char_buf: DWORD;
  170. wki302_siz_char_buf: DWORD;
  171. wki302_wrk_heuristics: LMSTR;
  172. wki302_mailslots: DWORD;
  173. wki302_num_dgram_buf: DWORD;
  174. end;
  175. {$EXTERNALSYM _WKSTA_INFO_302}
  176. WKSTA_INFO_302 = _WKSTA_INFO_302;
  177. {$EXTERNALSYM WKSTA_INFO_302}
  178. TWkstaInfo302 = WKSTA_INFO_302;
  179. PWkstaInfo302 = PWKSTA_INFO_302;
  180. //
  181. // Down-level NetWkstaGetInfo and NetWkstaSetInfo
  182. //
  183. // OS/2 specific workstation information -
  184. // admin or domain operator access
  185. //
  186. LPWKSTA_INFO_402 = ^WKSTA_INFO_402;
  187. {$EXTERNALSYM LPWKSTA_INFO_402}
  188. PWKSTA_INFO_402 = ^WKSTA_INFO_402;
  189. {$EXTERNALSYM PWKSTA_INFO_402}
  190. _WKSTA_INFO_402 = record
  191. wki402_char_wait: DWORD;
  192. wki402_collection_time: DWORD;
  193. wki402_maximum_collection_count: DWORD;
  194. wki402_keep_conn: DWORD;
  195. wki402_keep_search: DWORD;
  196. wki402_max_cmds: DWORD;
  197. wki402_num_work_buf: DWORD;
  198. wki402_siz_work_buf: DWORD;
  199. wki402_max_wrk_cache: DWORD;
  200. wki402_sess_timeout: DWORD;
  201. wki402_siz_error: DWORD;
  202. wki402_num_alerts: DWORD;
  203. wki402_num_services: DWORD;
  204. wki402_errlog_sz: DWORD;
  205. wki402_print_buf_time: DWORD;
  206. wki402_num_char_buf: DWORD;
  207. wki402_siz_char_buf: DWORD;
  208. wki402_wrk_heuristics: LMSTR;
  209. wki402_mailslots: DWORD;
  210. wki402_num_dgram_buf: DWORD;
  211. wki402_max_threads: DWORD;
  212. end;
  213. {$EXTERNALSYM _WKSTA_INFO_402}
  214. WKSTA_INFO_402 = _WKSTA_INFO_402;
  215. {$EXTERNALSYM WKSTA_INFO_402}
  216. TWkstaInfo402 = WKSTA_INFO_402;
  217. PWkstaInfo402 = PWKSTA_INFO_402;
  218. //
  219. // Same-level NetWkstaGetInfo and NetWkstaSetInfo.
  220. //
  221. // NT specific workstation information -
  222. // admin or domain operator access
  223. //
  224. LPWKSTA_INFO_502 = ^WKSTA_INFO_502;
  225. {$EXTERNALSYM LPWKSTA_INFO_502}
  226. PWKSTA_INFO_502 = ^WKSTA_INFO_502;
  227. {$EXTERNALSYM PWKSTA_INFO_502}
  228. _WKSTA_INFO_502 = record
  229. wki502_char_wait: DWORD;
  230. wki502_collection_time: DWORD;
  231. wki502_maximum_collection_count: DWORD;
  232. wki502_keep_conn: DWORD;
  233. wki502_max_cmds: DWORD;
  234. wki502_sess_timeout: DWORD;
  235. wki502_siz_char_buf: DWORD;
  236. wki502_max_threads: DWORD;
  237. wki502_lock_quota: DWORD;
  238. wki502_lock_increment: DWORD;
  239. wki502_lock_maximum: DWORD;
  240. wki502_pipe_increment: DWORD;
  241. wki502_pipe_maximum: DWORD;
  242. wki502_cache_file_timeout: DWORD;
  243. wki502_dormant_file_limit: DWORD;
  244. wki502_read_ahead_throughput: DWORD;
  245. wki502_num_mailslot_buffers: DWORD;
  246. wki502_num_srv_announce_buffers: DWORD;
  247. wki502_max_illegal_datagram_events: DWORD;
  248. wki502_illegal_datagram_event_reset_frequency: DWORD;
  249. wki502_log_election_packets: BOOL;
  250. wki502_use_opportunistic_locking: BOOL;
  251. wki502_use_unlock_behind: BOOL;
  252. wki502_use_close_behind: BOOL;
  253. wki502_buf_named_pipes: BOOL;
  254. wki502_use_lock_read_unlock: BOOL;
  255. wki502_utilize_nt_caching: BOOL;
  256. wki502_use_raw_read: BOOL;
  257. wki502_use_raw_write: BOOL;
  258. wki502_use_write_raw_data: BOOL;
  259. wki502_use_encryption: BOOL;
  260. wki502_buf_files_deny_write: BOOL;
  261. wki502_buf_read_only_files: BOOL;
  262. wki502_force_core_create_mode: BOOL;
  263. wki502_use_512_byte_max_transfer: BOOL;
  264. end;
  265. {$EXTERNALSYM _WKSTA_INFO_502}
  266. WKSTA_INFO_502 = _WKSTA_INFO_502;
  267. {$EXTERNALSYM WKSTA_INFO_502}
  268. TWkstaInfo502 = WKSTA_INFO_502;
  269. PWkstaInfo502 = PWKSTA_INFO_502;
  270. //
  271. // The following info-levels are only valid for NetWkstaSetInfo
  272. //
  273. //
  274. // The following levels are supported on down-level systems (LAN Man 2.x)
  275. // as well as NT systems:
  276. //
  277. LPWKSTA_INFO_1010 = ^WKSTA_INFO_1010;
  278. {$EXTERNALSYM LPWKSTA_INFO_1010}
  279. PWKSTA_INFO_1010 = ^WKSTA_INFO_1010;
  280. {$EXTERNALSYM PWKSTA_INFO_1010}
  281. _WKSTA_INFO_1010 = record
  282. wki1010_char_wait: DWORD;
  283. end;
  284. {$EXTERNALSYM _WKSTA_INFO_1010}
  285. WKSTA_INFO_1010 = _WKSTA_INFO_1010;
  286. {$EXTERNALSYM WKSTA_INFO_1010}
  287. TWkstaInfo1010 = WKSTA_INFO_1010;
  288. PWkstaInfo1010 = PWKSTA_INFO_1010;
  289. LPWKSTA_INFO_1011 = ^WKSTA_INFO_1011;
  290. {$EXTERNALSYM LPWKSTA_INFO_1011}
  291. PWKSTA_INFO_1011 = ^WKSTA_INFO_1011;
  292. {$EXTERNALSYM PWKSTA_INFO_1011}
  293. _WKSTA_INFO_1011 = record
  294. wki1011_collection_time: DWORD;
  295. end;
  296. {$EXTERNALSYM _WKSTA_INFO_1011}
  297. WKSTA_INFO_1011 = _WKSTA_INFO_1011;
  298. {$EXTERNALSYM WKSTA_INFO_1011}
  299. TWkstaInfo1011 = WKSTA_INFO_1011;
  300. PWkstaInfo1011 = PWKSTA_INFO_1011;
  301. LPWKSTA_INFO_1012 = ^WKSTA_INFO_1012;
  302. {$EXTERNALSYM LPWKSTA_INFO_1012}
  303. PWKSTA_INFO_1012 = ^WKSTA_INFO_1012;
  304. {$EXTERNALSYM PWKSTA_INFO_1012}
  305. _WKSTA_INFO_1012 = record
  306. wki1012_maximum_collection_count: DWORD;
  307. end;
  308. {$EXTERNALSYM _WKSTA_INFO_1012}
  309. WKSTA_INFO_1012 = _WKSTA_INFO_1012;
  310. {$EXTERNALSYM WKSTA_INFO_1012}
  311. TWkstaInfo1012 = WKSTA_INFO_1012;
  312. PWkstaInfo1012 = PWKSTA_INFO_1012;
  313. //
  314. // The following level are supported on down-level systems (LAN Man 2.x)
  315. // only:
  316. //
  317. LPWKSTA_INFO_1027 = ^WKSTA_INFO_1027;
  318. {$EXTERNALSYM LPWKSTA_INFO_1027}
  319. PWKSTA_INFO_1027 = ^WKSTA_INFO_1027;
  320. {$EXTERNALSYM PWKSTA_INFO_1027}
  321. _WKSTA_INFO_1027 = record
  322. wki1027_errlog_sz: DWORD;
  323. end;
  324. {$EXTERNALSYM _WKSTA_INFO_1027}
  325. WKSTA_INFO_1027 = _WKSTA_INFO_1027;
  326. {$EXTERNALSYM WKSTA_INFO_1027}
  327. TWkstaInfo1027 = WKSTA_INFO_1027;
  328. PWkstaInfo1027 = PWKSTA_INFO_1027;
  329. LPWKSTA_INFO_1028 = ^WKSTA_INFO_1028;
  330. {$EXTERNALSYM LPWKSTA_INFO_1028}
  331. PWKSTA_INFO_1028 = ^WKSTA_INFO_1028;
  332. {$EXTERNALSYM PWKSTA_INFO_1028}
  333. _WKSTA_INFO_1028 = record
  334. wki1028_print_buf_time: DWORD;
  335. end;
  336. {$EXTERNALSYM _WKSTA_INFO_1028}
  337. WKSTA_INFO_1028 = _WKSTA_INFO_1028;
  338. {$EXTERNALSYM WKSTA_INFO_1028}
  339. TWkstaInfo1028 = WKSTA_INFO_1028;
  340. PWkstaInfo1028 = PWKSTA_INFO_1028;
  341. LPWKSTA_INFO_1032 = ^WKSTA_INFO_1032;
  342. {$EXTERNALSYM LPWKSTA_INFO_1032}
  343. PWKSTA_INFO_1032 = ^WKSTA_INFO_1032;
  344. {$EXTERNALSYM PWKSTA_INFO_1032}
  345. _WKSTA_INFO_1032 = record
  346. wki1032_wrk_heuristics: DWORD;
  347. end;
  348. {$EXTERNALSYM _WKSTA_INFO_1032}
  349. WKSTA_INFO_1032 = _WKSTA_INFO_1032;
  350. {$EXTERNALSYM WKSTA_INFO_1032}
  351. TWkstaInfo1032 = WKSTA_INFO_1032;
  352. PWkstaInfo1032 = PWKSTA_INFO_1032;
  353. //
  354. // The following levels are settable on NT systems, and have no
  355. // effect on down-level systems (i.e. LANMan 2.x) since these
  356. // fields cannot be set on them:
  357. //
  358. LPWKSTA_INFO_1013 = ^WKSTA_INFO_1013;
  359. {$EXTERNALSYM LPWKSTA_INFO_1013}
  360. PWKSTA_INFO_1013 = ^WKSTA_INFO_1013;
  361. {$EXTERNALSYM PWKSTA_INFO_1013}
  362. _WKSTA_INFO_1013 = record
  363. wki1013_keep_conn: DWORD;
  364. end;
  365. {$EXTERNALSYM _WKSTA_INFO_1013}
  366. WKSTA_INFO_1013 = _WKSTA_INFO_1013;
  367. {$EXTERNALSYM WKSTA_INFO_1013}
  368. TWkstaInfo1013 = WKSTA_INFO_1013;
  369. PWkstaInfo1013 = PWKSTA_INFO_1013;
  370. LPWKSTA_INFO_1018 = ^WKSTA_INFO_1018;
  371. {$EXTERNALSYM LPWKSTA_INFO_1018}
  372. PWKSTA_INFO_1018 = ^WKSTA_INFO_1018;
  373. {$EXTERNALSYM PWKSTA_INFO_1018}
  374. _WKSTA_INFO_1018 = record
  375. wki1018_sess_timeout: DWORD;
  376. end;
  377. {$EXTERNALSYM _WKSTA_INFO_1018}
  378. WKSTA_INFO_1018 = _WKSTA_INFO_1018;
  379. {$EXTERNALSYM WKSTA_INFO_1018}
  380. TWkstaInfo1018 = WKSTA_INFO_1018;
  381. PWkstaInfo1018 = PWKSTA_INFO_1018;
  382. LPWKSTA_INFO_1023 = ^WKSTA_INFO_1023;
  383. {$EXTERNALSYM LPWKSTA_INFO_1023}
  384. PWKSTA_INFO_1023 = ^WKSTA_INFO_1023;
  385. {$EXTERNALSYM PWKSTA_INFO_1023}
  386. _WKSTA_INFO_1023 = record
  387. wki1023_siz_char_buf: DWORD;
  388. end;
  389. {$EXTERNALSYM _WKSTA_INFO_1023}
  390. WKSTA_INFO_1023 = _WKSTA_INFO_1023;
  391. {$EXTERNALSYM WKSTA_INFO_1023}
  392. TWkstaInfo1023 = WKSTA_INFO_1023;
  393. PWkstaInfo1023 = PWKSTA_INFO_1023;
  394. LPWKSTA_INFO_1033 = ^WKSTA_INFO_1033;
  395. {$EXTERNALSYM LPWKSTA_INFO_1033}
  396. PWKSTA_INFO_1033 = ^WKSTA_INFO_1033;
  397. {$EXTERNALSYM PWKSTA_INFO_1033}
  398. _WKSTA_INFO_1033 = record
  399. wki1033_max_threads: DWORD;
  400. end;
  401. {$EXTERNALSYM _WKSTA_INFO_1033}
  402. WKSTA_INFO_1033 = _WKSTA_INFO_1033;
  403. {$EXTERNALSYM WKSTA_INFO_1033}
  404. TWkstaInfo1033 = WKSTA_INFO_1033;
  405. PWkstaInfo1033 = PWKSTA_INFO_1033;
  406. //
  407. // The following levels are only supported on NT systems:
  408. //
  409. LPWKSTA_INFO_1041 = ^WKSTA_INFO_1041;
  410. {$EXTERNALSYM LPWKSTA_INFO_1041}
  411. PWKSTA_INFO_1041 = ^WKSTA_INFO_1041;
  412. {$EXTERNALSYM PWKSTA_INFO_1041}
  413. _WKSTA_INFO_1041 = record
  414. wki1041_lock_quota: DWORD;
  415. end;
  416. {$EXTERNALSYM _WKSTA_INFO_1041}
  417. WKSTA_INFO_1041 = _WKSTA_INFO_1041;
  418. {$EXTERNALSYM WKSTA_INFO_1041}
  419. TWkstaInfo1041 = WKSTA_INFO_1041;
  420. PWkstaInfo1041 = PWKSTA_INFO_1041;
  421. LPWKSTA_INFO_1042 = ^WKSTA_INFO_1042;
  422. {$EXTERNALSYM LPWKSTA_INFO_1042}
  423. PWKSTA_INFO_1042 = ^WKSTA_INFO_1042;
  424. {$EXTERNALSYM PWKSTA_INFO_1042}
  425. _WKSTA_INFO_1042 = record
  426. wki1042_lock_increment: DWORD;
  427. end;
  428. {$EXTERNALSYM _WKSTA_INFO_1042}
  429. WKSTA_INFO_1042 = _WKSTA_INFO_1042;
  430. {$EXTERNALSYM WKSTA_INFO_1042}
  431. TWkstaInfo1042 = WKSTA_INFO_1042;
  432. PWkstaInfo1042 = PWKSTA_INFO_1042;
  433. LPWKSTA_INFO_1043 = ^WKSTA_INFO_1043;
  434. {$EXTERNALSYM LPWKSTA_INFO_1043}
  435. PWKSTA_INFO_1043 = ^WKSTA_INFO_1043;
  436. {$EXTERNALSYM PWKSTA_INFO_1043}
  437. _WKSTA_INFO_1043 = record
  438. wki1043_lock_maximum: DWORD;
  439. end;
  440. {$EXTERNALSYM _WKSTA_INFO_1043}
  441. WKSTA_INFO_1043 = _WKSTA_INFO_1043;
  442. {$EXTERNALSYM WKSTA_INFO_1043}
  443. TWkstaInfo1043 = WKSTA_INFO_1043;
  444. PWkstaInfo1043 = PWKSTA_INFO_1043;
  445. LPWKSTA_INFO_1044 = ^WKSTA_INFO_1044;
  446. {$EXTERNALSYM LPWKSTA_INFO_1044}
  447. PWKSTA_INFO_1044 = ^WKSTA_INFO_1044;
  448. {$EXTERNALSYM PWKSTA_INFO_1044}
  449. _WKSTA_INFO_1044 = record
  450. wki1044_pipe_increment: DWORD;
  451. end;
  452. {$EXTERNALSYM _WKSTA_INFO_1044}
  453. WKSTA_INFO_1044 = _WKSTA_INFO_1044;
  454. {$EXTERNALSYM WKSTA_INFO_1044}
  455. TWkstaInfo1044 = WKSTA_INFO_1044;
  456. PWkstaInfo1044 = PWKSTA_INFO_1044;
  457. LPWKSTA_INFO_1045 = ^WKSTA_INFO_1045;
  458. {$EXTERNALSYM LPWKSTA_INFO_1045}
  459. PWKSTA_INFO_1045 = ^WKSTA_INFO_1045;
  460. {$EXTERNALSYM PWKSTA_INFO_1045}
  461. _WKSTA_INFO_1045 = record
  462. wki1045_pipe_maximum: DWORD;
  463. end;
  464. {$EXTERNALSYM _WKSTA_INFO_1045}
  465. WKSTA_INFO_1045 = _WKSTA_INFO_1045;
  466. {$EXTERNALSYM WKSTA_INFO_1045}
  467. TWkstaInfo1045 = WKSTA_INFO_1045;
  468. PWkstaInfo1045 = PWKSTA_INFO_1045;
  469. LPWKSTA_INFO_1046 = ^WKSTA_INFO_1046;
  470. {$EXTERNALSYM LPWKSTA_INFO_1046}
  471. PWKSTA_INFO_1046 = ^WKSTA_INFO_1046;
  472. {$EXTERNALSYM PWKSTA_INFO_1046}
  473. _WKSTA_INFO_1046 = record
  474. wki1046_dormant_file_limit: DWORD;
  475. end;
  476. {$EXTERNALSYM _WKSTA_INFO_1046}
  477. WKSTA_INFO_1046 = _WKSTA_INFO_1046;
  478. {$EXTERNALSYM WKSTA_INFO_1046}
  479. TWkstaInfo1046 = WKSTA_INFO_1046;
  480. PWkstaInfo1046 = PWKSTA_INFO_1046;
  481. LPWKSTA_INFO_1047 = ^WKSTA_INFO_1047;
  482. {$EXTERNALSYM LPWKSTA_INFO_1047}
  483. PWKSTA_INFO_1047 = ^WKSTA_INFO_1047;
  484. {$EXTERNALSYM PWKSTA_INFO_1047}
  485. _WKSTA_INFO_1047 = record
  486. wki1047_cache_file_timeout: DWORD;
  487. end;
  488. {$EXTERNALSYM _WKSTA_INFO_1047}
  489. WKSTA_INFO_1047 = _WKSTA_INFO_1047;
  490. {$EXTERNALSYM WKSTA_INFO_1047}
  491. TWkstaInfo1047 = WKSTA_INFO_1047;
  492. PWkstaInfo1047 = PWKSTA_INFO_1047;
  493. LPWKSTA_INFO_1048 = ^WKSTA_INFO_1048;
  494. {$EXTERNALSYM LPWKSTA_INFO_1048}
  495. PWKSTA_INFO_1048 = ^WKSTA_INFO_1048;
  496. {$EXTERNALSYM PWKSTA_INFO_1048}
  497. _WKSTA_INFO_1048 = record
  498. wki1048_use_opportunistic_locking: BOOL;
  499. end;
  500. {$EXTERNALSYM _WKSTA_INFO_1048}
  501. WKSTA_INFO_1048 = _WKSTA_INFO_1048;
  502. {$EXTERNALSYM WKSTA_INFO_1048}
  503. TWkstaInfo1048 = WKSTA_INFO_1048;
  504. PWkstaInfo1048 = PWKSTA_INFO_1048;
  505. LPWKSTA_INFO_1049 = ^WKSTA_INFO_1049;
  506. {$EXTERNALSYM LPWKSTA_INFO_1049}
  507. PWKSTA_INFO_1049 = ^WKSTA_INFO_1049;
  508. {$EXTERNALSYM PWKSTA_INFO_1049}
  509. _WKSTA_INFO_1049 = record
  510. wki1049_use_unlock_behind: BOOL;
  511. end;
  512. {$EXTERNALSYM _WKSTA_INFO_1049}
  513. WKSTA_INFO_1049 = _WKSTA_INFO_1049;
  514. {$EXTERNALSYM WKSTA_INFO_1049}
  515. TWkstaInfo1049 = WKSTA_INFO_1049;
  516. PWkstaInfo1049 = PWKSTA_INFO_1049;
  517. LPWKSTA_INFO_1050 = ^WKSTA_INFO_1050;
  518. {$EXTERNALSYM LPWKSTA_INFO_1050}
  519. PWKSTA_INFO_1050 = ^WKSTA_INFO_1050;
  520. {$EXTERNALSYM PWKSTA_INFO_1050}
  521. _WKSTA_INFO_1050 = record
  522. wki1050_use_close_behind: BOOL;
  523. end;
  524. {$EXTERNALSYM _WKSTA_INFO_1050}
  525. WKSTA_INFO_1050 = _WKSTA_INFO_1050;
  526. {$EXTERNALSYM WKSTA_INFO_1050}
  527. TWkstaInfo1050 = WKSTA_INFO_1050;
  528. PWkstaInfo1050 = PWKSTA_INFO_1050;
  529. LPWKSTA_INFO_1051 = ^WKSTA_INFO_1051;
  530. {$EXTERNALSYM LPWKSTA_INFO_1051}
  531. PWKSTA_INFO_1051 = ^WKSTA_INFO_1051;
  532. {$EXTERNALSYM PWKSTA_INFO_1051}
  533. _WKSTA_INFO_1051 = record
  534. wki1051_buf_named_pipes: BOOL;
  535. end;
  536. {$EXTERNALSYM _WKSTA_INFO_1051}
  537. WKSTA_INFO_1051 = _WKSTA_INFO_1051;
  538. {$EXTERNALSYM WKSTA_INFO_1051}
  539. TWkstaInfo1051 = WKSTA_INFO_1051;
  540. PWkstaInfo1051 = PWKSTA_INFO_1051;
  541. LPWKSTA_INFO_1052 = ^WKSTA_INFO_1052;
  542. {$EXTERNALSYM LPWKSTA_INFO_1052}
  543. PWKSTA_INFO_1052 = ^WKSTA_INFO_1052;
  544. {$EXTERNALSYM PWKSTA_INFO_1052}
  545. _WKSTA_INFO_1052 = record
  546. wki1052_use_lock_read_unlock: BOOL;
  547. end;
  548. {$EXTERNALSYM _WKSTA_INFO_1052}
  549. WKSTA_INFO_1052 = _WKSTA_INFO_1052;
  550. {$EXTERNALSYM WKSTA_INFO_1052}
  551. TWkstaInfo1052 = WKSTA_INFO_1052;
  552. PWkstaInfo1052 = PWKSTA_INFO_1052;
  553. LPWKSTA_INFO_1053 = ^WKSTA_INFO_1053;
  554. {$EXTERNALSYM LPWKSTA_INFO_1053}
  555. PWKSTA_INFO_1053 = ^WKSTA_INFO_1053;
  556. {$EXTERNALSYM PWKSTA_INFO_1053}
  557. _WKSTA_INFO_1053 = record
  558. wki1053_utilize_nt_caching: BOOL;
  559. end;
  560. {$EXTERNALSYM _WKSTA_INFO_1053}
  561. WKSTA_INFO_1053 = _WKSTA_INFO_1053;
  562. {$EXTERNALSYM WKSTA_INFO_1053}
  563. TWkstaInfo1053 = WKSTA_INFO_1053;
  564. PWkstaInfo1053 = PWKSTA_INFO_1053;
  565. LPWKSTA_INFO_1054 = ^WKSTA_INFO_1054;
  566. {$EXTERNALSYM LPWKSTA_INFO_1054}
  567. PWKSTA_INFO_1054 = ^WKSTA_INFO_1054;
  568. {$EXTERNALSYM PWKSTA_INFO_1054}
  569. _WKSTA_INFO_1054 = record
  570. wki1054_use_raw_read: BOOL;
  571. end;
  572. {$EXTERNALSYM _WKSTA_INFO_1054}
  573. WKSTA_INFO_1054 = _WKSTA_INFO_1054;
  574. {$EXTERNALSYM WKSTA_INFO_1054}
  575. TWkstaInfo1054 = WKSTA_INFO_1054;
  576. PWkstaInfo1054 = PWKSTA_INFO_1054;
  577. LPWKSTA_INFO_1055 = ^WKSTA_INFO_1055;
  578. {$EXTERNALSYM LPWKSTA_INFO_1055}
  579. PWKSTA_INFO_1055 = ^WKSTA_INFO_1055;
  580. {$EXTERNALSYM PWKSTA_INFO_1055}
  581. _WKSTA_INFO_1055 = record
  582. wki1055_use_raw_write: BOOL;
  583. end;
  584. {$EXTERNALSYM _WKSTA_INFO_1055}
  585. WKSTA_INFO_1055 = _WKSTA_INFO_1055;
  586. {$EXTERNALSYM WKSTA_INFO_1055}
  587. TWkstaInfo1055 = WKSTA_INFO_1055;
  588. PWkstaInfo1055 = PWKSTA_INFO_1055;
  589. LPWKSTA_INFO_1056 = ^WKSTA_INFO_1056;
  590. {$EXTERNALSYM LPWKSTA_INFO_1056}
  591. PWKSTA_INFO_1056 = ^WKSTA_INFO_1056;
  592. {$EXTERNALSYM PWKSTA_INFO_1056}
  593. _WKSTA_INFO_1056 = record
  594. wki1056_use_write_raw_data: BOOL;
  595. end;
  596. {$EXTERNALSYM _WKSTA_INFO_1056}
  597. WKSTA_INFO_1056 = _WKSTA_INFO_1056;
  598. {$EXTERNALSYM WKSTA_INFO_1056}
  599. TWkstaInfo1056 = WKSTA_INFO_1056;
  600. PWkstaInfo1056 = PWKSTA_INFO_1056;
  601. LPWKSTA_INFO_1057 = ^WKSTA_INFO_1057;
  602. {$EXTERNALSYM LPWKSTA_INFO_1057}
  603. PWKSTA_INFO_1057 = ^WKSTA_INFO_1057;
  604. {$EXTERNALSYM PWKSTA_INFO_1057}
  605. _WKSTA_INFO_1057 = record
  606. wki1057_use_encryption: BOOL;
  607. end;
  608. {$EXTERNALSYM _WKSTA_INFO_1057}
  609. WKSTA_INFO_1057 = _WKSTA_INFO_1057;
  610. {$EXTERNALSYM WKSTA_INFO_1057}
  611. TWkstaInfo1057 = WKSTA_INFO_1057;
  612. PWkstaInfo1057 = PWKSTA_INFO_1057;
  613. LPWKSTA_INFO_1058 = ^WKSTA_INFO_1058;
  614. {$EXTERNALSYM LPWKSTA_INFO_1058}
  615. PWKSTA_INFO_1058 = ^WKSTA_INFO_1058;
  616. {$EXTERNALSYM PWKSTA_INFO_1058}
  617. _WKSTA_INFO_1058 = record
  618. wki1058_buf_files_deny_write: BOOL;
  619. end;
  620. {$EXTERNALSYM _WKSTA_INFO_1058}
  621. WKSTA_INFO_1058 = _WKSTA_INFO_1058;
  622. {$EXTERNALSYM WKSTA_INFO_1058}
  623. TWkstaInfo1058 = WKSTA_INFO_1058;
  624. PWkstaInfo1058 = PWKSTA_INFO_1058;
  625. LPWKSTA_INFO_1059 = ^WKSTA_INFO_1059;
  626. {$EXTERNALSYM LPWKSTA_INFO_1059}
  627. PWKSTA_INFO_1059 = ^WKSTA_INFO_1059;
  628. {$EXTERNALSYM PWKSTA_INFO_1059}
  629. _WKSTA_INFO_1059 = record
  630. wki1059_buf_read_only_files: BOOL;
  631. end;
  632. {$EXTERNALSYM _WKSTA_INFO_1059}
  633. WKSTA_INFO_1059 = _WKSTA_INFO_1059;
  634. {$EXTERNALSYM WKSTA_INFO_1059}
  635. TWkstaInfo1059 = WKSTA_INFO_1059;
  636. PWkstaInfo1059 = PWKSTA_INFO_1059;
  637. LPWKSTA_INFO_1060 = ^WKSTA_INFO_1060;
  638. {$EXTERNALSYM LPWKSTA_INFO_1060}
  639. PWKSTA_INFO_1060 = ^WKSTA_INFO_1060;
  640. {$EXTERNALSYM PWKSTA_INFO_1060}
  641. _WKSTA_INFO_1060 = record
  642. wki1060_force_core_create_mode: BOOL;
  643. end;
  644. {$EXTERNALSYM _WKSTA_INFO_1060}
  645. WKSTA_INFO_1060 = _WKSTA_INFO_1060;
  646. {$EXTERNALSYM WKSTA_INFO_1060}
  647. TWkstaInfo1060 = WKSTA_INFO_1060;
  648. PWkstaInfo1060 = PWKSTA_INFO_1060;
  649. LPWKSTA_INFO_1061 = ^WKSTA_INFO_1061;
  650. {$EXTERNALSYM LPWKSTA_INFO_1061}
  651. PWKSTA_INFO_1061 = ^WKSTA_INFO_1061;
  652. {$EXTERNALSYM PWKSTA_INFO_1061}
  653. _WKSTA_INFO_1061 = record
  654. wki1061_use_512_byte_max_transfer: BOOL;
  655. end;
  656. {$EXTERNALSYM _WKSTA_INFO_1061}
  657. WKSTA_INFO_1061 = _WKSTA_INFO_1061;
  658. {$EXTERNALSYM WKSTA_INFO_1061}
  659. TWkstaInfo1061 = WKSTA_INFO_1061;
  660. PWkstaInfo1061 = PWKSTA_INFO_1061;
  661. LPWKSTA_INFO_1062 = ^WKSTA_INFO_1062;
  662. {$EXTERNALSYM LPWKSTA_INFO_1062}
  663. PWKSTA_INFO_1062 = ^WKSTA_INFO_1062;
  664. {$EXTERNALSYM PWKSTA_INFO_1062}
  665. _WKSTA_INFO_1062 = record
  666. wki1062_read_ahead_throughput: DWORD;
  667. end;
  668. {$EXTERNALSYM _WKSTA_INFO_1062}
  669. WKSTA_INFO_1062 = _WKSTA_INFO_1062;
  670. {$EXTERNALSYM WKSTA_INFO_1062}
  671. TWkstaInfo1062 = WKSTA_INFO_1062;
  672. PWkstaInfo1062 = PWKSTA_INFO_1062;
  673. //
  674. // NetWkstaUserGetInfo (local only) and NetWkstaUserEnum -
  675. // no access restrictions.
  676. //
  677. LPWKSTA_USER_INFO_0 = ^WKSTA_USER_INFO_0;
  678. {$EXTERNALSYM LPWKSTA_USER_INFO_0}
  679. PWKSTA_USER_INFO_0 = ^WKSTA_USER_INFO_0;
  680. {$EXTERNALSYM PWKSTA_USER_INFO_0}
  681. _WKSTA_USER_INFO_0 = record
  682. wkui0_username: LMSTR;
  683. end;
  684. {$EXTERNALSYM _WKSTA_USER_INFO_0}
  685. WKSTA_USER_INFO_0 = _WKSTA_USER_INFO_0;
  686. {$EXTERNALSYM WKSTA_USER_INFO_0}
  687. TWkstaUserInfo0 = WKSTA_USER_INFO_0;
  688. PWkstaUserInfo0 = PWKSTA_USER_INFO_0;
  689. //
  690. // NetWkstaUserGetInfo (local only) and NetWkstaUserEnum -
  691. // no access restrictions.
  692. //
  693. LPWKSTA_USER_INFO_1 = ^WKSTA_USER_INFO_1;
  694. {$EXTERNALSYM LPWKSTA_USER_INFO_1}
  695. PWKSTA_USER_INFO_1 = ^WKSTA_USER_INFO_1;
  696. {$EXTERNALSYM PWKSTA_USER_INFO_1}
  697. _WKSTA_USER_INFO_1 = record
  698. wkui1_username: LMSTR;
  699. wkui1_logon_domain: LMSTR;
  700. wkui1_oth_domains: LMSTR;
  701. wkui1_logon_server: LMSTR;
  702. end;
  703. {$EXTERNALSYM _WKSTA_USER_INFO_1}
  704. WKSTA_USER_INFO_1 = _WKSTA_USER_INFO_1;
  705. {$EXTERNALSYM WKSTA_USER_INFO_1}
  706. TWkstaUserInfo1 = WKSTA_USER_INFO_1;
  707. PWkstaUserInfo1 = PWKSTA_USER_INFO_1;
  708. //
  709. // NetWkstaUserSetInfo - local access.
  710. //
  711. LPWKSTA_USER_INFO_1101 = ^WKSTA_USER_INFO_1101;
  712. {$EXTERNALSYM LPWKSTA_USER_INFO_1101}
  713. PWKSTA_USER_INFO_1101 = ^WKSTA_USER_INFO_1101;
  714. {$EXTERNALSYM PWKSTA_USER_INFO_1101}
  715. _WKSTA_USER_INFO_1101 = record
  716. wkui1101_oth_domains: LMSTR;
  717. end;
  718. {$EXTERNALSYM _WKSTA_USER_INFO_1101}
  719. WKSTA_USER_INFO_1101 = _WKSTA_USER_INFO_1101;
  720. {$EXTERNALSYM WKSTA_USER_INFO_1101}
  721. TWkstaUserInfo1101 = WKSTA_USER_INFO_1101;
  722. PWkstaUserInfo1101 = PWKSTA_USER_INFO_1101;
  723. //
  724. // NetWkstaTransportAdd - admin access
  725. //
  726. LPWKSTA_TRANSPORT_INFO_0 = ^WKSTA_TRANSPORT_INFO_0;
  727. {$EXTERNALSYM LPWKSTA_TRANSPORT_INFO_0}
  728. PWKSTA_TRANSPORT_INFO_0 = ^WKSTA_TRANSPORT_INFO_0;
  729. {$EXTERNALSYM PWKSTA_TRANSPORT_INFO_0}
  730. _WKSTA_TRANSPORT_INFO_0 = record
  731. wkti0_quality_of_service: DWORD;
  732. wkti0_number_of_vcs: DWORD;
  733. wkti0_transport_name: LMSTR;
  734. wkti0_transport_address: LMSTR;
  735. wkti0_wan_ish: BOOL;
  736. end;
  737. {$EXTERNALSYM _WKSTA_TRANSPORT_INFO_0}
  738. WKSTA_TRANSPORT_INFO_0 = _WKSTA_TRANSPORT_INFO_0;
  739. {$EXTERNALSYM WKSTA_TRANSPORT_INFO_0}
  740. TWkstaTransportInfo0 = WKSTA_TRANSPORT_INFO_0;
  741. PWkstaTransportInfo0 = PWKSTA_TRANSPORT_INFO_0;
  742. //
  743. // Special Values and Constants
  744. //
  745. //
  746. // Identifiers for use as NetWkstaSetInfo parmnum parameter
  747. //
  748. //
  749. // One of these values indicates the parameter within an information
  750. // structure that is invalid when ERROR_INVALID_PARAMETER is returned by
  751. // NetWkstaSetInfo.
  752. //
  753. const
  754. WKSTA_PLATFORM_ID_PARMNUM = 100;
  755. {$EXTERNALSYM WKSTA_PLATFORM_ID_PARMNUM}
  756. WKSTA_COMPUTERNAME_PARMNUM = 1;
  757. {$EXTERNALSYM WKSTA_COMPUTERNAME_PARMNUM}
  758. WKSTA_LANGROUP_PARMNUM = 2;
  759. {$EXTERNALSYM WKSTA_LANGROUP_PARMNUM}
  760. WKSTA_VER_MAJOR_PARMNUM = 4;
  761. {$EXTERNALSYM WKSTA_VER_MAJOR_PARMNUM}
  762. WKSTA_VER_MINOR_PARMNUM = 5;
  763. {$EXTERNALSYM WKSTA_VER_MINOR_PARMNUM}
  764. WKSTA_LOGGED_ON_USERS_PARMNUM = 6;
  765. {$EXTERNALSYM WKSTA_LOGGED_ON_USERS_PARMNUM}
  766. WKSTA_LANROOT_PARMNUM = 7;
  767. {$EXTERNALSYM WKSTA_LANROOT_PARMNUM}
  768. WKSTA_LOGON_DOMAIN_PARMNUM = 8;
  769. {$EXTERNALSYM WKSTA_LOGON_DOMAIN_PARMNUM}
  770. WKSTA_LOGON_SERVER_PARMNUM = 9;
  771. {$EXTERNALSYM WKSTA_LOGON_SERVER_PARMNUM}
  772. WKSTA_CHARWAIT_PARMNUM = 10; // Supported by down-level.
  773. {$EXTERNALSYM WKSTA_CHARWAIT_PARMNUM}
  774. WKSTA_CHARTIME_PARMNUM = 11; // Supported by down-level.
  775. {$EXTERNALSYM WKSTA_CHARTIME_PARMNUM}
  776. WKSTA_CHARCOUNT_PARMNUM = 12; // Supported by down-level.
  777. {$EXTERNALSYM WKSTA_CHARCOUNT_PARMNUM}
  778. WKSTA_KEEPCONN_PARMNUM = 13;
  779. {$EXTERNALSYM WKSTA_KEEPCONN_PARMNUM}
  780. WKSTA_KEEPSEARCH_PARMNUM = 14;
  781. {$EXTERNALSYM WKSTA_KEEPSEARCH_PARMNUM}
  782. WKSTA_MAXCMDS_PARMNUM = 15;
  783. {$EXTERNALSYM WKSTA_MAXCMDS_PARMNUM}
  784. WKSTA_NUMWORKBUF_PARMNUM = 16;
  785. {$EXTERNALSYM WKSTA_NUMWORKBUF_PARMNUM}
  786. WKSTA_MAXWRKCACHE_PARMNUM = 17;
  787. {$EXTERNALSYM WKSTA_MAXWRKCACHE_PARMNUM}
  788. WKSTA_SESSTIMEOUT_PARMNUM = 18;
  789. {$EXTERNALSYM WKSTA_SESSTIMEOUT_PARMNUM}
  790. WKSTA_SIZERROR_PARMNUM = 19;
  791. {$EXTERNALSYM WKSTA_SIZERROR_PARMNUM}
  792. WKSTA_NUMALERTS_PARMNUM = 20;
  793. {$EXTERNALSYM WKSTA_NUMALERTS_PARMNUM}
  794. WKSTA_NUMSERVICES_PARMNUM = 21;
  795. {$EXTERNALSYM WKSTA_NUMSERVICES_PARMNUM}
  796. WKSTA_NUMCHARBUF_PARMNUM = 22;
  797. {$EXTERNALSYM WKSTA_NUMCHARBUF_PARMNUM}
  798. WKSTA_SIZCHARBUF_PARMNUM = 23;
  799. {$EXTERNALSYM WKSTA_SIZCHARBUF_PARMNUM}
  800. WKSTA_ERRLOGSZ_PARMNUM = 27; // Supported by down-level.
  801. {$EXTERNALSYM WKSTA_ERRLOGSZ_PARMNUM}
  802. WKSTA_PRINTBUFTIME_PARMNUM = 28; // Supported by down-level.
  803. {$EXTERNALSYM WKSTA_PRINTBUFTIME_PARMNUM}
  804. WKSTA_SIZWORKBUF_PARMNUM = 29;
  805. {$EXTERNALSYM WKSTA_SIZWORKBUF_PARMNUM}
  806. WKSTA_MAILSLOTS_PARMNUM = 30;
  807. {$EXTERNALSYM WKSTA_MAILSLOTS_PARMNUM}
  808. WKSTA_NUMDGRAMBUF_PARMNUM = 31;
  809. {$EXTERNALSYM WKSTA_NUMDGRAMBUF_PARMNUM}
  810. WKSTA_WRKHEURISTICS_PARMNUM = 32; // Supported by down-level.
  811. {$EXTERNALSYM WKSTA_WRKHEURISTICS_PARMNUM}
  812. WKSTA_MAXTHREADS_PARMNUM = 33;
  813. {$EXTERNALSYM WKSTA_MAXTHREADS_PARMNUM}
  814. WKSTA_LOCKQUOTA_PARMNUM = 41;
  815. {$EXTERNALSYM WKSTA_LOCKQUOTA_PARMNUM}
  816. WKSTA_LOCKINCREMENT_PARMNUM = 42;
  817. {$EXTERNALSYM WKSTA_LOCKINCREMENT_PARMNUM}
  818. WKSTA_LOCKMAXIMUM_PARMNUM = 43;
  819. {$EXTERNALSYM WKSTA_LOCKMAXIMUM_PARMNUM}
  820. WKSTA_PIPEINCREMENT_PARMNUM = 44;
  821. {$EXTERNALSYM WKSTA_PIPEINCREMENT_PARMNUM}
  822. WKSTA_PIPEMAXIMUM_PARMNUM = 45;
  823. {$EXTERNALSYM WKSTA_PIPEMAXIMUM_PARMNUM}
  824. WKSTA_DORMANTFILELIMIT_PARMNUM = 46;
  825. {$EXTERNALSYM WKSTA_DORMANTFILELIMIT_PARMNUM}
  826. WKSTA_CACHEFILETIMEOUT_PARMNUM = 47;
  827. {$EXTERNALSYM WKSTA_CACHEFILETIMEOUT_PARMNUM}
  828. WKSTA_USEOPPORTUNISTICLOCKING_PARMNUM = 48;
  829. {$EXTERNALSYM WKSTA_USEOPPORTUNISTICLOCKING_PARMNUM}
  830. WKSTA_USEUNLOCKBEHIND_PARMNUM = 49;
  831. {$EXTERNALSYM WKSTA_USEUNLOCKBEHIND_PARMNUM}
  832. WKSTA_USECLOSEBEHIND_PARMNUM = 50;
  833. {$EXTERNALSYM WKSTA_USECLOSEBEHIND_PARMNUM}
  834. WKSTA_BUFFERNAMEDPIPES_PARMNUM = 51;
  835. {$EXTERNALSYM WKSTA_BUFFERNAMEDPIPES_PARMNUM}
  836. WKSTA_USELOCKANDREADANDUNLOCK_PARMNUM = 52;
  837. {$EXTERNALSYM WKSTA_USELOCKANDREADANDUNLOCK_PARMNUM}
  838. WKSTA_UTILIZENTCACHING_PARMNUM = 53;
  839. {$EXTERNALSYM WKSTA_UTILIZENTCACHING_PARMNUM}
  840. WKSTA_USERAWREAD_PARMNUM = 54;
  841. {$EXTERNALSYM WKSTA_USERAWREAD_PARMNUM}
  842. WKSTA_USERAWWRITE_PARMNUM = 55;
  843. {$EXTERNALSYM WKSTA_USERAWWRITE_PARMNUM}
  844. WKSTA_USEWRITERAWWITHDATA_PARMNUM = 56;
  845. {$EXTERNALSYM WKSTA_USEWRITERAWWITHDATA_PARMNUM}
  846. WKSTA_USEENCRYPTION_PARMNUM = 57;
  847. {$EXTERNALSYM WKSTA_USEENCRYPTION_PARMNUM}
  848. WKSTA_BUFFILESWITHDENYWRITE_PARMNUM = 58;
  849. {$EXTERNALSYM WKSTA_BUFFILESWITHDENYWRITE_PARMNUM}
  850. WKSTA_BUFFERREADONLYFILES_PARMNUM = 59;
  851. {$EXTERNALSYM WKSTA_BUFFERREADONLYFILES_PARMNUM}
  852. WKSTA_FORCECORECREATEMODE_PARMNUM = 60;
  853. {$EXTERNALSYM WKSTA_FORCECORECREATEMODE_PARMNUM}
  854. WKSTA_USE512BYTESMAXTRANSFER_PARMNUM = 61;
  855. {$EXTERNALSYM WKSTA_USE512BYTESMAXTRANSFER_PARMNUM}
  856. WKSTA_READAHEADTHRUPUT_PARMNUM = 62;
  857. {$EXTERNALSYM WKSTA_READAHEADTHRUPUT_PARMNUM}
  858. //
  859. // One of these values indicates the parameter within an information
  860. // structure that is invalid when ERROR_INVALID_PARAMETER is returned by
  861. // NetWkstaUserSetInfo.
  862. //
  863. WKSTA_OTH_DOMAINS_PARMNUM = 101;
  864. {$EXTERNALSYM WKSTA_OTH_DOMAINS_PARMNUM}
  865. //
  866. // One of these values indicates the parameter within an information
  867. // structure that is invalid when ERROR_INVALID_PARAMETER is returned by
  868. // NetWkstaTransportAdd.
  869. //
  870. TRANSPORT_QUALITYOFSERVICE_PARMNUM = 201;
  871. {$EXTERNALSYM TRANSPORT_QUALITYOFSERVICE_PARMNUM}
  872. TRANSPORT_NAME_PARMNUM = 202;
  873. {$EXTERNALSYM TRANSPORT_NAME_PARMNUM}
  874. {$ENDIF JWA_IMPLEMENTATIONSECTION}
  875. {$IFNDEF JWA_OMIT_SECTIONS_LM}
  876. implementation
  877. //uses ...
  878. {$ENDIF JWA_OMIT_SECTIONS_LM}
  879. {$IFNDEF JWA_INTERFACESECTION}
  880. {$IFDEF DYNAMIC_LINK}
  881. var
  882. _NetWkstaGetInfo: Pointer;
  883. function NetWkstaGetInfo;
  884. begin
  885. GetProcedureAddress(_NetWkstaGetInfo, netapi32, 'NetWkstaGetInfo');
  886. asm
  887. MOV ESP, EBP
  888. POP EBP
  889. JMP [_NetWkstaGetInfo]
  890. end;
  891. end;
  892. var
  893. _NetWkstaSetInfo: Pointer;
  894. function NetWkstaSetInfo;
  895. begin
  896. GetProcedureAddress(_NetWkstaSetInfo, netapi32, 'NetWkstaSetInfo');
  897. asm
  898. MOV ESP, EBP
  899. POP EBP
  900. JMP [_NetWkstaSetInfo]
  901. end;
  902. end;
  903. var
  904. _NetWkstaUserGetInfo: Pointer;
  905. function NetWkstaUserGetInfo;
  906. begin
  907. GetProcedureAddress(_NetWkstaUserGetInfo, netapi32, 'NetWkstaUserGetInfo');
  908. asm
  909. MOV ESP, EBP
  910. POP EBP
  911. JMP [_NetWkstaUserGetInfo]
  912. end;
  913. end;
  914. var
  915. _NetWkstaUserSetInfo: Pointer;
  916. function NetWkstaUserSetInfo;
  917. begin
  918. GetProcedureAddress(_NetWkstaUserSetInfo, netapi32, 'NetWkstaUserSetInfo');
  919. asm
  920. MOV ESP, EBP
  921. POP EBP
  922. JMP [_NetWkstaUserSetInfo]
  923. end;
  924. end;
  925. var
  926. _NetWkstaUserEnum: Pointer;
  927. function NetWkstaUserEnum;
  928. begin
  929. GetProcedureAddress(_NetWkstaUserEnum, netapi32, 'NetWkstaUserEnum');
  930. asm
  931. MOV ESP, EBP
  932. POP EBP
  933. JMP [_NetWkstaUserEnum]
  934. end;
  935. end;
  936. var
  937. _NetWkstaTransportAdd: Pointer;
  938. function NetWkstaTransportAdd;
  939. begin
  940. GetProcedureAddress(_NetWkstaTransportAdd, netapi32, 'NetWkstaTransportAdd');
  941. asm
  942. MOV ESP, EBP
  943. POP EBP
  944. JMP [_NetWkstaTransportAdd]
  945. end;
  946. end;
  947. var
  948. _NetWkstaTransportDel: Pointer;
  949. function NetWkstaTransportDel;
  950. begin
  951. GetProcedureAddress(_NetWkstaTransportDel, netapi32, 'NetWkstaTransportDel');
  952. asm
  953. MOV ESP, EBP
  954. POP EBP
  955. JMP [_NetWkstaTransportDel]
  956. end;
  957. end;
  958. var
  959. _NetWkstaTransportEnum: Pointer;
  960. function NetWkstaTransportEnum;
  961. begin
  962. GetProcedureAddress(_NetWkstaTransportEnum, netapi32, 'NetWkstaTransportEnum');
  963. asm
  964. MOV ESP, EBP
  965. POP EBP
  966. JMP [_NetWkstaTransportEnum]
  967. end;
  968. end;
  969. {$ELSE}
  970. function NetWkstaGetInfo; external netapi32 name 'NetWkstaGetInfo';
  971. function NetWkstaSetInfo; external netapi32 name 'NetWkstaSetInfo';
  972. function NetWkstaUserGetInfo; external netapi32 name 'NetWkstaUserGetInfo';
  973. function NetWkstaUserSetInfo; external netapi32 name 'NetWkstaUserSetInfo';
  974. function NetWkstaUserEnum; external netapi32 name 'NetWkstaUserEnum';
  975. function NetWkstaTransportAdd; external netapi32 name 'NetWkstaTransportAdd';
  976. function NetWkstaTransportDel; external netapi32 name 'NetWkstaTransportDel';
  977. function NetWkstaTransportEnum; external netapi32 name 'NetWkstaTransportEnum';
  978. {$ENDIF DYNAMIC_LINK}
  979. {$ENDIF JWA_INTERFACESECTION}
  980. {$IFNDEF JWA_OMIT_SECTIONS_LM}
  981. end.
  982. {$ENDIF JWA_OMIT_SECTIONS_LM}