Artifact 9c8e92fcb5a542c6dff1b8dd729b4941b5a92a41:
- File
src/win32/lmchdev.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 63 68 64 lmchd
0070: 65 76 2e 64 20 20 20 20 20 20 20 20 20 20 20 20 ev.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 63 68 64 65 76 3b 0d 0a 0d 0a 2f 2f 20 43 lmchdev;....// C
02c0: 4f 4d 4d 45 4e 54 3a 20 54 68 69 73 20 66 69 6c OMMENT: This fil
02d0: 65 20 6d 69 67 68 74 20 62 65 20 64 65 70 72 65 e might be depre
02e0: 63 61 74 65 64 2e 0d 0a 0d 0a 70 72 69 76 61 74 cated.....privat
02f0: 65 20 69 6d 70 6f 72 74 20 77 69 6e 33 32 2e 6c e import win32.l
0300: 6d 63 6f 6e 73 2c 20 77 69 6e 33 32 2e 77 69 6e mcons, win32.win
0310: 64 65 66 3b 0d 0a 0d 0a 63 6f 6e 73 74 20 43 48 def;....const CH
0320: 41 52 44 45 56 51 5f 4e 4f 5f 52 45 51 55 45 53 ARDEVQ_NO_REQUES
0330: 54 53 20 20 3d 20 2d 31 3b 0d 0a 63 6f 6e 73 74 TS = -1;..const
0340: 20 43 48 41 52 44 45 56 5f 43 4c 4f 53 45 20 20 CHARDEV_CLOSE
0350: 20 20 20 20 20 20 20 3d 20 30 3b 0d 0a 63 6f 6e = 0;..con
0360: 73 74 20 43 48 41 52 44 45 56 51 5f 4d 41 58 5f st CHARDEVQ_MAX_
0370: 50 52 49 4f 52 49 54 59 20 3d 20 31 3b 0d 0a 63 PRIORITY = 1;..c
0380: 6f 6e 73 74 20 43 48 41 52 44 45 56 51 5f 44 45 onst CHARDEVQ_DE
0390: 56 5f 50 41 52 4d 4e 55 4d 20 20 3d 20 31 3b 0d V_PARMNUM = 1;.
03a0: 0a 0d 0a 63 6f 6e 73 74 20 48 41 4e 44 4c 45 5f ...const HANDLE_
03b0: 49 4e 46 4f 5f 4c 45 56 45 4c 5f 31 20 3d 20 31 INFO_LEVEL_1 = 1
03c0: 3b 0d 0a 63 6f 6e 73 74 20 48 41 4e 44 4c 45 5f ;..const HANDLE_
03d0: 43 48 41 52 54 49 4d 45 5f 50 41 52 4d 4e 55 4d CHARTIME_PARMNUM
03e0: 20 3d 20 31 3b 0d 0a 63 6f 6e 73 74 20 48 41 4e = 1;..const HAN
03f0: 44 4c 45 5f 43 48 41 52 43 4f 55 4e 54 5f 50 41 DLE_CHARCOUNT_PA
0400: 52 4d 4e 55 4d 20 3d 20 32 3b 0d 0a 0d 0a 63 6f RMNUM = 2;....co
0410: 6e 73 74 20 43 48 41 52 44 45 56 5f 53 54 41 54 nst CHARDEV_STAT
0420: 5f 4f 50 45 4e 45 44 20 3d 20 32 3b 0d 0a 63 6f _OPENED = 2;..co
0430: 6e 73 74 20 43 48 41 52 44 45 56 51 5f 50 52 49 nst CHARDEVQ_PRI
0440: 4f 52 49 54 59 5f 50 41 52 4d 4e 55 4d 20 3d 20 ORITY_PARMNUM =
0450: 32 3b 0d 0a 63 6f 6e 73 74 20 43 48 41 52 44 45 2;..const CHARDE
0460: 56 51 5f 44 45 56 53 5f 50 41 52 4d 4e 55 4d 20 VQ_DEVS_PARMNUM
0470: 3d 20 33 3b 0d 0a 63 6f 6e 73 74 20 43 48 41 52 = 3;..const CHAR
0480: 44 45 56 5f 53 54 41 54 5f 45 52 52 4f 52 20 3d DEV_STAT_ERROR =
0490: 20 34 3b 0d 0a 63 6f 6e 73 74 20 43 48 41 52 44 4;..const CHARD
04a0: 45 56 51 5f 4e 55 4d 55 53 45 52 53 5f 50 41 52 EVQ_NUMUSERS_PAR
04b0: 4d 4e 55 4d 20 3d 20 34 3b 0d 0a 63 6f 6e 73 74 MNUM = 4;..const
04c0: 20 43 48 41 52 44 45 56 51 5f 4e 55 4d 41 48 45 CHARDEVQ_NUMAHE
04d0: 41 44 5f 50 41 52 4d 4e 55 4d 20 3d 20 35 3b 0d AD_PARMNUM = 5;.
04e0: 0a 63 6f 6e 73 74 20 43 48 41 52 44 45 56 51 5f .const CHARDEVQ_
04f0: 44 45 46 5f 50 52 49 4f 52 49 54 59 20 3d 20 35 DEF_PRIORITY = 5
0500: 3b 0d 0a 63 6f 6e 73 74 20 43 48 41 52 44 45 56 ;..const CHARDEV
0510: 51 5f 50 52 49 4f 52 49 54 59 5f 49 4e 46 4f 4c Q_PRIORITY_INFOL
0520: 45 56 45 4c 20 3d 20 50 41 52 4d 4e 55 4d 5f 42 EVEL = PARMNUM_B
0530: 41 53 45 5f 49 4e 46 4f 4c 45 56 45 4c 2b 43 48 ASE_INFOLEVEL+CH
0540: 41 52 44 45 56 51 5f 50 52 49 4f 52 49 54 59 5f ARDEVQ_PRIORITY_
0550: 50 41 52 4d 4e 55 4d 3b 0d 0a 63 6f 6e 73 74 20 PARMNUM;..const
0560: 43 48 41 52 44 45 56 51 5f 44 45 56 53 5f 49 4e CHARDEVQ_DEVS_IN
0570: 46 4f 4c 45 56 45 4c 20 3d 20 50 41 52 4d 4e 55 FOLEVEL = PARMNU
0580: 4d 5f 42 41 53 45 5f 49 4e 46 4f 4c 45 56 45 4c M_BASE_INFOLEVEL
0590: 2b 43 48 41 52 44 45 56 51 5f 44 45 56 53 5f 50 +CHARDEVQ_DEVS_P
05a0: 41 52 4d 4e 55 4d 3b 0d 0a 63 6f 6e 73 74 20 43 ARMNUM;..const C
05b0: 48 41 52 44 45 56 51 5f 4d 49 4e 5f 50 52 49 4f HARDEVQ_MIN_PRIO
05c0: 52 49 54 59 20 3d 20 39 3b 0d 0a 0d 0a 73 74 72 RITY = 9;....str
05d0: 75 63 74 20 43 48 41 52 44 45 56 5f 49 4e 46 4f uct CHARDEV_INFO
05e0: 5f 30 20 7b 0d 0a 20 4c 50 57 53 54 52 20 63 68 _0 {.. LPWSTR ch
05f0: 30 5f 64 65 76 3b 0d 0a 7d 0d 0a 61 6c 69 61 73 0_dev;..}..alias
0600: 20 43 48 41 52 44 45 56 5f 49 4e 46 4f 5f 30 2a CHARDEV_INFO_0*
0610: 20 50 43 48 41 52 44 45 56 5f 49 4e 46 4f 5f 30 PCHARDEV_INFO_0
0620: 2c 20 4c 50 43 48 41 52 44 45 56 5f 49 4e 46 4f , LPCHARDEV_INFO
0630: 5f 30 3b 0d 0a 0d 0a 73 74 72 75 63 74 20 43 48 _0;....struct CH
0640: 41 52 44 45 56 5f 49 4e 46 4f 5f 31 7b 0d 0a 09 ARDEV_INFO_1{...
0650: 4c 50 57 53 54 52 20 63 68 31 5f 64 65 76 3b 0d LPWSTR ch1_dev;.
0660: 0a 09 44 57 4f 52 44 20 63 68 31 5f 73 74 61 74 ..DWORD ch1_stat
0670: 75 73 3b 0d 0a 09 4c 50 57 53 54 52 20 63 68 31 us;...LPWSTR ch1
0680: 5f 75 73 65 72 6e 61 6d 65 3b 0d 0a 09 44 57 4f _username;...DWO
0690: 52 44 20 63 68 31 5f 74 69 6d 65 3b 0d 0a 7d 0d RD ch1_time;..}.
06a0: 0a 61 6c 69 61 73 20 43 48 41 52 44 45 56 5f 49 .alias CHARDEV_I
06b0: 4e 46 4f 5f 31 2a 20 50 43 48 41 52 44 45 56 5f NFO_1* PCHARDEV_
06c0: 49 4e 46 4f 5f 31 2c 20 4c 50 43 48 41 52 44 45 INFO_1, LPCHARDE
06d0: 56 5f 49 4e 46 4f 5f 31 3b 0d 0a 0d 0a 73 74 72 V_INFO_1;....str
06e0: 75 63 74 20 43 48 41 52 44 45 56 51 5f 49 4e 46 uct CHARDEVQ_INF
06f0: 4f 5f 30 20 7b 0d 0a 20 4c 50 57 53 54 52 20 63 O_0 {.. LPWSTR c
0700: 71 30 5f 64 65 76 3b 0d 0a 7d 0d 0a 61 6c 69 61 q0_dev;..}..alia
0710: 73 20 43 48 41 52 44 45 56 51 5f 49 4e 46 4f 5f s CHARDEVQ_INFO_
0720: 30 2a 20 50 43 48 41 52 44 45 56 51 5f 49 4e 46 0* PCHARDEVQ_INF
0730: 4f 5f 30 2c 20 4c 50 43 48 41 52 44 45 56 51 5f O_0, LPCHARDEVQ_
0740: 49 4e 46 4f 5f 30 3b 0d 0a 0d 0a 73 74 72 75 63 INFO_0;....struc
0750: 74 20 43 48 41 52 44 45 56 51 5f 49 4e 46 4f 5f t CHARDEVQ_INFO_
0760: 31 7b 0d 0a 09 4c 50 57 53 54 52 20 63 71 31 5f 1{...LPWSTR cq1_
0770: 64 65 76 3b 0d 0a 09 44 57 4f 52 44 20 63 71 31 dev;...DWORD cq1
0780: 5f 70 72 69 6f 72 69 74 79 3b 0d 0a 09 4c 50 57 _priority;...LPW
0790: 53 54 52 20 63 71 31 5f 64 65 76 73 3b 0d 0a 09 STR cq1_devs;...
07a0: 44 57 4f 52 44 20 63 71 31 5f 6e 75 6d 75 73 65 DWORD cq1_numuse
07b0: 72 73 3b 0d 0a 09 44 57 4f 52 44 20 63 71 31 5f rs;...DWORD cq1_
07c0: 6e 75 6d 61 68 65 61 64 3b 0d 0a 7d 0d 0a 61 6c numahead;..}..al
07d0: 69 61 73 20 43 48 41 52 44 45 56 51 5f 49 4e 46 ias CHARDEVQ_INF
07e0: 4f 5f 31 2a 20 50 43 48 41 52 44 45 56 51 5f 49 O_1* PCHARDEVQ_I
07f0: 4e 46 4f 5f 31 2c 20 4c 50 43 48 41 52 44 45 56 NFO_1, LPCHARDEV
0800: 51 5f 49 4e 46 4f 5f 31 3b 0d 0a 0d 0a 73 74 72 Q_INFO_1;....str
0810: 75 63 74 20 43 48 41 52 44 45 56 51 5f 49 4e 46 uct CHARDEVQ_INF
0820: 4f 5f 31 30 30 32 20 7b 0d 0a 09 44 57 4f 52 44 O_1002 {...DWORD
0830: 20 63 71 31 30 30 32 5f 70 72 69 6f 72 69 74 79 cq1002_priority
0840: 3b 0d 0a 7d 0d 0a 61 6c 69 61 73 20 43 48 41 52 ;..}..alias CHAR
0850: 44 45 56 51 5f 49 4e 46 4f 5f 31 30 30 32 2a 20 DEVQ_INFO_1002*
0860: 50 43 48 41 52 44 45 56 51 5f 49 4e 46 4f 5f 31 PCHARDEVQ_INFO_1
0870: 30 30 32 2c 20 4c 50 43 48 41 52 44 45 56 51 5f 002, LPCHARDEVQ_
0880: 49 4e 46 4f 5f 31 30 30 32 3b 0d 0a 0d 0a 73 74 INFO_1002;....st
0890: 72 75 63 74 20 43 48 41 52 44 45 56 51 5f 49 4e ruct CHARDEVQ_IN
08a0: 46 4f 5f 31 30 30 33 20 7b 0d 0a 09 4c 50 57 53 FO_1003 {...LPWS
08b0: 54 52 20 63 71 31 30 30 33 5f 64 65 76 73 3b 0d TR cq1003_devs;.
08c0: 0a 7d 0d 0a 61 6c 69 61 73 20 43 48 41 52 44 45 .}..alias CHARDE
08d0: 56 51 5f 49 4e 46 4f 5f 31 30 30 33 2a 20 50 43 VQ_INFO_1003* PC
08e0: 48 41 52 44 45 56 51 5f 49 4e 46 4f 5f 31 30 30 HARDEVQ_INFO_100
08f0: 33 2c 20 4c 50 43 48 41 52 44 45 56 51 5f 49 4e 3, LPCHARDEVQ_IN
0900: 46 4f 5f 31 30 30 33 3b 0d 0a 0d 0a 73 74 72 75 FO_1003;....stru
0910: 63 74 20 48 41 4e 44 4c 45 5f 49 4e 46 4f 5f 31 ct HANDLE_INFO_1
0920: 7b 0d 0a 09 44 57 4f 52 44 20 68 64 6c 69 31 5f {...DWORD hdli1_
0930: 63 68 61 72 74 69 6d 65 3b 0d 0a 09 44 57 4f 52 chartime;...DWOR
0940: 44 20 68 64 6c 69 31 5f 63 68 61 72 63 6f 75 6e D hdli1_charcoun
0950: 74 3b 0d 0a 7d 0d 0a 61 6c 69 61 73 20 48 41 4e t;..}..alias HAN
0960: 44 4c 45 5f 49 4e 46 4f 5f 31 2a 20 50 48 41 4e DLE_INFO_1* PHAN
0970: 44 4c 45 5f 49 4e 46 4f 5f 31 2c 20 4c 50 48 41 DLE_INFO_1, LPHA
0980: 4e 44 4c 45 5f 49 4e 46 4f 5f 31 3b 0d 0a 0d 0a NDLE_INFO_1;....
0990: 65 78 74 65 72 6e 20 28 57 69 6e 64 6f 77 73 29 extern (Windows)
09a0: 20 7b 0d 0a 09 4e 45 54 5f 41 50 49 5f 53 54 41 {...NET_API_STA
09b0: 54 55 53 20 4e 65 74 43 68 61 72 44 65 76 45 6e TUS NetCharDevEn
09c0: 75 6d 28 4c 50 43 57 53 54 52 2c 20 44 57 4f 52 um(LPCWSTR, DWOR
09d0: 44 2c 20 50 42 59 54 45 2a 2c 20 44 57 4f 52 44 D, PBYTE*, DWORD
09e0: 2c 20 50 44 57 4f 52 44 2c 20 50 44 57 4f 52 44 , PDWORD, PDWORD
09f0: 2c 20 50 44 57 4f 52 44 29 3b 0d 0a 09 4e 45 54 , PDWORD);...NET
0a00: 5f 41 50 49 5f 53 54 41 54 55 53 20 4e 65 74 43 _API_STATUS NetC
0a10: 68 61 72 44 65 76 47 65 74 49 6e 66 6f 28 4c 50 harDevGetInfo(LP
0a20: 43 57 53 54 52 2c 20 4c 50 43 57 53 54 52 2c 20 CWSTR, LPCWSTR,
0a30: 44 57 4f 52 44 2c 20 50 42 59 54 45 2a 29 3b 0d DWORD, PBYTE*);.
0a40: 0a 09 4e 45 54 5f 41 50 49 5f 53 54 41 54 55 53 ..NET_API_STATUS
0a50: 20 4e 65 74 43 68 61 72 44 65 76 43 6f 6e 74 72 NetCharDevContr
0a60: 6f 6c 28 4c 50 43 57 53 54 52 2c 20 4c 50 43 57 ol(LPCWSTR, LPCW
0a70: 53 54 52 2c 20 44 57 4f 52 44 29 3b 0d 0a 09 4e STR, DWORD);...N
0a80: 45 54 5f 41 50 49 5f 53 54 41 54 55 53 20 4e 65 ET_API_STATUS Ne
0a90: 74 43 68 61 72 44 65 76 51 45 6e 75 6d 28 4c 50 tCharDevQEnum(LP
0aa0: 43 57 53 54 52 2c 20 4c 50 43 57 53 54 52 2c 20 CWSTR, LPCWSTR,
0ab0: 44 57 4f 52 44 2c 20 50 42 59 54 45 2a 2c 20 44 DWORD, PBYTE*, D
0ac0: 57 4f 52 44 2c 20 50 44 57 4f 52 44 2c 20 50 44 WORD, PDWORD, PD
0ad0: 57 4f 52 44 2c 20 50 44 57 4f 52 44 29 3b 0d 0a WORD, PDWORD);..
0ae0: 09 4e 45 54 5f 41 50 49 5f 53 54 41 54 55 53 20 .NET_API_STATUS
0af0: 4e 65 74 43 68 61 72 44 65 76 51 47 65 74 49 6e NetCharDevQGetIn
0b00: 66 6f 28 4c 50 43 57 53 54 52 2c 20 4c 50 43 57 fo(LPCWSTR, LPCW
0b10: 53 54 52 2c 20 4c 50 43 57 53 54 52 2c 20 44 57 STR, LPCWSTR, DW
0b20: 4f 52 44 2c 20 50 42 59 54 45 2a 29 3b 0d 0a 09 ORD, PBYTE*);...
0b30: 4e 45 54 5f 41 50 49 5f 53 54 41 54 55 53 20 4e NET_API_STATUS N
0b40: 65 74 43 68 61 72 44 65 76 51 53 65 74 49 6e 66 etCharDevQSetInf
0b50: 6f 28 4c 50 43 57 53 54 52 2c 20 4c 50 43 57 53 o(LPCWSTR, LPCWS
0b60: 54 52 2c 20 44 57 4f 52 44 2c 20 50 42 59 54 45 TR, DWORD, PBYTE
0b70: 2c 20 50 44 57 4f 52 44 29 3b 0d 0a 09 4e 45 54 , PDWORD);...NET
0b80: 5f 41 50 49 5f 53 54 41 54 55 53 20 4e 65 74 43 _API_STATUS NetC
0b90: 68 61 72 44 65 76 51 50 75 72 67 65 28 4c 50 43 harDevQPurge(LPC
0ba0: 57 53 54 52 2c 20 4c 50 43 57 53 54 52 29 3b 0d WSTR, LPCWSTR);.
0bb0: 0a 09 4e 45 54 5f 41 50 49 5f 53 54 41 54 55 53 ..NET_API_STATUS
0bc0: 20 4e 65 74 43 68 61 72 44 65 76 51 50 75 72 67 NetCharDevQPurg
0bd0: 65 53 65 6c 66 28 4c 50 43 57 53 54 52 2c 20 4c eSelf(LPCWSTR, L
0be0: 50 43 57 53 54 52 2c 20 4c 50 43 57 53 54 52 29 PCWSTR, LPCWSTR)
0bf0: 3b 0d 0a 09 4e 45 54 5f 41 50 49 5f 53 54 41 54 ;...NET_API_STAT
0c00: 55 53 20 4e 65 74 48 61 6e 64 6c 65 47 65 74 49 US NetHandleGetI
0c10: 6e 66 6f 28 48 41 4e 44 4c 45 2c 20 44 57 4f 52 nfo(HANDLE, DWOR
0c20: 44 2c 20 50 42 59 54 45 2a 29 3b 0d 0a 09 4e 45 D, PBYTE*);...NE
0c30: 54 5f 41 50 49 5f 53 54 41 54 55 53 20 4e 65 74 T_API_STATUS Net
0c40: 48 61 6e 64 6c 65 53 65 74 49 6e 66 6f 28 48 41 HandleSetInfo(HA
0c50: 4e 44 4c 45 2c 20 44 57 4f 52 44 2c 20 50 42 59 NDLE, DWORD, PBY
0c60: 54 45 2c 20 44 57 4f 52 44 2c 20 50 44 57 4f 52 TE, DWORD, PDWOR
0c70: 44 29 3b 0d 0a 7d 0d 0a D);..}..