1 #ifndef _LMCHDEV_H 2 #define _LMCHDEV_H 3 4 #ifdef __cplusplus 5 extern "C" { 6 #endif 7 #define CHARDEVQ_NO_REQUESTS (-1) 8 #define CHARDEV_CLOSE 0 9 #define CHARDEVQ_MAX_PRIORITY 1 10 #define CHARDEVQ_DEV_PARMNUM 1 11 #define HANDLE_INFO_LEVEL_1 1 12 #define HANDLE_CHARTIME_PARMNUM 1 13 #define HANDLE_CHARCOUNT_PARMNUM 2 14 #define CHARDEV_STAT_OPENED 2 15 #define CHARDEVQ_PRIORITY_PARMNUM 2 16 #define CHARDEVQ_DEVS_PARMNUM 3 17 #define CHARDEV_STAT_ERROR 4 18 #define CHARDEVQ_NUMUSERS_PARMNUM 4 19 #define CHARDEVQ_NUMAHEAD_PARMNUM 5 20 #define CHARDEVQ_DEF_PRIORITY 5 21 #define CHARDEVQ_PRIORITY_INFOLEVEL (PARMNUM_BASE_INFOLEVEL+CHARDEVQ_PRIORITY_PARMNUM) 22 #define CHARDEVQ_DEVS_INFOLEVEL (PARMNUM_BASE_INFOLEVEL+CHARDEVQ_DEVS_PARMNUM) 23 #define CHARDEVQ_MIN_PRIORITY 9 24 typedef struct _CHARDEV_INFO_0 { LPWSTR ch0_dev; } CHARDEV_INFO_0,*PCHARDEV_INFO_0,*LPCHARDEV_INFO_0; 25 typedef struct _CHARDEV_INFO_1 { 26 LPWSTR ch1_dev; 27 DWORD ch1_status; 28 LPWSTR ch1_username; 29 DWORD ch1_time; 30 } CHARDEV_INFO_1,*PCHARDEV_INFO_1,*LPCHARDEV_INFO_1; 31 typedef struct _CHARDEVQ_INFO_0 { LPWSTR cq0_dev; } CHARDEVQ_INFO_0,*PCHARDEVQ_INFO_0,*LPCHARDEVQ_INFO_0; 32 typedef struct _CHARDEVQ_INFO_1 { 33 LPWSTR cq1_dev; 34 DWORD cq1_priority; 35 LPWSTR cq1_devs; 36 DWORD cq1_numusers; 37 DWORD cq1_numahead; 38 } CHARDEVQ_INFO_1,*PCHARDEVQ_INFO_1,*LPCHARDEVQ_INFO_1; 39 typedef struct _CHARDEVQ_INFO_1002 { DWORD cq1002_priority; } CHARDEVQ_INFO_1002,*PCHARDEVQ_INFO_1002,*LPCHARDEVQ_INFO_1002; 40 typedef struct _CHARDEVQ_INFO_1003 { LPWSTR cq1003_devs; } CHARDEVQ_INFO_1003,*PCHARDEVQ_INFO_1003,*LPCHARDEVQ_INFO_1003; 41 typedef struct _HANDLE_INFO_1 { 42 DWORD hdli1_chartime; 43 DWORD hdli1_charcount; 44 }HANDLE_INFO_1,*PHANDLE_INFO_1,*LPHANDLE_INFO_1; 45 NET_API_STATUS WINAPI NetCharDevEnum(LPCWSTR,DWORD,PBYTE*,DWORD,PDWORD,PDWORD,PDWORD); 46 NET_API_STATUS WINAPI NetCharDevGetInfo(LPCWSTR,LPCWSTR,DWORD,PBYTE*); 47 NET_API_STATUS WINAPI NetCharDevControl(LPCWSTR,LPCWSTR,DWORD); 48 NET_API_STATUS WINAPI NetCharDevQEnum(LPCWSTR,LPCWSTR,DWORD,PBYTE*,DWORD,PDWORD,PDWORD,PDWORD); 49 NET_API_STATUS WINAPI NetCharDevQGetInfo(LPCWSTR,LPCWSTR,LPCWSTR,DWORD,PBYTE*); 50 NET_API_STATUS WINAPI NetCharDevQSetInfo(LPCWSTR,LPCWSTR,DWORD,PBYTE,PDWORD); 51 NET_API_STATUS WINAPI NetCharDevQPurge(LPCWSTR,LPCWSTR); 52 NET_API_STATUS WINAPI NetCharDevQPurgeSelf(LPCWSTR,LPCWSTR,LPCWSTR); 53 NET_API_STATUS WINAPI NetHandleGetInfo(HANDLE,DWORD,PBYTE*); 54 NET_API_STATUS WINAPI NetHandleSetInfo(HANDLE,DWORD,PBYTE,DWORD,PDWORD); 55 #ifdef __cplusplus 56 } 57 #endif 58 #endif 59