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

  1. #ifndef _LMWKSTA_H
  2. #define _LMWKSTA_H
  3. #if __GNUC__ >=3
  4. #pragma GCC system_header
  5. #endif
  6.  
  7. #ifdef __cplusplus
  8. extern "C" {
  9. #endif
  10. #include <lmuseflg.h> 
  11. #define WKSTA_PLATFORM_ID_PARMNUM 100
  12. #define WKSTA_COMPUTERNAME_PARMNUM 1
  13. #define WKSTA_LANGROUP_PARMNUM 2
  14. #define WKSTA_VER_MAJOR_PARMNUM 4
  15. #define WKSTA_VER_MINOR_PARMNUM 5
  16. #define WKSTA_LOGGED_ON_USERS_PARMNUM 6
  17. #define WKSTA_LANROOT_PARMNUM 7
  18. #define WKSTA_LOGON_DOMAIN_PARMNUM 8
  19. #define WKSTA_LOGON_SERVER_PARMNUM 9
  20. #define WKSTA_CHARWAIT_PARMNUM 10 
  21. #define WKSTA_CHARTIME_PARMNUM 11 
  22. #define WKSTA_CHARCOUNT_PARMNUM 12 
  23. #define WKSTA_KEEPCONN_PARMNUM 13
  24. #define WKSTA_KEEPSEARCH_PARMNUM 14
  25. #define WKSTA_MAXCMDS_PARMNUM 15
  26. #define WKSTA_NUMWORKBUF_PARMNUM 16
  27. #define WKSTA_MAXWRKCACHE_PARMNUM 17
  28. #define WKSTA_SESSTIMEOUT_PARMNUM 18
  29. #define WKSTA_SIZERROR_PARMNUM 19
  30. #define WKSTA_NUMALERTS_PARMNUM 20
  31. #define WKSTA_NUMSERVICES_PARMNUM 21
  32. #define WKSTA_NUMCHARBUF_PARMNUM 22
  33. #define WKSTA_SIZCHARBUF_PARMNUM 23
  34. #define WKSTA_ERRLOGSZ_PARMNUM 27 
  35. #define WKSTA_PRINTBUFTIME_PARMNUM 28 
  36. #define WKSTA_SIZWORKBUF_PARMNUM 29
  37. #define WKSTA_MAILSLOTS_PARMNUM 30
  38. #define WKSTA_NUMDGRAMBUF_PARMNUM 31
  39. #define WKSTA_WRKHEURISTICS_PARMNUM 32 
  40. #define WKSTA_MAXTHREADS_PARMNUM 33
  41. #define WKSTA_LOCKQUOTA_PARMNUM 41
  42. #define WKSTA_LOCKINCREMENT_PARMNUM 42
  43. #define WKSTA_LOCKMAXIMUM_PARMNUM 43
  44. #define WKSTA_PIPEINCREMENT_PARMNUM 44
  45. #define WKSTA_PIPEMAXIMUM_PARMNUM 45
  46. #define WKSTA_DORMANTFILELIMIT_PARMNUM 46
  47. #define WKSTA_CACHEFILETIMEOUT_PARMNUM 47
  48. #define WKSTA_USEOPPORTUNISTICLOCKING_PARMNUM 48
  49. #define WKSTA_USEUNLOCKBEHIND_PARMNUM 49
  50. #define WKSTA_USECLOSEBEHIND_PARMNUM 50
  51. #define WKSTA_BUFFERNAMEDPIPES_PARMNUM 51
  52. #define WKSTA_USELOCKANDREADANDUNLOCK_PARMNUM 52
  53. #define WKSTA_UTILIZENTCACHING_PARMNUM 53
  54. #define WKSTA_USERAWREAD_PARMNUM 54
  55. #define WKSTA_USERAWWRITE_PARMNUM 55
  56. #define WKSTA_USEWRITERAWWITHDATA_PARMNUM 56
  57. #define WKSTA_USEENCRYPTION_PARMNUM 57
  58. #define WKSTA_BUFFILESWITHDENYWRITE_PARMNUM 58
  59. #define WKSTA_BUFFERREADONLYFILES_PARMNUM 59
  60. #define WKSTA_FORCECORECREATEMODE_PARMNUM 60
  61. #define WKSTA_USE512BYTESMAXTRANSFER_PARMNUM 61
  62. #define WKSTA_READAHEADTHRUPUT_PARMNUM 62
  63. #define WKSTA_OTH_DOMAINS_PARMNUM 101
  64. #define TRANSPORT_QUALITYOFSERVICE_PARMNUM 201
  65. #define TRANSPORT_NAME_PARMNUM 202
  66.  
  67. typedef struct _WKSTA_INFO_100 {
  68.     DWORD wki100_platform_id;
  69.     LPWSTR wki100_computername;
  70.     LPWSTR wki100_langroup;
  71.     DWORD wki100_ver_major;
  72.     DWORD wki100_ver_minor;
  73. }WKSTA_INFO_100,*PWKSTA_INFO_100,*LPWKSTA_INFO_100;
  74. typedef struct _WKSTA_INFO_101 {
  75.     DWORD wki101_platform_id;
  76.     LPWSTR wki101_computername;
  77.     LPWSTR wki101_langroup;
  78.     DWORD wki101_ver_major;
  79.     DWORD wki101_ver_minor;
  80.     LPWSTR wki101_lanroot;
  81. }WKSTA_INFO_101,*PWKSTA_INFO_101,*LPWKSTA_INFO_101;
  82. typedef struct _WKSTA_INFO_102 {
  83.     DWORD wki102_platform_id;
  84.     LPWSTR wki102_computername;
  85.     LPWSTR wki102_langroup;
  86.     DWORD wki102_ver_major;
  87.     DWORD wki102_ver_minor;
  88.     LPWSTR wki102_lanroot;
  89.     DWORD wki102_logged_on_users;
  90. }WKSTA_INFO_102,*PWKSTA_INFO_102,*LPWKSTA_INFO_102;
  91. typedef struct _WKSTA_INFO_302{
  92.     DWORD wki302_char_wait;
  93.     DWORD wki302_collection_time;
  94.     DWORD wki302_maximum_collection_count;
  95.     DWORD wki302_keep_conn;
  96.     DWORD wki302_keep_search;
  97.     DWORD wki302_max_cmds;
  98.     DWORD wki302_num_work_buf;
  99.     DWORD wki302_siz_work_buf;
  100.     DWORD wki302_max_wrk_cache;
  101.     DWORD wki302_sess_timeout;
  102.     DWORD wki302_siz_error;
  103.     DWORD wki302_num_alerts;
  104.     DWORD wki302_num_services;
  105.     DWORD wki302_errlog_sz;
  106.     DWORD wki302_print_buf_time;
  107.     DWORD wki302_num_char_buf;
  108.     DWORD wki302_siz_char_buf;
  109.     LPWSTR wki302_wrk_heuristics;
  110.     DWORD wki302_mailslots;
  111.     DWORD wki302_num_dgram_buf;
  112. }WKSTA_INFO_302,*PWKSTA_INFO_302,*LPWKSTA_INFO_302;
  113. typedef struct _WKSTA_INFO_402{
  114.     DWORD wki402_char_wait;
  115.     DWORD wki402_collection_time;
  116.     DWORD wki402_maximum_collection_count;
  117.     DWORD wki402_keep_conn;
  118.     DWORD wki402_keep_search;
  119.     DWORD wki402_max_cmds;
  120.     DWORD wki402_num_work_buf;
  121.     DWORD wki402_siz_work_buf;
  122.     DWORD wki402_max_wrk_cache;
  123.     DWORD wki402_sess_timeout;
  124.     DWORD wki402_siz_error;
  125.     DWORD wki402_num_alerts;
  126.     DWORD wki402_num_services;
  127.     DWORD wki402_errlog_sz;
  128.     DWORD wki402_print_buf_time;
  129.     DWORD wki402_num_char_buf;
  130.     DWORD wki402_siz_char_buf;
  131.     LPWSTR wki402_wrk_heuristics;
  132.     DWORD wki402_mailslots;
  133.     DWORD wki402_num_dgram_buf;
  134.     DWORD wki402_max_threads;
  135. }WKSTA_INFO_402,*PWKSTA_INFO_402,*LPWKSTA_INFO_402;
  136. typedef struct _WKSTA_INFO_502{
  137.     DWORD wki502_char_wait;
  138.     DWORD wki502_collection_time;
  139.     DWORD wki502_maximum_collection_count;
  140.     DWORD wki502_keep_conn;
  141.     DWORD wki502_max_cmds;
  142.     DWORD wki502_sess_timeout;
  143.     DWORD wki502_siz_char_buf;
  144.     DWORD wki502_max_threads;
  145.     DWORD wki502_lock_quota;
  146.     DWORD wki502_lock_increment;
  147.     DWORD wki502_lock_maximum;
  148.     DWORD wki502_pipe_increment;
  149.     DWORD wki502_pipe_maximum;
  150.     DWORD wki502_cache_file_timeout;
  151.     DWORD wki502_dormant_file_limit;
  152.     DWORD wki502_read_ahead_throughput;
  153.     DWORD wki502_num_mailslot_buffers;
  154.     DWORD wki502_num_srv_announce_buffers;
  155.     DWORD wki502_max_illegal_datagram_events;
  156.     DWORD wki502_illegal_datagram_event_reset_frequency;
  157.     BOOL wki502_log_election_packets;
  158.     BOOL wki502_use_opportunistic_locking;
  159.     BOOL wki502_use_unlock_behind;
  160.     BOOL wki502_use_close_behind;
  161.     BOOL wki502_buf_named_pipes;
  162.     BOOL wki502_use_lock_read_unlock;
  163.     BOOL wki502_utilize_nt_caching;
  164.     BOOL wki502_use_raw_read;
  165.     BOOL wki502_use_raw_write;
  166.     BOOL wki502_use_write_raw_data;
  167.     BOOL wki502_use_encryption;
  168.     BOOL wki502_buf_files_deny_write;
  169.     BOOL wki502_buf_read_only_files;
  170.     BOOL wki502_force_core_create_mode;
  171.     BOOL wki502_use_512_byte_max_transfer;
  172. }WKSTA_INFO_502,*PWKSTA_INFO_502,*LPWKSTA_INFO_502;
  173. typedef struct _WKSTA_INFO_1010 { DWORD wki1010_char_wait;} WKSTA_INFO_1010,*PWKSTA_INFO_1010,*LPWKSTA_INFO_1010;
  174. typedef struct _WKSTA_INFO_1011 { DWORD wki1011_collection_time;} WKSTA_INFO_1011,*PWKSTA_INFO_1011,*LPWKSTA_INFO_1011;
  175. typedef struct _WKSTA_INFO_1012 { DWORD wki1012_maximum_collection_count;} WKSTA_INFO_1012,*PWKSTA_INFO_1012,*LPWKSTA_INFO_1012;
  176. typedef struct _WKSTA_INFO_1027 { DWORD wki1027_errlog_sz;} WKSTA_INFO_1027,*PWKSTA_INFO_1027,*LPWKSTA_INFO_1027;
  177. typedef struct _WKSTA_INFO_1028 { DWORD wki1028_print_buf_time;} WKSTA_INFO_1028,*PWKSTA_INFO_1028,*LPWKSTA_INFO_1028;
  178. typedef struct _WKSTA_INFO_1032 { DWORD wki1032_wrk_heuristics;} WKSTA_INFO_1032,*PWKSTA_INFO_1032,*LPWKSTA_INFO_1032;
  179. typedef struct _WKSTA_INFO_1013 { DWORD wki1013_keep_conn;} WKSTA_INFO_1013,*PWKSTA_INFO_1013,*LPWKSTA_INFO_1013;
  180. typedef struct _WKSTA_INFO_1018 { DWORD wki1018_sess_timeout;} WKSTA_INFO_1018,*PWKSTA_INFO_1018,*LPWKSTA_INFO_1018;
  181. typedef struct _WKSTA_INFO_1023 { DWORD wki1023_siz_char_buf;} WKSTA_INFO_1023,*PWKSTA_INFO_1023,*LPWKSTA_INFO_1023;
  182. typedef struct _WKSTA_INFO_1033 { DWORD wki1033_max_threads;} WKSTA_INFO_1033,*PWKSTA_INFO_1033,*LPWKSTA_INFO_1033;
  183. typedef struct _WKSTA_INFO_1041 { DWORD wki1041_lock_quota;} WKSTA_INFO_1041,*PWKSTA_INFO_1041,*LPWKSTA_INFO_1041;
  184. typedef struct _WKSTA_INFO_1042 { DWORD wki1042_lock_increment;} WKSTA_INFO_1042,*PWKSTA_INFO_1042,*LPWKSTA_INFO_1042;
  185. typedef struct _WKSTA_INFO_1043 { DWORD wki1043_lock_maximum;} WKSTA_INFO_1043,*PWKSTA_INFO_1043,*LPWKSTA_INFO_1043;
  186. typedef struct _WKSTA_INFO_1044 { DWORD wki1044_pipe_increment;} WKSTA_INFO_1044,*PWKSTA_INFO_1044,*LPWKSTA_INFO_1044;
  187. typedef struct _WKSTA_INFO_1045 { DWORD wki1045_pipe_maximum;} WKSTA_INFO_1045,*PWKSTA_INFO_1045,*LPWKSTA_INFO_1045;
  188. typedef struct _WKSTA_INFO_1046 { DWORD wki1046_dormant_file_limit;} WKSTA_INFO_1046,*PWKSTA_INFO_1046,*LPWKSTA_INFO_1046;
  189. typedef struct _WKSTA_INFO_1047 { DWORD wki1047_cache_file_timeout;} WKSTA_INFO_1047,*PWKSTA_INFO_1047,*LPWKSTA_INFO_1047;
  190. typedef struct _WKSTA_INFO_1048 { BOOL wki1048_use_opportunistic_locking;} WKSTA_INFO_1048,*PWKSTA_INFO_1048,*LPWKSTA_INFO_1048;
  191. typedef struct _WKSTA_INFO_1049 { BOOL wki1049_use_unlock_behind;} WKSTA_INFO_1049,*PWKSTA_INFO_1049,*LPWKSTA_INFO_1049;
  192. typedef struct _WKSTA_INFO_1050 { BOOL wki1050_use_close_behind;} WKSTA_INFO_1050,*PWKSTA_INFO_1050,*LPWKSTA_INFO_1050;
  193. typedef struct _WKSTA_INFO_1051 { BOOL wki1051_buf_named_pipes;} WKSTA_INFO_1051,*PWKSTA_INFO_1051,*LPWKSTA_INFO_1051;
  194. typedef struct _WKSTA_INFO_1052 { BOOL wki1052_use_lock_read_unlock;} WKSTA_INFO_1052,*PWKSTA_INFO_1052,*LPWKSTA_INFO_1052;
  195. typedef struct _WKSTA_INFO_1053 { BOOL wki1053_utilize_nt_caching;} WKSTA_INFO_1053,*PWKSTA_INFO_1053,*LPWKSTA_INFO_1053;
  196. typedef struct _WKSTA_INFO_1054 { BOOL wki1054_use_raw_read;} WKSTA_INFO_1054,*PWKSTA_INFO_1054,*LPWKSTA_INFO_1054;
  197. typedef struct _WKSTA_INFO_1055 { BOOL wki1055_use_raw_write;} WKSTA_INFO_1055,*PWKSTA_INFO_1055,*LPWKSTA_INFO_1055;
  198. typedef struct _WKSTA_INFO_1056 { BOOL wki1056_use_write_raw_data;} WKSTA_INFO_1056,*PWKSTA_INFO_1056,*LPWKSTA_INFO_1056;
  199. typedef struct _WKSTA_INFO_1057 { BOOL wki1057_use_encryption;} WKSTA_INFO_1057,*PWKSTA_INFO_1057,*LPWKSTA_INFO_1057;
  200. typedef struct _WKSTA_INFO_1058 { BOOL wki1058_buf_files_deny_write;} WKSTA_INFO_1058,*PWKSTA_INFO_1058,*LPWKSTA_INFO_1058;
  201. typedef struct _WKSTA_INFO_1059 { BOOL wki1059_buf_read_only_files;} WKSTA_INFO_1059,*PWKSTA_INFO_1059,*LPWKSTA_INFO_1059;
  202. typedef struct _WKSTA_INFO_1060 { BOOL wki1060_force_core_create_mode;} WKSTA_INFO_1060,*PWKSTA_INFO_1060,*LPWKSTA_INFO_1060;
  203. typedef struct _WKSTA_INFO_1061 { BOOL wki1061_use_512_byte_max_transfer;} WKSTA_INFO_1061,*PWKSTA_INFO_1061,*LPWKSTA_INFO_1061;
  204. typedef struct _WKSTA_INFO_1062 { DWORD wki1062_read_ahead_throughput;} WKSTA_INFO_1062,*PWKSTA_INFO_1062,*LPWKSTA_INFO_1062;
  205. typedef struct _WKSTA_USER_INFO_0 { LPWSTR wkui0_username;}WKSTA_USER_INFO_0,*PWKSTA_USER_INFO_0,*LPWKSTA_USER_INFO_0;
  206. typedef struct _WKSTA_USER_INFO_1 {
  207.     LPWSTR wkui1_username;
  208.     LPWSTR wkui1_logon_domain;
  209.     LPWSTR wkui1_oth_domains;
  210.     LPWSTR wkui1_logon_server;
  211. }WKSTA_USER_INFO_1,*PWKSTA_USER_INFO_1,*LPWKSTA_USER_INFO_1;
  212. typedef struct _WKSTA_USER_INFO_1101 { LPWSTR wkui1101_oth_domains;} WKSTA_USER_INFO_1101,*PWKSTA_USER_INFO_1101,*LPWKSTA_USER_INFO_1101;
  213. typedef struct _WKSTA_TRANSPORT_INFO_0 {
  214.     DWORD wkti0_quality_of_service;
  215.     DWORD wkti0_number_of_vcs;
  216.     LPWSTR wkti0_transport_name;
  217.     LPWSTR wkti0_transport_address;
  218.     BOOL wkti0_wan_ish;
  219. }WKSTA_TRANSPORT_INFO_0,*PWKSTA_TRANSPORT_INFO_0,*LPWKSTA_TRANSPORT_INFO_0;
  220.  
  221. NET_API_STATUS WINAPI NetWkstaGetInfo(LPWSTR,DWORD,PBYTE*);
  222. NET_API_STATUS WINAPI NetWkstaSetInfo(LPWSTR,DWORD,PBYTE,PDWORD);
  223. NET_API_STATUS WINAPI NetWkstaUserGetInfo(LPWSTR,DWORD,PBYTE*);
  224. NET_API_STATUS WINAPI NetWkstaUserSetInfo(LPWSTR,DWORD,PBYTE,PDWORD);
  225. NET_API_STATUS WINAPI NetWkstaUserEnum(LPWSTR,DWORD,PBYTE*,DWORD,PDWORD,PDWORD,PDWORD);
  226. NET_API_STATUS WINAPI NetWkstaTransportAdd(LPWSTR,DWORD,PBYTE,PDWORD);
  227. NET_API_STATUS WINAPI NetWkstaTransportDel(LPWSTR,LPWSTR,DWORD);
  228. NET_API_STATUS WINAPI NetWkstaTransportEnum(LPWSTR,DWORD,PBYTE*,DWORD,PDWORD,PDWORD,PDWORD);
  229.  
  230. #ifdef __cplusplus
  231. }
  232. #endif
  233. #endif 
  234.