home *** CD-ROM | disk | FTP | other *** search
/ H4CK3R 14 / hacker14.iso / programacao / cwin / c.exe / $INSTDIR / include / imm.h < prev    next >
Encoding:
C/C++ Source or Header  |  2003-12-15  |  14.5 KB  |  431 lines

  1. #ifndef _IMM_H
  2. #define _IMM_H
  3. #if __GNUC__ >=3
  4. #pragma GCC system_header
  5. #endif
  6.  
  7. #ifdef __cplusplus
  8. extern "C" {
  9. #endif
  10. #define WM_CONVERTREQUESTEX 0x108
  11. #define WM_IME_STARTCOMPOSITION 0x10D
  12. #define WM_IME_ENDCOMPOSITION 0x10E
  13. #define WM_IME_COMPOSITION 0x10F
  14. #define WM_IME_KEYLAST 0x10F
  15. #define WM_IME_SETCONTEXT 0x281
  16. #define WM_IME_NOTIFY 0x282
  17. #define WM_IME_CONTROL 0x283
  18. #define WM_IME_COMPOSITIONFULL 0x284
  19. #define WM_IME_SELECT 0x285
  20. #define WM_IME_CHAR 0x286
  21. #define WM_IME_KEYDOWN 0x290
  22. #define WM_IME_KEYUP 0x291
  23. #define IMC_GETCANDIDATEPOS 7
  24. #define IMC_SETCANDIDATEPOS 8
  25. #define IMC_GETCOMPOSITIONFONT 9
  26. #define IMC_SETCOMPOSITIONFONT 10
  27. #define IMC_GETCOMPOSITIONWINDOW 11
  28. #define IMC_SETCOMPOSITIONWINDOW 12
  29. #define IMC_GETSTATUSWINDOWPOS 15
  30. #define IMC_SETSTATUSWINDOWPOS 16
  31. #define IMC_CLOSESTATUSWINDOW 0x21
  32. #define IMC_OPENSTATUSWINDOW 0x22
  33. #define IMN_CLOSESTATUSWINDOW 1
  34. #define IMN_OPENSTATUSWINDOW 2
  35. #define IMN_CHANGECANDIDATE 3
  36. #define IMN_CLOSECANDIDATE 4
  37. #define IMN_OPENCANDIDATE 5
  38. #define IMN_SETCONVERSIONMODE 6
  39. #define IMN_SETSENTENCEMODE 7
  40. #define IMN_SETOPENSTATUS 8
  41. #define IMN_SETCANDIDATEPOS 9
  42. #define IMN_SETCOMPOSITIONFONT 10
  43. #define IMN_SETCOMPOSITIONWINDOW 11
  44. #define IMN_SETSTATUSWINDOWPOS 12
  45. #define IMN_GUIDELINE 13
  46. #define IMN_PRIVATE 14
  47. #define NI_OPENCANDIDATE 16
  48. #define NI_CLOSECANDIDATE 17
  49. #define NI_SELECTCANDIDATESTR 18
  50. #define NI_CHANGECANDIDATELIST 19
  51. #define NI_FINALIZECONVERSIONRESULT 20
  52. #define NI_COMPOSITIONSTR 21
  53. #define NI_SETCANDIDATE_PAGESTART 22
  54. #define NI_SETCANDIDATE_PAGESIZE 23
  55. #define NI_IMEMENUSELECTED 24
  56. #define ISC_SHOWUICANDIDATEWINDOW 1
  57. #define ISC_SHOWUICOMPOSITIONWINDOW 0x80000000
  58. #define ISC_SHOWUIGUIDELINE 0x40000000
  59. #define ISC_SHOWUIALLCANDIDATEWINDOW 15
  60. #define ISC_SHOWUIALL 0xC000000F
  61. #define CPS_COMPLETE 1
  62. #define CPS_CONVERT 2
  63. #define CPS_REVERT 3
  64. #define CPS_CANCEL 4
  65. #define IME_CHOTKEY_IME_NONIME_TOGGLE 16
  66. #define IME_CHOTKEY_SHAPE_TOGGLE 17
  67. #define IME_CHOTKEY_SYMBOL_TOGGLE 18
  68. #define IME_JHOTKEY_CLOSE_OPEN 0x30
  69. #define IME_KHOTKEY_SHAPE_TOGGLE 0x50
  70. #define IME_KHOTKEY_HANJACONVERT 0x51
  71. #define IME_KHOTKEY_ENGLISH 0x52
  72. #define IME_THOTKEY_IME_NONIME_TOGGLE 0x70
  73. #define IME_THOTKEY_SHAPE_TOGGLE 0x71
  74. #define IME_THOTKEY_SYMBOL_TOGGLE 0x72
  75. #define IME_HOTKEY_DSWITCH_FIRST 256
  76. #define IME_HOTKEY_DSWITCH_LAST 0x11F
  77. #define IME_ITHOTKEY_RESEND_RESULTSTR 512
  78. #define IME_ITHOTKEY_PREVIOUS_COMPOSITION 513
  79. #define IME_ITHOTKEY_UISTYLE_TOGGLE 514
  80. #define GCS_COMPREADSTR 1
  81. #define GCS_COMPREADATTR 2
  82. #define GCS_COMPREADCLAUSE 4
  83. #define GCS_COMPSTR 8
  84. #define GCS_COMPATTR 16
  85. #define GCS_COMPCLAUSE 32
  86. #define GCS_CURSORPOS 128
  87. #define GCS_DELTASTART 256
  88. #define GCS_RESULTREADSTR 512
  89. #define GCS_RESULTREADCLAUSE 1024
  90. #define GCS_RESULTSTR 2048
  91. #define GCS_RESULTCLAUSE 4096
  92. #define CS_INSERTCHAR 0x2000
  93. #define CS_NOMOVECARET 0x4000
  94. #define IMEVER_0310 0x3000A
  95. #define IMEVER_0400 0x40000
  96. #define IME_PROP_AT_CARET 0x10000
  97. #define IME_PROP_SPECIAL_UI 0x20000
  98. #define IME_PROP_CANDLIST_START_FROM_1 0x40000
  99. #define IME_PROP_UNICODE 0x80000
  100. #define UI_CAP_2700 1
  101. #define UI_CAP_ROT90 2
  102. #define UI_CAP_ROTANY 4
  103. #define SCS_CAP_COMPSTR 1
  104. #define SCS_CAP_MAKEREAD 2
  105. #define SELECT_CAP_CONVERSION 1
  106. #define SELECT_CAP_SENTENCE 2
  107. #define GGL_LEVEL 1
  108. #define GGL_INDEX 2
  109. #define GGL_STRING 3
  110. #define GGL_PRIVATE 4
  111. #define GL_LEVEL_NOGUIDELINE 0
  112. #define GL_LEVEL_FATAL 1
  113. #define GL_LEVEL_ERROR 2
  114. #define GL_LEVEL_WARNING 3
  115. #define GL_LEVEL_INFORMATION 4
  116. #define GL_ID_UNKNOWN 0
  117. #define GL_ID_NOMODULE 1
  118. #define GL_ID_NODICTIONARY 16
  119. #define GL_ID_CANNOTSAVE 17
  120. #define GL_ID_NOCONVERT 32
  121. #define GL_ID_TYPINGERROR 33
  122. #define GL_ID_TOOMANYSTROKE 34
  123. #define GL_ID_READINGCONFLICT 35
  124. #define GL_ID_INPUTREADING 36
  125. #define GL_ID_INPUTRADICAL 37
  126. #define GL_ID_INPUTCODE 38
  127. #define GL_ID_INPUTSYMBOL 39
  128. #define GL_ID_CHOOSECANDIDATE 40
  129. #define GL_ID_REVERSECONVERSION 41
  130. #define GL_ID_PRIVATE_FIRST 0x8000
  131. #define GL_ID_PRIVATE_LAST 0xFFFF
  132. #define IGP_GETIMEVERSION (DWORD)(-4)
  133. #define IGP_PROPERTY 4
  134. #define IGP_CONVERSION 8
  135. #define IGP_SENTENCE 12
  136. #define IGP_UI 16
  137. #define IGP_SETCOMPSTR 0x14
  138. #define IGP_SELECT 0x18
  139. #define SCS_SETSTR (GCS_COMPREADSTR|GCS_COMPSTR)
  140. #define SCS_CHANGEATTR (GCS_COMPREADATTR|GCS_COMPATTR)
  141. #define SCS_CHANGECLAUSE (GCS_COMPREADCLAUSE|GCS_COMPCLAUSE)
  142. #define ATTR_INPUT 0
  143. #define ATTR_TARGET_CONVERTED 1
  144. #define ATTR_CONVERTED 2
  145. #define ATTR_TARGET_NOTCONVERTED 3
  146. #define ATTR_INPUT_ERROR 4
  147. #define ATTR_FIXEDCONVERTED 5
  148. #define CFS_DEFAULT 0
  149. #define CFS_RECT 1
  150. #define CFS_POINT 2
  151. #define CFS_SCREEN 4
  152. #define CFS_FORCE_POSITION 32
  153. #define CFS_CANDIDATEPOS 64
  154. #define CFS_EXCLUDE 128
  155. #define GCL_CONVERSION 1
  156. #define GCL_REVERSECONVERSION 2
  157. #define GCL_REVERSE_LENGTH 3
  158. #define IME_CMODE_ALPHANUMERIC 0
  159. #define IME_CMODE_NATIVE 1
  160. #define IME_CMODE_CHINESE IME_CMODE_NATIVE
  161. #define IME_CMODE_HANGEUL IME_CMODE_NATIVE
  162. #define IME_CMODE_HANGUL IME_CMODE_NATIVE
  163. #define IME_CMODE_JAPANESE IME_CMODE_NATIVE
  164. #define IME_CMODE_KATAKANA 2
  165. #define IME_CMODE_LANGUAGE 3
  166. #define IME_CMODE_FULLSHAPE 8
  167. #define IME_CMODE_ROMAN 16
  168. #define IME_CMODE_CHARCODE 32
  169. #define IME_CMODE_HANJACONVERT 64
  170. #define IME_CMODE_SOFTKBD 128
  171. #define IME_CMODE_NOCONVERSION 256
  172. #define IME_CMODE_EUDC 512
  173. #define IME_CMODE_SYMBOL 1024
  174. #define IME_CMODE_FIXED 2048
  175. #define IME_SMODE_NONE 0
  176. #define IME_SMODE_PLAURALCLAUSE 1
  177. #define IME_SMODE_SINGLECONVERT 2
  178. #define IME_SMODE_AUTOMATIC 4
  179. #define IME_SMODE_PHRASEPREDICT 8
  180. #define IME_CAND_UNKNOWN 0
  181. #define IME_CAND_READ 1
  182. #define IME_CAND_CODE 2
  183. #define IME_CAND_MEANING 3
  184. #define IME_CAND_RADICAL 4
  185. #define IME_CAND_STROKE 5
  186. #define IMM_ERROR_NODATA (-1)
  187. #define IMM_ERROR_GENERAL (-2)
  188. #define IME_CONFIG_GENERAL 1
  189. #define IME_CONFIG_REGISTERWORD 2
  190. #define IME_CONFIG_SELECTDICTIONARY 3
  191. #define IME_ESC_QUERY_SUPPORT 3
  192. #define IME_ESC_RESERVED_FIRST 4
  193. #define IME_ESC_RESERVED_LAST 0x7FF
  194. #define IME_ESC_PRIVATE_FIRST 0x800
  195. #define IME_ESC_PRIVATE_LAST 0xFFF
  196. #define IME_ESC_SEQUENCE_TO_INTERNAL 0x1001
  197. #define IME_ESC_GET_EUDC_DICTIONARY 0x1003
  198. #define IME_ESC_SET_EUDC_DICTIONARY 0x1004
  199. #define IME_ESC_MAX_KEY 0x1005
  200. #define IME_ESC_IME_NAME 0x1006
  201. #define IME_ESC_SYNC_HOTKEY 0x1007
  202. #define IME_ESC_HANJA_MODE 0x1008
  203. #define IME_ESC_AUTOMATA 0x1009
  204. #define IME_REGWORD_STYLE_EUDC 1
  205. #define IME_REGWORD_STYLE_USER_FIRST 0x80000000
  206. #define IME_REGWORD_STYLE_USER_LAST 0xFFFFFFFF
  207. #define SOFTKEYBOARD_TYPE_T1 1
  208. #define SOFTKEYBOARD_TYPE_C1 2
  209. #define IMEMENUITEM_STRING_SIZE 80
  210. #define MOD_ALT 1
  211. #define MOD_CONTROL 2
  212. #define MOD_SHIFT 4
  213. #define MOD_WIN 8
  214. #define MOD_IGNORE_ALL_MODIFIER 1024
  215. #define MOD_ON_KEYUP  2048
  216. #define MOD_RIGHT 16384
  217. #define MOD_LEFT 32768
  218. #define IACE_CHILDREN 1
  219. #define IACE_DEFAULT 16
  220. #define IACE_IGNORENOCONTEXT 32
  221. #define IGIMIF_RIGHTMENU 1
  222. #define IGIMII_CMODE 1
  223. #define IGIMII_SMODE 2
  224. #define IGIMII_CONFIGURE 4
  225. #define IGIMII_TOOLS 8
  226. #define IGIMII_HELP 16
  227. #define IGIMII_OTHER 32
  228. #define IGIMII_INPUTTOOLS 64
  229. #define IMFT_RADIOCHECK 1
  230. #define IMFT_SEPARATOR 2
  231. #define IMFT_SUBMENU 4
  232. #define IMFS_GRAYED MFS_GRAYED
  233. #define IMFS_DISABLED MFS_DISABLED
  234. #define IMFS_CHECKED MFS_CHECKED
  235. #define IMFS_HILITE MFS_HILITE
  236. #define IMFS_ENABLED MFS_ENABLED
  237. #define IMFS_UNCHECKED MFS_UNCHECKED
  238. #define IMFS_UNHILITE MFS_UNHILITE
  239. #define IMFS_DEFAULT MFS_DEFAULT
  240. #ifndef VK_PROCESSKEY
  241. #define VK_PROCESSKEY 0x0E5
  242. #endif
  243. #define STYLE_DESCRIPTION_SIZE 32
  244. typedef DWORD HIMC;
  245. typedef DWORD HIMCC;
  246. typedef HKL *LPHKL;
  247. typedef struct tagCOMPOSITIONFORM {
  248.     DWORD dwStyle;
  249.     POINT ptCurrentPos;
  250.     RECT rcArea;
  251. } COMPOSITIONFORM,*PCOMPOSITIONFORM,*LPCOMPOSITIONFORM;
  252. typedef struct tagCANDIDATEFORM {
  253.     DWORD dwIndex;
  254.     DWORD dwStyle;
  255.     POINT ptCurrentPos;
  256.     RECT rcArea;
  257. } CANDIDATEFORM,*PCANDIDATEFORM,*LPCANDIDATEFORM;
  258. typedef struct tagCANDIDATELIST {
  259.     DWORD dwSize;
  260.     DWORD dwStyle;
  261.     DWORD dwCount;
  262.     DWORD dwSelection;
  263.     DWORD dwPageStart;
  264.     DWORD dwPageSize;
  265.     DWORD dwOffset[1];
  266. } CANDIDATELIST,*PCANDIDATELIST,*LPCANDIDATELIST;
  267. typedef struct tagREGISTERWORDA {
  268.     LPSTR lpReading;
  269.     LPSTR lpWord;
  270. } REGISTERWORDA,*PREGISTERWORDA,*LPREGISTERWORDA;
  271. typedef struct tagREGISTERWORDW {
  272.     LPWSTR lpReading;
  273.     LPWSTR lpWord;
  274. } REGISTERWORDW,*PREGISTERWORDW,*LPREGISTERWORDW;
  275. typedef struct tagSTYLEBUFA {
  276.     DWORD dwStyle;
  277.     CHAR szDescription[STYLE_DESCRIPTION_SIZE];
  278. } STYLEBUFA,*PSTYLEBUFA,*LPSTYLEBUFA;
  279. typedef struct tagSTYLEBUFW {
  280.     DWORD dwStyle;
  281.     WCHAR szDescription[STYLE_DESCRIPTION_SIZE];
  282. } STYLEBUFW,*PSTYLEBUFW,*LPSTYLEBUFW;
  283. typedef struct tagIMEMENUITEMINFOA {
  284.     UINT cbSize;
  285.     UINT fType;
  286.     UINT fState;
  287.     UINT wID;
  288.     HBITMAP hbmpChecked;
  289.     HBITMAP hbmpUnchecked;
  290.     DWORD dwItemData;
  291.     CHAR szString[IMEMENUITEM_STRING_SIZE];
  292.     HBITMAP hbmpItem;
  293. } IMEMENUITEMINFOA,*PIMEMENUITEMINFOA,*LPIMEMENUITEMINFOA;
  294. typedef struct tagIMEMENUITEMINFOW {
  295.     UINT cbSize;
  296.     UINT fType;
  297.     UINT fState;
  298.     UINT wID;
  299.     HBITMAP hbmpChecked;
  300.     HBITMAP hbmpUnchecked;
  301.     DWORD dwItemData;
  302.     WCHAR szString[IMEMENUITEM_STRING_SIZE];
  303.     HBITMAP hbmpItem;
  304. } IMEMENUITEMINFOW,*PIMEMENUITEMINFOW,*LPIMEMENUITEMINFOW;
  305. typedef int (CALLBACK *REGISTERWORDENUMPROCA)(LPCSTR, DWORD, LPCSTR, LPVOID);
  306. typedef int (CALLBACK *REGISTERWORDENUMPROCW)(LPCWSTR, DWORD, LPCWSTR, LPVOID);
  307. #ifdef UNICODE
  308. #define REGISTERWORDENUMPROC REGISTERWORDENUMPROCW
  309. typedef REGISTERWORDW REGISTERWORD,*PREGISTERWORD,*LPREGISTERWORD;
  310. typedef STYLEBUFW STYLEBUF,*PSTYLEBUF,*LPSTYLEBUF;
  311. typedef IMEMENUITEMINFOW IMEMENUITEMINFO,*PIMEMENUITEMINFO,*LPIMEMENUITEMINFO;
  312. #else
  313. #define REGISTERWORDENUMPROC REGISTERWORDENUMPROCA
  314. typedef REGISTERWORDA REGISTERWORD,*PREGISTERWORD,*LPREGISTERWORD;
  315. typedef STYLEBUFA STYLEBUF,*PSTYLEBUF,*LPSTYLEBUF;
  316. typedef IMEMENUITEMINFOA IMEMENUITEMINFO,*PIMEMENUITEMINFO,*LPIMEMENUITEMINFO;
  317. #endif
  318. HKL WINAPI ImmInstallIMEA(LPCSTR,LPCSTR);
  319. HKL WINAPI ImmInstallIMEW(LPCWSTR,LPCWSTR);
  320. HWND WINAPI ImmGetDefaultIMEWnd(HWND);
  321. UINT WINAPI ImmGetDescriptionA(HKL,LPSTR,UINT);
  322. UINT WINAPI ImmGetDescriptionW(HKL,LPWSTR,UINT);
  323. UINT WINAPI ImmGetIMEFileNameA(HKL,LPSTR,UINT);
  324. UINT WINAPI ImmGetIMEFileNameW(HKL,LPWSTR,UINT);
  325. DWORD WINAPI ImmGetProperty(HKL,DWORD);
  326. BOOL WINAPI ImmIsIME(HKL);
  327. BOOL WINAPI ImmSimulateHotKey(HWND,DWORD);
  328. HIMC WINAPI ImmCreateContext(void);
  329. BOOL WINAPI ImmDestroyContext(HIMC);
  330. HIMC WINAPI ImmGetContext(HWND);
  331. BOOL WINAPI ImmReleaseContext(HWND,HIMC);
  332. HIMC WINAPI ImmAssociateContext(HWND,HIMC);
  333. LONG WINAPI ImmGetCompositionStringA(HIMC,DWORD,PVOID,DWORD);
  334. LONG WINAPI ImmGetCompositionStringW(HIMC,DWORD,PVOID,DWORD);
  335. BOOL WINAPI ImmSetCompositionStringA(HIMC,DWORD,PCVOID,DWORD,PCVOID,DWORD);
  336. BOOL WINAPI ImmSetCompositionStringW(HIMC,DWORD,PCVOID,DWORD,PCVOID,DWORD);
  337. DWORD WINAPI ImmGetCandidateListCountA(HIMC,PDWORD);
  338. DWORD WINAPI ImmGetCandidateListCountW(HIMC,PDWORD);
  339. DWORD WINAPI ImmGetCandidateListA(HIMC,DWORD,PCANDIDATELIST,DWORD);
  340. DWORD WINAPI ImmGetCandidateListW(HIMC,DWORD,PCANDIDATELIST,DWORD);
  341. DWORD WINAPI ImmGetGuideLineA(HIMC,DWORD,LPSTR,DWORD);
  342. DWORD WINAPI ImmGetGuideLineW(HIMC,DWORD,LPWSTR,DWORD);
  343. BOOL WINAPI ImmGetConversionStatus(HIMC,LPDWORD,PDWORD);
  344. BOOL WINAPI ImmSetConversionStatus(HIMC,DWORD,DWORD);
  345. BOOL WINAPI ImmGetOpenStatus(HIMC);
  346. BOOL WINAPI ImmSetOpenStatus(HIMC,BOOL);
  347. #ifndef NOGDI
  348. BOOL WINAPI ImmGetCompositionFontA(HIMC,LPLOGFONTA);
  349. BOOL WINAPI ImmGetCompositionFontW(HIMC,LPLOGFONTW);
  350. BOOL WINAPI ImmSetCompositionFontA(HIMC,LPLOGFONTA);
  351. BOOL WINAPI ImmSetCompositionFontW(HIMC,LPLOGFONTW);
  352. #endif
  353. BOOL WINAPI ImmConfigureIMEA(HKL,HWND,DWORD,PVOID);
  354. BOOL WINAPI ImmConfigureIMEW(HKL,HWND,DWORD,PVOID);
  355. LRESULT WINAPI ImmEscapeA(HKL,HIMC,UINT,PVOID);
  356. LRESULT WINAPI ImmEscapeW(HKL,HIMC,UINT,PVOID);
  357. DWORD WINAPI ImmGetConversionListA(HKL,HIMC,LPCSTR,PCANDIDATELIST,DWORD,UINT);
  358. DWORD WINAPI ImmGetConversionListW(HKL,HIMC,LPCWSTR,PCANDIDATELIST,DWORD,UINT);
  359. BOOL WINAPI ImmNotifyIME(HIMC,DWORD,DWORD,DWORD);
  360. BOOL WINAPI ImmGetStatusWindowPos(HIMC,LPPOINT);
  361. BOOL WINAPI ImmSetStatusWindowPos(HIMC,LPPOINT);
  362. BOOL WINAPI ImmGetCompositionWindow(HIMC,PCOMPOSITIONFORM);
  363. BOOL WINAPI ImmSetCompositionWindow(HIMC,PCOMPOSITIONFORM);
  364. BOOL WINAPI ImmGetCandidateWindow(HIMC,DWORD,PCANDIDATEFORM);
  365. BOOL WINAPI ImmSetCandidateWindow(HIMC,PCANDIDATEFORM);
  366. BOOL WINAPI ImmIsUIMessageA(HWND,UINT,WPARAM,LPARAM);
  367. BOOL WINAPI ImmIsUIMessageW(HWND,UINT,WPARAM,LPARAM);
  368. UINT WINAPI ImmGetVirtualKey(HWND);
  369. BOOL WINAPI ImmRegisterWordA(HKL,LPCSTR,DWORD,LPCSTR);
  370. BOOL WINAPI ImmRegisterWordW(HKL,LPCWSTR,DWORD,LPCWSTR);
  371. BOOL WINAPI ImmUnregisterWordA(HKL,LPCSTR,DWORD,LPCSTR);
  372. BOOL WINAPI ImmUnregisterWordW(HKL,LPCWSTR,DWORD,LPCWSTR);
  373. UINT WINAPI ImmGetRegisterWordStyleA(HKL,UINT,PSTYLEBUFA);
  374. UINT WINAPI ImmGetRegisterWordStyleW(HKL,UINT,PSTYLEBUFW);
  375. UINT WINAPI ImmEnumRegisterWordA(HKL,REGISTERWORDENUMPROCA,LPCSTR,DWORD,LPCSTR,PVOID);
  376. UINT WINAPI ImmEnumRegisterWordW(HKL,REGISTERWORDENUMPROCW,LPCWSTR,DWORD,LPCWSTR,PVOID);
  377. BOOL WINAPI EnableEUDC(BOOL);
  378. BOOL WINAPI ImmDisableIME(DWORD);
  379. DWORD WINAPI ImmGetImeMenuItemsA(HIMC,DWORD,DWORD,LPIMEMENUITEMINFOA,LPIMEMENUITEMINFOA,DWORD);
  380. DWORD WINAPI ImmGetImeMenuItemsW(HIMC,DWORD,DWORD,LPIMEMENUITEMINFOW,LPIMEMENUITEMINFOW,DWORD);
  381.  
  382. #ifdef UNICODE
  383. #define ImmEnumRegisterWord ImmEnumRegisterWordW
  384. #define ImmGetRegisterWordStyle ImmGetRegisterWordStyleW
  385. #define ImmUnregisterWord ImmUnregisterWordW
  386. #define ImmRegisterWord ImmRegisterWordW
  387. #define ImmInstallIME ImmInstallIMEW
  388. #define ImmIsUIMessage ImmIsUIMessageW
  389. #define ImmGetConversionList ImmGetConversionListW
  390. #define ImmEscape ImmEscapeW
  391. #define ImmConfigureIME ImmConfigureIMEW
  392. #ifndef NOGDI
  393. #define ImmSetCompositionFont ImmSetCompositionFontW
  394. #define ImmGetCompositionFont ImmGetCompositionFontW
  395. #endif
  396. #define ImmGetGuideLine ImmGetGuideLineW
  397. #define ImmGetCandidateList ImmGetCandidateListW
  398. #define ImmGetCandidateListCount ImmGetCandidateListCountW
  399. #define ImmSetCompositionString ImmSetCompositionStringW
  400. #define ImmGetCompositionString ImmGetCompositionStringW
  401. #define ImmGetDescription ImmGetDescriptionW
  402. #define ImmGetIMEFileName ImmGetIMEFileNameW
  403. #define ImmGetImeMenuItems ImmGetImeMenuItemsW
  404. #else
  405. #define ImmEnumRegisterWord ImmEnumRegisterWordA
  406. #define ImmGetRegisterWordStyle ImmGetRegisterWordStyleA
  407. #define ImmUnregisterWord ImmUnregisterWordA
  408. #define ImmRegisterWord ImmRegisterWordA
  409. #define ImmInstallIME ImmInstallIMEA
  410. #define ImmIsUIMessage ImmIsUIMessageA
  411. #define ImmGetConversionList ImmGetConversionListA
  412. #define ImmEscape ImmEscapeA
  413. #define ImmConfigureIME ImmConfigureIMEA
  414. #ifndef NOGDI
  415. #define ImmSetCompositionFont ImmSetCompositionFontA
  416. #define ImmGetCompositionFont ImmGetCompositionFontA
  417. #endif
  418. #define ImmGetGuideLine ImmGetGuideLineA
  419. #define ImmGetCandidateList ImmGetCandidateListA
  420. #define ImmGetCandidateListCount ImmGetCandidateListCountA
  421. #define ImmSetCompositionString ImmSetCompositionStringA
  422. #define ImmGetCompositionString ImmGetCompositionStringA
  423. #define ImmGetDescription ImmGetDescriptionA
  424. #define ImmGetIMEFileName ImmGetIMEFileNameA
  425. #define ImmGetImeMenuItems ImmGetImeMenuItemsW
  426. #endif
  427. #ifdef __cplusplus
  428. }
  429. #endif
  430. #endif
  431.