Artifact 0b642be89bc8d9dcc1998668f63b52b767f04e0f:
- File
src/win32/lmstats.d
-
2015-05-05 06:49:05
- part of checkin
[9b639cf2d6]
on branch trunk
- Working version for update to 2.067.
The problem was __gshared. Replacing it with TLS fixed the issue. Remaining problem is that "hack.d"'s CloseHandle hack is not working anymore.
(user: kinaba) [annotate]
-
2015-05-05 06:49:05
- part of checkin
[9b639cf2d6]
on branch trunk
- Working version for update to 2.067.
0000: 2f 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a /*************** 0010: 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a **************** 0020: 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a **************** 0030: 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a **************** 0040: 2a 2a 2a 2a 2a 2a 2a 2a 5c 0d 0a 2a 20 20 20 20 ********\..* 0050: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 0060: 20 20 20 20 20 20 20 20 20 20 20 6c 6d 73 74 61 lmsta 0070: 74 73 2e 64 20 20 20 20 20 20 20 20 20 20 20 20 ts.d 0080: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 0090: 20 20 20 2a 0d 0a 2a 20 20 20 20 20 20 20 20 20 *..* 00a0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 00b0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 00c0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 00d0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 2a 0d *. 00e0: 0a 2a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 .* 00f0: 20 20 20 20 20 20 20 20 20 57 69 6e 64 6f 77 73 Windows 0100: 20 41 50 49 20 68 65 61 64 65 72 20 6d 6f 64 75 API header modu 0110: 6c 65 20 20 20 20 20 20 20 20 20 20 20 20 20 20 le 0120: 20 20 20 20 20 20 20 20 20 2a 0d 0a 2a 20 20 20 *..* 0130: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 0140: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 0150: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 0160: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 0170: 20 20 20 20 2a 0d 0a 2a 20 20 20 20 20 20 20 20 *..* 0180: 20 20 20 20 20 20 20 20 20 54 72 61 6e 73 6c 61 Transla 0190: 74 65 64 20 66 72 6f 6d 20 4d 69 6e 47 57 20 57 ted from MinGW W 01a0: 69 6e 64 6f 77 73 20 68 65 61 64 65 72 73 20 20 indows headers 01b0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 2a * 01c0: 0d 0a 2a 20 20 20 20 20 20 20 20 20 20 20 20 20 ..* 01d0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 01e0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 01f0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 0200: 20 20 20 20 20 20 20 20 20 20 2a 0d 0a 2a 20 20 *..* 0210: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 0220: 20 20 20 20 20 50 6c 61 63 65 64 20 69 6e 74 6f Placed into 0230: 20 70 75 62 6c 69 63 20 64 6f 6d 61 69 6e 20 20 public domain 0240: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 0250: 20 20 20 20 20 2a 0d 0a 5c 2a 2a 2a 2a 2a 2a 2a *..\******* 0260: 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a **************** 0270: 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a **************** 0280: 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a **************** 0290: 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a **************** 02a0: 2f 0d 0a 6d 6f 64 75 6c 65 20 77 69 6e 33 32 2e /..module win32. 02b0: 6c 6d 73 74 61 74 73 3b 0d 0a 70 72 61 67 6d 61 lmstats;..pragma 02c0: 28 6c 69 62 2c 20 22 6e 65 74 61 70 69 33 32 22 (lib, "netapi32" 02d0: 29 3b 0d 0a 0d 0a 70 72 69 76 61 74 65 20 69 6d );....private im 02e0: 70 6f 72 74 20 77 69 6e 33 32 2e 6c 6d 63 6f 6e port win32.lmcon 02f0: 73 2c 20 77 69 6e 33 32 2e 77 69 6e 64 65 66 3b s, win32.windef; 0300: 0d 0a 0d 0a 63 6f 6e 73 74 20 55 4c 4f 4e 47 0d ....const ULONG. 0310: 0a 09 53 54 41 54 53 4f 50 54 5f 43 4c 52 20 20 ..STATSOPT_CLR 0320: 20 3d 20 31 2c 0d 0a 09 53 54 41 54 53 5f 4e 4f = 1,...STATS_NO 0330: 5f 56 41 4c 55 45 20 3d 20 2d 31 2c 0d 0a 09 53 _VALUE = -1,...S 0340: 54 41 54 53 5f 4f 56 45 52 46 4c 4f 57 20 3d 20 TATS_OVERFLOW = 0350: 2d 32 3b 0d 0a 0d 0a 73 74 72 75 63 74 20 53 54 -2;....struct ST 0360: 41 54 5f 53 45 52 56 45 52 5f 30 7b 0d 0a 09 44 AT_SERVER_0{...D 0370: 57 4f 52 44 20 73 74 73 30 5f 73 74 61 72 74 3b WORD sts0_start; 0380: 0d 0a 09 44 57 4f 52 44 20 73 74 73 30 5f 66 6f ...DWORD sts0_fo 0390: 70 65 6e 73 3b 0d 0a 09 44 57 4f 52 44 20 73 74 pens;...DWORD st 03a0: 73 30 5f 64 65 76 6f 70 65 6e 73 3b 0d 0a 09 44 s0_devopens;...D 03b0: 57 4f 52 44 20 73 74 73 30 5f 6a 6f 62 73 71 75 WORD sts0_jobsqu 03c0: 65 75 65 64 3b 0d 0a 09 44 57 4f 52 44 20 73 74 eued;...DWORD st 03d0: 73 30 5f 73 6f 70 65 6e 73 3b 0d 0a 09 44 57 4f s0_sopens;...DWO 03e0: 52 44 20 73 74 73 30 5f 73 74 69 6d 65 64 6f 75 RD sts0_stimedou 03f0: 74 3b 0d 0a 09 44 57 4f 52 44 20 73 74 73 30 5f t;...DWORD sts0_ 0400: 73 65 72 72 6f 72 6f 75 74 3b 0d 0a 09 44 57 4f serrorout;...DWO 0410: 52 44 20 73 74 73 30 5f 70 77 65 72 72 6f 72 73 RD sts0_pwerrors 0420: 3b 0d 0a 09 44 57 4f 52 44 20 73 74 73 30 5f 70 ;...DWORD sts0_p 0430: 65 72 6d 65 72 72 6f 72 73 3b 0d 0a 09 44 57 4f ermerrors;...DWO 0440: 52 44 20 73 74 73 30 5f 73 79 73 65 72 72 6f 72 RD sts0_syserror 0450: 73 3b 0d 0a 09 44 57 4f 52 44 20 73 74 73 30 5f s;...DWORD sts0_ 0460: 62 79 74 65 73 73 65 6e 74 5f 6c 6f 77 3b 0d 0a bytessent_low;.. 0470: 09 44 57 4f 52 44 20 73 74 73 30 5f 62 79 74 65 .DWORD sts0_byte 0480: 73 73 65 6e 74 5f 68 69 67 68 3b 0d 0a 09 44 57 ssent_high;...DW 0490: 4f 52 44 20 73 74 73 30 5f 62 79 74 65 73 72 63 ORD sts0_bytesrc 04a0: 76 64 5f 6c 6f 77 3b 0d 0a 09 44 57 4f 52 44 20 vd_low;...DWORD 04b0: 73 74 73 30 5f 62 79 74 65 73 72 63 76 64 5f 68 sts0_bytesrcvd_h 04c0: 69 67 68 3b 0d 0a 09 44 57 4f 52 44 20 73 74 73 igh;...DWORD sts 04d0: 30 5f 61 76 72 65 73 70 6f 6e 73 65 3b 0d 0a 09 0_avresponse;... 04e0: 44 57 4f 52 44 20 73 74 73 30 5f 72 65 71 62 75 DWORD sts0_reqbu 04f0: 66 6e 65 65 64 3b 0d 0a 09 44 57 4f 52 44 20 73 fneed;...DWORD s 0500: 74 73 30 5f 62 69 67 62 75 66 6e 65 65 64 3b 0d ts0_bigbufneed;. 0510: 0a 7d 0d 0a 61 6c 69 61 73 20 53 54 41 54 5f 53 .}..alias STAT_S 0520: 45 52 56 45 52 5f 30 2a 20 50 53 54 41 54 5f 53 ERVER_0* PSTAT_S 0530: 45 52 56 45 52 5f 30 2c 20 4c 50 53 54 41 54 5f ERVER_0, LPSTAT_ 0540: 53 45 52 56 45 52 5f 30 3b 0d 0a 0d 0a 2f 2f 20 SERVER_0;....// 0550: 23 69 66 64 65 66 20 4c 4d 32 30 5f 57 4f 52 4b #ifdef LM20_WORK 0560: 53 54 41 54 49 4f 4e 5f 53 54 41 54 49 53 54 49 STATION_STATISTI 0570: 43 53 0d 0a 2f 2f 20 74 79 70 65 64 65 66 20 73 CS..// typedef s 0580: 74 72 75 63 74 20 5f 53 54 41 54 5f 57 4f 52 4b truct _STAT_WORK 0590: 53 54 41 54 49 4f 4e 5f 30 20 7b 0d 0a 2f 2f 20 STATION_0 {..// 05a0: 09 44 57 4f 52 44 20 73 74 77 30 5f 73 74 61 72 .DWORD stw0_star 05b0: 74 3b 0d 0a 2f 2f 20 09 44 57 4f 52 44 20 73 74 t;..// .DWORD st 05c0: 77 30 5f 6e 75 6d 4e 43 42 5f 72 3b 0d 0a 2f 2f w0_numNCB_r;..// 05d0: 20 09 44 57 4f 52 44 20 73 74 77 30 5f 6e 75 6d .DWORD stw0_num 05e0: 4e 43 42 5f 73 3b 0d 0a 2f 2f 20 09 44 57 4f 52 NCB_s;..// .DWOR 05f0: 44 20 73 74 77 30 5f 6e 75 6d 4e 43 42 5f 61 3b D stw0_numNCB_a; 0600: 0d 0a 2f 2f 20 09 44 57 4f 52 44 20 73 74 77 30 ..// .DWORD stw0 0610: 5f 66 69 4e 43 42 5f 72 3b 0d 0a 2f 2f 20 09 44 _fiNCB_r;..// .D 0620: 57 4f 52 44 20 73 74 77 30 5f 66 69 4e 43 42 5f WORD stw0_fiNCB_ 0630: 73 3b 0d 0a 2f 2f 20 09 44 57 4f 52 44 20 73 74 s;..// .DWORD st 0640: 77 30 5f 66 69 4e 43 42 5f 61 3b 0d 0a 2f 2f 20 w0_fiNCB_a;..// 0650: 09 44 57 4f 52 44 20 73 74 77 30 5f 66 63 4e 43 .DWORD stw0_fcNC 0660: 42 5f 72 3b 0d 0a 2f 2f 20 09 44 57 4f 52 44 20 B_r;..// .DWORD 0670: 73 74 77 30 5f 66 63 4e 43 42 5f 73 3b 0d 0a 2f stw0_fcNCB_s;../ 0680: 2f 20 09 44 57 4f 52 44 20 73 74 77 30 5f 66 63 / .DWORD stw0_fc 0690: 4e 43 42 5f 61 3b 0d 0a 2f 2f 20 09 44 57 4f 52 NCB_a;..// .DWOR 06a0: 44 20 73 74 77 30 5f 73 65 73 73 74 61 72 74 3b D stw0_sesstart; 06b0: 0d 0a 2f 2f 20 09 44 57 4f 52 44 20 73 74 77 30 ..// .DWORD stw0 06c0: 5f 73 65 73 73 66 61 69 6c 63 6f 6e 3b 0d 0a 2f _sessfailcon;../ 06d0: 2f 20 09 44 57 4f 52 44 20 73 74 77 30 5f 73 65 / .DWORD stw0_se 06e0: 73 73 62 72 6f 6b 65 3b 0d 0a 2f 2f 20 09 44 57 ssbroke;..// .DW 06f0: 4f 52 44 20 73 74 77 30 5f 75 73 65 73 3b 0d 0a ORD stw0_uses;.. 0700: 2f 2f 20 09 44 57 4f 52 44 20 73 74 77 30 5f 75 // .DWORD stw0_u 0710: 73 65 66 61 69 6c 3b 0d 0a 2f 2f 20 09 44 57 4f sefail;..// .DWO 0720: 52 44 20 73 74 77 30 5f 61 75 74 6f 72 65 63 3b RD stw0_autorec; 0730: 0d 0a 2f 2f 20 09 44 57 4f 52 44 20 73 74 77 30 ..// .DWORD stw0 0740: 5f 62 79 74 65 73 73 65 6e 74 5f 72 5f 6c 6f 3b _bytessent_r_lo; 0750: 0d 0a 2f 2f 20 09 44 57 4f 52 44 20 73 74 77 30 ..// .DWORD stw0 0760: 5f 62 79 74 65 73 73 65 6e 74 5f 72 5f 68 69 3b _bytessent_r_hi; 0770: 0d 0a 2f 2f 20 09 44 57 4f 52 44 20 73 74 77 30 ..// .DWORD stw0 0780: 5f 62 79 74 65 73 72 63 76 64 5f 72 5f 6c 6f 3b _bytesrcvd_r_lo; 0790: 0d 0a 2f 2f 20 09 44 57 4f 52 44 20 73 74 77 30 ..// .DWORD stw0 07a0: 5f 62 79 74 65 73 72 63 76 64 5f 72 5f 68 69 3b _bytesrcvd_r_hi; 07b0: 0d 0a 2f 2f 20 09 44 57 4f 52 44 20 73 74 77 30 ..// .DWORD stw0 07c0: 5f 62 79 74 65 73 73 65 6e 74 5f 73 5f 6c 6f 3b _bytessent_s_lo; 07d0: 0d 0a 2f 2f 20 09 44 57 4f 52 44 20 73 74 77 30 ..// .DWORD stw0 07e0: 5f 62 79 74 65 73 73 65 6e 74 5f 73 5f 68 69 3b _bytessent_s_hi; 07f0: 0d 0a 2f 2f 20 09 44 57 4f 52 44 20 73 74 77 30 ..// .DWORD stw0 0800: 5f 62 79 74 65 73 72 63 76 64 5f 73 5f 6c 6f 3b _bytesrcvd_s_lo; 0810: 0d 0a 2f 2f 20 09 44 57 4f 52 44 20 73 74 77 30 ..// .DWORD stw0 0820: 5f 62 79 74 65 73 72 63 76 64 5f 73 5f 68 69 3b _bytesrcvd_s_hi; 0830: 0d 0a 2f 2f 20 09 44 57 4f 52 44 20 73 74 77 30 ..// .DWORD stw0 0840: 5f 62 79 74 65 73 73 65 6e 74 5f 61 5f 6c 6f 3b _bytessent_a_lo; 0850: 0d 0a 2f 2f 20 09 44 57 4f 52 44 20 73 74 77 30 ..// .DWORD stw0 0860: 5f 62 79 74 65 73 73 65 6e 74 5f 61 5f 68 69 3b _bytessent_a_hi; 0870: 0d 0a 2f 2f 20 09 44 57 4f 52 44 20 73 74 77 30 ..// .DWORD stw0 0880: 5f 62 79 74 65 73 72 63 76 64 5f 61 5f 6c 6f 3b _bytesrcvd_a_lo; 0890: 0d 0a 2f 2f 20 09 44 57 4f 52 44 20 73 74 77 30 ..// .DWORD stw0 08a0: 5f 62 79 74 65 73 72 63 76 64 5f 61 5f 68 69 3b _bytesrcvd_a_hi; 08b0: 0d 0a 2f 2f 20 09 44 57 4f 52 44 20 73 74 77 30 ..// .DWORD stw0 08c0: 5f 72 65 71 62 75 66 6e 65 65 64 3b 0d 0a 2f 2f _reqbufneed;..// 08d0: 20 09 44 57 4f 52 44 20 73 74 77 30 5f 62 69 67 .DWORD stw0_big 08e0: 62 75 66 6e 65 65 64 3b 0d 0a 2f 2f 20 7d 20 53 bufneed;..// } S 08f0: 54 41 54 5f 57 4f 52 4b 53 54 41 54 49 4f 4e 5f TAT_WORKSTATION_ 0900: 30 2c 2a 50 53 54 41 54 5f 57 4f 52 4b 53 54 41 0,*PSTAT_WORKSTA 0910: 54 49 4f 4e 5f 30 2c 2a 4c 50 53 54 41 54 5f 57 TION_0,*LPSTAT_W 0920: 4f 52 4b 53 54 41 54 49 4f 4e 5f 30 3b 0d 0a 2f ORKSTATION_0;../ 0930: 2f 20 23 65 6c 73 65 0d 0a 0d 0a 73 74 72 75 63 / #else....struc 0940: 74 20 53 54 41 54 5f 57 4f 52 4b 53 54 41 54 49 t STAT_WORKSTATI 0950: 4f 4e 5f 30 7b 0d 0a 09 4c 41 52 47 45 5f 49 4e ON_0{...LARGE_IN 0960: 54 45 47 45 52 20 53 74 61 74 69 73 74 69 63 73 TEGER Statistics 0970: 53 74 61 72 74 54 69 6d 65 3b 0d 0a 09 4c 41 52 StartTime;...LAR 0980: 47 45 5f 49 4e 54 45 47 45 52 20 42 79 74 65 73 GE_INTEGER Bytes 0990: 52 65 63 65 69 76 65 64 3b 0d 0a 09 4c 41 52 47 Received;...LARG 09a0: 45 5f 49 4e 54 45 47 45 52 20 53 6d 62 73 52 65 E_INTEGER SmbsRe 09b0: 63 65 69 76 65 64 3b 0d 0a 09 4c 41 52 47 45 5f ceived;...LARGE_ 09c0: 49 4e 54 45 47 45 52 20 50 61 67 69 6e 67 52 65 INTEGER PagingRe 09d0: 61 64 42 79 74 65 73 52 65 71 75 65 73 74 65 64 adBytesRequested 09e0: 3b 0d 0a 09 4c 41 52 47 45 5f 49 4e 54 45 47 45 ;...LARGE_INTEGE 09f0: 52 20 4e 6f 6e 50 61 67 69 6e 67 52 65 61 64 42 R NonPagingReadB 0a00: 79 74 65 73 52 65 71 75 65 73 74 65 64 3b 0d 0a ytesRequested;.. 0a10: 09 4c 41 52 47 45 5f 49 4e 54 45 47 45 52 20 43 .LARGE_INTEGER C 0a20: 61 63 68 65 52 65 61 64 42 79 74 65 73 52 65 71 acheReadBytesReq 0a30: 75 65 73 74 65 64 3b 0d 0a 09 4c 41 52 47 45 5f uested;...LARGE_ 0a40: 49 4e 54 45 47 45 52 20 4e 65 74 77 6f 72 6b 52 INTEGER NetworkR 0a50: 65 61 64 42 79 74 65 73 52 65 71 75 65 73 74 65 eadBytesRequeste 0a60: 64 3b 0d 0a 09 4c 41 52 47 45 5f 49 4e 54 45 47 d;...LARGE_INTEG 0a70: 45 52 20 42 79 74 65 73 54 72 61 6e 73 6d 69 74 ER BytesTransmit 0a80: 74 65 64 3b 0d 0a 09 4c 41 52 47 45 5f 49 4e 54 ted;...LARGE_INT 0a90: 45 47 45 52 20 53 6d 62 73 54 72 61 6e 73 6d 69 EGER SmbsTransmi 0aa0: 74 74 65 64 3b 0d 0a 09 4c 41 52 47 45 5f 49 4e tted;...LARGE_IN 0ab0: 54 45 47 45 52 20 50 61 67 69 6e 67 57 72 69 74 TEGER PagingWrit 0ac0: 65 42 79 74 65 73 52 65 71 75 65 73 74 65 64 3b eBytesRequested; 0ad0: 0d 0a 09 4c 41 52 47 45 5f 49 4e 54 45 47 45 52 ...LARGE_INTEGER 0ae0: 20 4e 6f 6e 50 61 67 69 6e 67 57 72 69 74 65 42 NonPagingWriteB 0af0: 79 74 65 73 52 65 71 75 65 73 74 65 64 3b 0d 0a ytesRequested;.. 0b00: 09 4c 41 52 47 45 5f 49 4e 54 45 47 45 52 20 43 .LARGE_INTEGER C 0b10: 61 63 68 65 57 72 69 74 65 42 79 74 65 73 52 65 acheWriteBytesRe 0b20: 71 75 65 73 74 65 64 3b 0d 0a 09 4c 41 52 47 45 quested;...LARGE 0b30: 5f 49 4e 54 45 47 45 52 20 4e 65 74 77 6f 72 6b _INTEGER Network 0b40: 57 72 69 74 65 42 79 74 65 73 52 65 71 75 65 73 WriteBytesReques 0b50: 74 65 64 3b 0d 0a 09 44 57 4f 52 44 20 49 6e 69 ted;...DWORD Ini 0b60: 74 69 61 6c 6c 79 46 61 69 6c 65 64 4f 70 65 72 tiallyFailedOper 0b70: 61 74 69 6f 6e 73 3b 0d 0a 09 44 57 4f 52 44 20 ations;...DWORD 0b80: 46 61 69 6c 65 64 43 6f 6d 70 6c 65 74 69 6f 6e FailedCompletion 0b90: 4f 70 65 72 61 74 69 6f 6e 73 3b 0d 0a 09 44 57 Operations;...DW 0ba0: 4f 52 44 20 52 65 61 64 4f 70 65 72 61 74 69 6f ORD ReadOperatio 0bb0: 6e 73 3b 0d 0a 09 44 57 4f 52 44 20 52 61 6e 64 ns;...DWORD Rand 0bc0: 6f 6d 52 65 61 64 4f 70 65 72 61 74 69 6f 6e 73 omReadOperations 0bd0: 3b 0d 0a 09 44 57 4f 52 44 20 52 65 61 64 53 6d ;...DWORD ReadSm 0be0: 62 73 3b 0d 0a 09 44 57 4f 52 44 20 4c 61 72 67 bs;...DWORD Larg 0bf0: 65 52 65 61 64 53 6d 62 73 3b 0d 0a 09 44 57 4f eReadSmbs;...DWO 0c00: 52 44 20 53 6d 61 6c 6c 52 65 61 64 53 6d 62 73 RD SmallReadSmbs 0c10: 3b 0d 0a 09 44 57 4f 52 44 20 57 72 69 74 65 4f ;...DWORD WriteO 0c20: 70 65 72 61 74 69 6f 6e 73 3b 0d 0a 09 44 57 4f perations;...DWO 0c30: 52 44 20 52 61 6e 64 6f 6d 57 72 69 74 65 4f 70 RD RandomWriteOp 0c40: 65 72 61 74 69 6f 6e 73 3b 0d 0a 09 44 57 4f 52 erations;...DWOR 0c50: 44 20 57 72 69 74 65 53 6d 62 73 3b 0d 0a 09 44 D WriteSmbs;...D 0c60: 57 4f 52 44 20 4c 61 72 67 65 57 72 69 74 65 53 WORD LargeWriteS 0c70: 6d 62 73 3b 0d 0a 09 44 57 4f 52 44 20 53 6d 61 mbs;...DWORD Sma 0c80: 6c 6c 57 72 69 74 65 53 6d 62 73 3b 0d 0a 09 44 llWriteSmbs;...D 0c90: 57 4f 52 44 20 52 61 77 52 65 61 64 73 44 65 6e WORD RawReadsDen 0ca0: 69 65 64 3b 0d 0a 09 44 57 4f 52 44 20 52 61 77 ied;...DWORD Raw 0cb0: 57 72 69 74 65 73 44 65 6e 69 65 64 3b 0d 0a 09 WritesDenied;... 0cc0: 44 57 4f 52 44 20 4e 65 74 77 6f 72 6b 45 72 72 DWORD NetworkErr 0cd0: 6f 72 73 3b 0d 0a 09 44 57 4f 52 44 20 53 65 73 ors;...DWORD Ses 0ce0: 73 69 6f 6e 73 3b 0d 0a 09 44 57 4f 52 44 20 46 sions;...DWORD F 0cf0: 61 69 6c 65 64 53 65 73 73 69 6f 6e 73 3b 0d 0a ailedSessions;.. 0d00: 09 44 57 4f 52 44 20 52 65 63 6f 6e 6e 65 63 74 .DWORD Reconnect 0d10: 73 3b 0d 0a 09 44 57 4f 52 44 20 43 6f 72 65 43 s;...DWORD CoreC 0d20: 6f 6e 6e 65 63 74 73 3b 0d 0a 09 44 57 4f 52 44 onnects;...DWORD 0d30: 20 4c 61 6e 6d 61 6e 32 30 43 6f 6e 6e 65 63 74 Lanman20Connect 0d40: 73 3b 0d 0a 09 44 57 4f 52 44 20 4c 61 6e 6d 61 s;...DWORD Lanma 0d50: 6e 32 31 43 6f 6e 6e 65 63 74 73 3b 0d 0a 09 44 n21Connects;...D 0d60: 57 4f 52 44 20 4c 61 6e 6d 61 6e 4e 74 43 6f 6e WORD LanmanNtCon 0d70: 6e 65 63 74 73 3b 0d 0a 09 44 57 4f 52 44 20 53 nects;...DWORD S 0d80: 65 72 76 65 72 44 69 73 63 6f 6e 6e 65 63 74 73 erverDisconnects 0d90: 3b 0d 0a 09 44 57 4f 52 44 20 48 75 6e 67 53 65 ;...DWORD HungSe 0da0: 73 73 69 6f 6e 73 3b 0d 0a 09 44 57 4f 52 44 20 ssions;...DWORD 0db0: 55 73 65 43 6f 75 6e 74 3b 0d 0a 09 44 57 4f 52 UseCount;...DWOR 0dc0: 44 20 46 61 69 6c 65 64 55 73 65 43 6f 75 6e 74 D FailedUseCount 0dd0: 3b 0d 0a 09 44 57 4f 52 44 20 43 75 72 72 65 6e ;...DWORD Curren 0de0: 74 43 6f 6d 6d 61 6e 64 73 3b 0d 0a 7d 0d 0a 61 tCommands;..}..a 0df0: 6c 69 61 73 20 53 54 41 54 5f 57 4f 52 4b 53 54 lias STAT_WORKST 0e00: 41 54 49 4f 4e 5f 30 2a 20 50 53 54 41 54 5f 57 ATION_0* PSTAT_W 0e10: 4f 52 4b 53 54 41 54 49 4f 4e 5f 30 2c 20 4c 50 ORKSTATION_0, LP 0e20: 53 54 41 54 5f 57 4f 52 4b 53 54 41 54 49 4f 4e STAT_WORKSTATION 0e30: 5f 30 3b 0d 0a 0d 0a 65 78 74 65 72 6e 20 28 57 _0;....extern (W 0e40: 69 6e 64 6f 77 73 29 3a 0d 0a 4e 45 54 5f 41 50 indows):..NET_AP 0e50: 49 5f 53 54 41 54 55 53 20 4e 65 74 53 74 61 74 I_STATUS NetStat 0e60: 69 73 74 69 63 73 47 65 74 28 4c 50 57 53 54 52 isticsGet(LPWSTR 0e70: 2c 4c 50 57 53 54 52 2c 44 57 4f 52 44 2c 44 57 ,LPWSTR,DWORD,DW 0e80: 4f 52 44 2c 50 42 59 54 45 2a 29 3b 0d 0a ORD,PBYTE*);..