1 #ifndef _WINNLS32_ 2 #define _WINNLS32_ 3 4 #ifdef __cplusplus 5 extern "C" { 6 #endif 7 8 typedef struct _tagDATETIME 9 { 10 WORD year; 11 WORD month; 12 WORD day; 13 WORD hour; 14 WORD min; 15 WORD sec; 16 } DATETIME; 17 18 typedef struct _tagIMEPROA 19 { 20 HWND hWnd; 21 DATETIME InstDate; 22 UINT wVersion; 23 BYTE szDescription[50]; 24 BYTE szName[80]; 25 BYTE szOptions[30]; 26 } IMEPROA,*PIMEPROA,NEAR *NPIMEPROA,FAR *LPIMEPROA; 27 28 typedef struct _tagIMEPROW 29 { 30 HWND hWnd; 31 DATETIME InstDate; 32 UINT wVersion; 33 WCHAR szDescription[50]; 34 WCHAR szName[80]; 35 WCHAR szOptions[30]; 36 } IMEPROW,*PIMEPROW,NEAR *NPIMEPROW,FAR *LPIMEPROW; 37 38 #ifdef UNICODE 39 typedef IMEPROW IMEPRO; 40 typedef PIMEPROW PIMEPRO; 41 typedef NPIMEPROW NPIMEPRO; 42 typedef LPIMEPROW LPIMEPRO; 43 #define IMPGetIME IMPGetIMEW 44 #define IMPQueryIME IMPQueryIMEW 45 #define IMPSetIME IMPSetIMEW 46 #else 47 typedef IMEPROA IMEPRO; 48 typedef PIMEPROA PIMEPRO; 49 typedef NPIMEPROA NPIMEPRO; 50 typedef LPIMEPROA LPIMEPRO; 51 #define IMPGetIME IMPGetIMEA 52 #define IMPQueryIME IMPQueryIMEA 53 #define IMPSetIME IMPSetIMEA 54 #endif 55 56 BOOL WINAPI IMPGetIMEA(HWND, LPIMEPROA); 57 BOOL WINAPI IMPGetIMEW(HWND, LPIMEPROW); 58 BOOL WINAPI IMPQueryIMEA(LPIMEPROA); 59 BOOL WINAPI IMPQueryIMEW(LPIMEPROW); 60 BOOL WINAPI IMPSetIMEA(HWND, LPIMEPROA); 61 BOOL WINAPI IMPSetIMEW(HWND, LPIMEPROW); 62 UINT WINAPI WINNLSGetIMEHotkey(HWND); 63 BOOL WINAPI WINNLSEnableIME(HWND, BOOL); 64 BOOL WINAPI WINNLSGetEnableStatus(HWND); 65 66 #ifdef __cplusplus 67 } 68 #endif 69 70 #endif /* _USERENV_H */ 71