1/** 2 * Windows API header module 3 * 4 * Translated from MinGW Windows headers 5 * 6 * License: $(LINK2 http://www.boost.org/LICENSE_1_0.txt, Boost License 1.0) 7 * Source: $(DRUNTIMESRC core/sys/windows/_lmchdev.d) 8 */ 9module core.sys.windows.lmchdev; 10version (Windows): 11@system: 12 13// COMMENT: This file might be deprecated. 14 15import core.sys.windows.lmcons, core.sys.windows.windef; 16 17enum CHARDEVQ_NO_REQUESTS = -1; 18enum CHARDEV_CLOSE = 0; 19enum CHARDEVQ_MAX_PRIORITY = 1; 20enum CHARDEVQ_DEV_PARMNUM = 1; 21 22enum HANDLE_INFO_LEVEL_1 = 1; 23enum HANDLE_CHARTIME_PARMNUM = 1; 24enum HANDLE_CHARCOUNT_PARMNUM = 2; 25 26enum CHARDEV_STAT_OPENED = 2; 27enum CHARDEVQ_PRIORITY_PARMNUM = 2; 28enum CHARDEVQ_DEVS_PARMNUM = 3; 29enum CHARDEV_STAT_ERROR = 4; 30enum CHARDEVQ_NUMUSERS_PARMNUM = 4; 31enum CHARDEVQ_NUMAHEAD_PARMNUM = 5; 32enum CHARDEVQ_DEF_PRIORITY = 5; 33enum CHARDEVQ_PRIORITY_INFOLEVEL = PARMNUM_BASE_INFOLEVEL+CHARDEVQ_PRIORITY_PARMNUM; 34enum CHARDEVQ_DEVS_INFOLEVEL = PARMNUM_BASE_INFOLEVEL+CHARDEVQ_DEVS_PARMNUM; 35enum CHARDEVQ_MIN_PRIORITY = 9; 36 37struct CHARDEV_INFO_0 { 38 LPWSTR ch0_dev; 39} 40alias CHARDEV_INFO_0* PCHARDEV_INFO_0, LPCHARDEV_INFO_0; 41 42struct CHARDEV_INFO_1{ 43 LPWSTR ch1_dev; 44 DWORD ch1_status; 45 LPWSTR ch1_username; 46 DWORD ch1_time; 47} 48alias CHARDEV_INFO_1* PCHARDEV_INFO_1, LPCHARDEV_INFO_1; 49 50struct CHARDEVQ_INFO_0 { 51 LPWSTR cq0_dev; 52} 53alias CHARDEVQ_INFO_0* PCHARDEVQ_INFO_0, LPCHARDEVQ_INFO_0; 54 55struct CHARDEVQ_INFO_1{ 56 LPWSTR cq1_dev; 57 DWORD cq1_priority; 58 LPWSTR cq1_devs; 59 DWORD cq1_numusers; 60 DWORD cq1_numahead; 61} 62alias CHARDEVQ_INFO_1* PCHARDEVQ_INFO_1, LPCHARDEVQ_INFO_1; 63 64struct CHARDEVQ_INFO_1002 { 65 DWORD cq1002_priority; 66} 67alias CHARDEVQ_INFO_1002* PCHARDEVQ_INFO_1002, LPCHARDEVQ_INFO_1002; 68 69struct CHARDEVQ_INFO_1003 { 70 LPWSTR cq1003_devs; 71} 72alias CHARDEVQ_INFO_1003* PCHARDEVQ_INFO_1003, LPCHARDEVQ_INFO_1003; 73 74struct HANDLE_INFO_1{ 75 DWORD hdli1_chartime; 76 DWORD hdli1_charcount; 77} 78alias HANDLE_INFO_1* PHANDLE_INFO_1, LPHANDLE_INFO_1; 79 80extern (Windows) { 81 NET_API_STATUS NetCharDevEnum(LPCWSTR, DWORD, PBYTE*, DWORD, PDWORD, PDWORD, PDWORD); 82 NET_API_STATUS NetCharDevGetInfo(LPCWSTR, LPCWSTR, DWORD, PBYTE*); 83 NET_API_STATUS NetCharDevControl(LPCWSTR, LPCWSTR, DWORD); 84 NET_API_STATUS NetCharDevQEnum(LPCWSTR, LPCWSTR, DWORD, PBYTE*, DWORD, PDWORD, PDWORD, PDWORD); 85 NET_API_STATUS NetCharDevQGetInfo(LPCWSTR, LPCWSTR, LPCWSTR, DWORD, PBYTE*); 86 NET_API_STATUS NetCharDevQSetInfo(LPCWSTR, LPCWSTR, DWORD, PBYTE, PDWORD); 87 NET_API_STATUS NetCharDevQPurge(LPCWSTR, LPCWSTR); 88 NET_API_STATUS NetCharDevQPurgeSelf(LPCWSTR, LPCWSTR, LPCWSTR); 89 NET_API_STATUS NetHandleGetInfo(HANDLE, DWORD, PBYTE*); 90 NET_API_STATUS NetHandleSetInfo(HANDLE, DWORD, PBYTE, DWORD, PDWORD); 91} 92