Dimm.h
上传用户:dzyhzl
上传日期:2019-04-29
资源大小:56270k
文件大小:206k
源码类别:

模拟服务器

开发平台:

C/C++

  1. #pragma warning( disable: 4049 )  /* more than 64k source lines */
  2. /* this ALWAYS GENERATED file contains the definitions for the interfaces */
  3.  /* File created by MIDL compiler version 6.00.0347 */
  4. /* Compiler settings for dimm.idl:
  5.     Oicf, W1, Zp8, env=Win32 (32b run)
  6.     protocol : dce , ms_ext, c_ext
  7.     error checks: allocation ref bounds_check enum stub_data 
  8.     VC __declspec() decoration level: 
  9.          __declspec(uuid()), __declspec(selectany), __declspec(novtable)
  10.          DECLSPEC_UUID(), MIDL_INTERFACE()
  11. */
  12. //@@MIDL_FILE_HEADING(  )
  13. /* verify that the <rpcndr.h> version is high enough to compile this file*/
  14. #ifndef __REQUIRED_RPCNDR_H_VERSION__
  15. #define __REQUIRED_RPCNDR_H_VERSION__ 440
  16. #endif
  17. #include "rpc.h"
  18. #include "rpcndr.h"
  19. #ifndef __dimm_h__
  20. #define __dimm_h__
  21. #if defined(_MSC_VER) && (_MSC_VER >= 1020)
  22. #pragma once
  23. #endif
  24. /* Forward Declarations */ 
  25. #ifndef __IEnumRegisterWordA_FWD_DEFINED__
  26. #define __IEnumRegisterWordA_FWD_DEFINED__
  27. typedef interface IEnumRegisterWordA IEnumRegisterWordA;
  28. #endif  /* __IEnumRegisterWordA_FWD_DEFINED__ */
  29. #ifndef __IEnumRegisterWordW_FWD_DEFINED__
  30. #define __IEnumRegisterWordW_FWD_DEFINED__
  31. typedef interface IEnumRegisterWordW IEnumRegisterWordW;
  32. #endif  /* __IEnumRegisterWordW_FWD_DEFINED__ */
  33. #ifndef __IEnumInputContext_FWD_DEFINED__
  34. #define __IEnumInputContext_FWD_DEFINED__
  35. typedef interface IEnumInputContext IEnumInputContext;
  36. #endif  /* __IEnumInputContext_FWD_DEFINED__ */
  37. #ifndef __IActiveIMMRegistrar_FWD_DEFINED__
  38. #define __IActiveIMMRegistrar_FWD_DEFINED__
  39. typedef interface IActiveIMMRegistrar IActiveIMMRegistrar;
  40. #endif  /* __IActiveIMMRegistrar_FWD_DEFINED__ */
  41. #ifndef __IActiveIMMMessagePumpOwner_FWD_DEFINED__
  42. #define __IActiveIMMMessagePumpOwner_FWD_DEFINED__
  43. typedef interface IActiveIMMMessagePumpOwner IActiveIMMMessagePumpOwner;
  44. #endif  /* __IActiveIMMMessagePumpOwner_FWD_DEFINED__ */
  45. #ifndef __IActiveIMMApp_FWD_DEFINED__
  46. #define __IActiveIMMApp_FWD_DEFINED__
  47. typedef interface IActiveIMMApp IActiveIMMApp;
  48. #endif  /* __IActiveIMMApp_FWD_DEFINED__ */
  49. #ifndef __IActiveIMMIME_FWD_DEFINED__
  50. #define __IActiveIMMIME_FWD_DEFINED__
  51. typedef interface IActiveIMMIME IActiveIMMIME;
  52. #endif  /* __IActiveIMMIME_FWD_DEFINED__ */
  53. #ifndef __IActiveIME_FWD_DEFINED__
  54. #define __IActiveIME_FWD_DEFINED__
  55. typedef interface IActiveIME IActiveIME;
  56. #endif  /* __IActiveIME_FWD_DEFINED__ */
  57. #ifndef __IActiveIME2_FWD_DEFINED__
  58. #define __IActiveIME2_FWD_DEFINED__
  59. typedef interface IActiveIME2 IActiveIME2;
  60. #endif  /* __IActiveIME2_FWD_DEFINED__ */
  61. #ifndef __CActiveIMM_FWD_DEFINED__
  62. #define __CActiveIMM_FWD_DEFINED__
  63. #ifdef __cplusplus
  64. typedef class CActiveIMM CActiveIMM;
  65. #else
  66. typedef struct CActiveIMM CActiveIMM;
  67. #endif /* __cplusplus */
  68. #endif  /* __CActiveIMM_FWD_DEFINED__ */
  69. /* header files for imported files */
  70. #include "unknwn.h"
  71. #ifdef __cplusplus
  72. extern "C"{
  73. #endif 
  74. void * __RPC_USER MIDL_user_allocate(size_t);
  75. void __RPC_USER MIDL_user_free( void * ); 
  76. /* interface __MIDL_itf_dimm_0000 */
  77. /* [local] */ 
  78. //=--------------------------------------------------------------------------=
  79. // dimm.h
  80. //=--------------------------------------------------------------------------=
  81. // (C) Copyright 1995-1998 Microsoft Corporation.  All Rights Reserved.
  82. //
  83. // THIS CODE AND INFORMATION IS PROVIDED "AS IS" WITHOUT WARRANTY OF
  84. // ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING BUT NOT LIMITED TO
  85. // THE IMPLIED WARRANTIES OF MERCHANTABILITY AND/OR FITNESS FOR A
  86. // PARTICULAR PURPOSE.
  87. //=--------------------------------------------------------------------------=
  88. #pragma comment(lib,"uuid.lib")
  89. //--------------------------------------------------------------------------
  90. // IActiveIMM Interfaces.
  91. extern RPC_IF_HANDLE __MIDL_itf_dimm_0000_v0_0_c_ifspec;
  92. extern RPC_IF_HANDLE __MIDL_itf_dimm_0000_v0_0_s_ifspec;
  93. #ifndef __ActiveIMM_LIBRARY_DEFINED__
  94. #define __ActiveIMM_LIBRARY_DEFINED__
  95. /* library ActiveIMM */
  96. /* [version][lcid][helpstring][uuid] */ 
  97. #include <imm.h>
  98. #if 0
  99. typedef WORD LANGID;
  100. typedef /* [public][public][public][public] */ struct __MIDL___MIDL_itf_dimm_0000_0001
  101.     {
  102.     LPSTR lpReading;
  103.     LPSTR lpWord;
  104.     }  REGISTERWORDA;
  105. typedef /* [public][public][public][public][public] */ struct __MIDL___MIDL_itf_dimm_0000_0002
  106.     {
  107.     LPWSTR lpReading;
  108.     LPWSTR lpWord;
  109.     }  REGISTERWORDW;
  110. typedef /* [public][public][public][public][public][public][public] */ struct __MIDL___MIDL_itf_dimm_0000_0003
  111.     {
  112.     LONG lfHeight;
  113.     LONG lfWidth;
  114.     LONG lfEscapement;
  115.     LONG lfOrientation;
  116.     LONG lfWeight;
  117.     BYTE lfItalic;
  118.     BYTE lfUnderline;
  119.     BYTE lfStrikeOut;
  120.     BYTE lfCharSet;
  121.     BYTE lfOutPrecision;
  122.     BYTE lfClipPrecision;
  123.     BYTE lfQuality;
  124.     BYTE lfPitchAndFamily;
  125.     CHAR lfFaceName[ 32 ];
  126.     }  LOGFONTA;
  127. typedef /* [public][public][public][public][public][public][public] */ struct __MIDL___MIDL_itf_dimm_0000_0004
  128.     {
  129.     LONG lfHeight;
  130.     LONG lfWidth;
  131.     LONG lfEscapement;
  132.     LONG lfOrientation;
  133.     LONG lfWeight;
  134.     BYTE lfItalic;
  135.     BYTE lfUnderline;
  136.     BYTE lfStrikeOut;
  137.     BYTE lfCharSet;
  138.     BYTE lfOutPrecision;
  139.     BYTE lfClipPrecision;
  140.     BYTE lfQuality;
  141.     BYTE lfPitchAndFamily;
  142.     WCHAR lfFaceName[ 32 ];
  143.     }  LOGFONTW;
  144. typedef DWORD HIMC;
  145. typedef DWORD HIMCC;
  146. typedef /* [public][public][public][public][public][public][public] */ struct __MIDL___MIDL_itf_dimm_0000_0005
  147.     {
  148.     DWORD dwIndex;
  149.     DWORD dwStyle;
  150.     POINT ptCurrentPos;
  151.     RECT rcArea;
  152.     }  CANDIDATEFORM;
  153. typedef /* [public][public][public][public][public][public][public] */ struct __MIDL___MIDL_itf_dimm_0000_0006
  154.     {
  155.     DWORD dwStyle;
  156.     POINT ptCurrentPos;
  157.     RECT rcArea;
  158.     }  COMPOSITIONFORM;
  159. typedef /* [public][public][public][public][public][public][public][public][public][public] */ struct __MIDL___MIDL_itf_dimm_0000_0007
  160.     {
  161.     DWORD dwSize;
  162.     DWORD dwStyle;
  163.     DWORD dwCount;
  164.     DWORD dwSelection;
  165.     DWORD dwPageStart;
  166.     DWORD dwPageSize;
  167.     DWORD dwOffset[ 1 ];
  168.     }  CANDIDATELIST;
  169. typedef /* [public][public][public] */ struct __MIDL___MIDL_itf_dimm_0000_0008
  170.     {
  171.     DWORD dwStyle;
  172.     CHAR szDescription[ 32 ];
  173.     }  STYLEBUFA;
  174. typedef /* [public][public][public][public] */ struct __MIDL___MIDL_itf_dimm_0000_0009
  175.     {
  176.     DWORD dwStyle;
  177.     WCHAR szDescription[ 32 ];
  178.     }  STYLEBUFW;
  179. typedef WORD ATOM;
  180. #endif
  181. #if (WINVER < 0x040A)
  182. typedef /* [public][public][public][public][public] */ struct __MIDL___MIDL_itf_dimm_0000_0010
  183.     {
  184.     UINT cbSize;
  185.     UINT fType;
  186.     UINT fState;
  187.     UINT wID;
  188.     HBITMAP hbmpChecked;
  189.     HBITMAP hbmpUnchecked;
  190.     DWORD dwItemData;
  191.     CHAR szString[ 80 ];
  192.     HBITMAP hbmpItem;
  193.     }  IMEMENUITEMINFOA;
  194. typedef /* [public][public][public][public][public] */ struct __MIDL___MIDL_itf_dimm_0000_0011
  195.     {
  196.     UINT cbSize;
  197.     UINT fType;
  198.     UINT fState;
  199.     UINT wID;
  200.     HBITMAP hbmpChecked;
  201.     HBITMAP hbmpUnchecked;
  202.     DWORD dwItemData;
  203.     WCHAR szString[ 80 ];
  204.     HBITMAP hbmpItem;
  205.     }  IMEMENUITEMINFOW;
  206. #endif
  207. #ifndef _DDKIMM_H_
  208. typedef /* [public][public] */ struct __MIDL___MIDL_itf_dimm_0000_0012
  209.     {
  210.     HWND hWnd;
  211.     BOOL fOpen;
  212.     POINT ptStatusWndPos;
  213.     POINT ptSoftKbdPos;
  214.     DWORD fdwConversion;
  215.     DWORD fdwSentence;
  216.     union 
  217.         {
  218.         LOGFONTA A;
  219.         LOGFONTW W;
  220.         }  lfFont;
  221.     COMPOSITIONFORM cfCompForm;
  222.     CANDIDATEFORM cfCandForm[ 4 ];
  223.     HIMCC hCompStr;
  224.     HIMCC hCandInfo;
  225.     HIMCC hGuideLine;
  226.     HIMCC hPrivate;
  227.     DWORD dwNumMsgBuf;
  228.     HIMCC hMsgBuf;
  229.     DWORD fdwInit;
  230.     DWORD dwReserve[ 3 ];
  231.     }  INPUTCONTEXT;
  232. typedef /* [public][public] */ struct __MIDL___MIDL_itf_dimm_0000_0014
  233.     {
  234.     DWORD dwPrivateDataSize;
  235.     DWORD fdwProperty;
  236.     DWORD fdwConversionCaps;
  237.     DWORD fdwSentenceCaps;
  238.     DWORD fdwUICaps;
  239.     DWORD fdwSCSCaps;
  240.     DWORD fdwSelectCaps;
  241.     }  IMEINFO;
  242. #endif
  243. EXTERN_C const IID LIBID_ActiveIMM;
  244. #ifndef __IEnumRegisterWordA_INTERFACE_DEFINED__
  245. #define __IEnumRegisterWordA_INTERFACE_DEFINED__
  246. /* interface IEnumRegisterWordA */
  247. /* [unique][uuid][object] */ 
  248. EXTERN_C const IID IID_IEnumRegisterWordA;
  249. #if defined(__cplusplus) && !defined(CINTERFACE)
  250.     
  251.     MIDL_INTERFACE("08C03412-F96B-11d0-A475-00AA006BCC59")
  252.     IEnumRegisterWordA : public IUnknown
  253.     {
  254.     public:
  255.         virtual HRESULT STDMETHODCALLTYPE Clone( 
  256.             /* [out] */ IEnumRegisterWordA **ppEnum) = 0;
  257.         
  258.         virtual HRESULT STDMETHODCALLTYPE Next( 
  259.             /* [in] */ ULONG ulCount,
  260.             /* [out] */ REGISTERWORDA *rgRegisterWord,
  261.             /* [out] */ ULONG *pcFetched) = 0;
  262.         
  263.         virtual HRESULT STDMETHODCALLTYPE Reset( void) = 0;
  264.         
  265.         virtual HRESULT STDMETHODCALLTYPE Skip( 
  266.             /* [in] */ ULONG ulCount) = 0;
  267.         
  268.     };
  269.     
  270. #else  /* C style interface */
  271.     typedef struct IEnumRegisterWordAVtbl
  272.     {
  273.         BEGIN_INTERFACE
  274.         
  275.         HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
  276.             IEnumRegisterWordA * This,
  277.             /* [in] */ REFIID riid,
  278.             /* [iid_is][out] */ void **ppvObject);
  279.         
  280.         ULONG ( STDMETHODCALLTYPE *AddRef )( 
  281.             IEnumRegisterWordA * This);
  282.         
  283.         ULONG ( STDMETHODCALLTYPE *Release )( 
  284.             IEnumRegisterWordA * This);
  285.         
  286.         HRESULT ( STDMETHODCALLTYPE *Clone )( 
  287.             IEnumRegisterWordA * This,
  288.             /* [out] */ IEnumRegisterWordA **ppEnum);
  289.         
  290.         HRESULT ( STDMETHODCALLTYPE *Next )( 
  291.             IEnumRegisterWordA * This,
  292.             /* [in] */ ULONG ulCount,
  293.             /* [out] */ REGISTERWORDA *rgRegisterWord,
  294.             /* [out] */ ULONG *pcFetched);
  295.         
  296.         HRESULT ( STDMETHODCALLTYPE *Reset )( 
  297.             IEnumRegisterWordA * This);
  298.         
  299.         HRESULT ( STDMETHODCALLTYPE *Skip )( 
  300.             IEnumRegisterWordA * This,
  301.             /* [in] */ ULONG ulCount);
  302.         
  303.         END_INTERFACE
  304.     } IEnumRegisterWordAVtbl;
  305.     interface IEnumRegisterWordA
  306.     {
  307.         CONST_VTBL struct IEnumRegisterWordAVtbl *lpVtbl;
  308.     };
  309.     
  310. #ifdef COBJMACROS
  311. #define IEnumRegisterWordA_QueryInterface(This,riid,ppvObject)
  312.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  313. #define IEnumRegisterWordA_AddRef(This)
  314.     (This)->lpVtbl -> AddRef(This)
  315. #define IEnumRegisterWordA_Release(This)
  316.     (This)->lpVtbl -> Release(This)
  317. #define IEnumRegisterWordA_Clone(This,ppEnum)
  318.     (This)->lpVtbl -> Clone(This,ppEnum)
  319. #define IEnumRegisterWordA_Next(This,ulCount,rgRegisterWord,pcFetched)
  320.     (This)->lpVtbl -> Next(This,ulCount,rgRegisterWord,pcFetched)
  321. #define IEnumRegisterWordA_Reset(This)
  322.     (This)->lpVtbl -> Reset(This)
  323. #define IEnumRegisterWordA_Skip(This,ulCount)
  324.     (This)->lpVtbl -> Skip(This,ulCount)
  325. #endif /* COBJMACROS */
  326. #endif  /* C style interface */
  327. HRESULT STDMETHODCALLTYPE IEnumRegisterWordA_Clone_Proxy( 
  328.     IEnumRegisterWordA * This,
  329.     /* [out] */ IEnumRegisterWordA **ppEnum);
  330. void __RPC_STUB IEnumRegisterWordA_Clone_Stub(
  331.     IRpcStubBuffer *This,
  332.     IRpcChannelBuffer *_pRpcChannelBuffer,
  333.     PRPC_MESSAGE _pRpcMessage,
  334.     DWORD *_pdwStubPhase);
  335. HRESULT STDMETHODCALLTYPE IEnumRegisterWordA_Next_Proxy( 
  336.     IEnumRegisterWordA * This,
  337.     /* [in] */ ULONG ulCount,
  338.     /* [out] */ REGISTERWORDA *rgRegisterWord,
  339.     /* [out] */ ULONG *pcFetched);
  340. void __RPC_STUB IEnumRegisterWordA_Next_Stub(
  341.     IRpcStubBuffer *This,
  342.     IRpcChannelBuffer *_pRpcChannelBuffer,
  343.     PRPC_MESSAGE _pRpcMessage,
  344.     DWORD *_pdwStubPhase);
  345. HRESULT STDMETHODCALLTYPE IEnumRegisterWordA_Reset_Proxy( 
  346.     IEnumRegisterWordA * This);
  347. void __RPC_STUB IEnumRegisterWordA_Reset_Stub(
  348.     IRpcStubBuffer *This,
  349.     IRpcChannelBuffer *_pRpcChannelBuffer,
  350.     PRPC_MESSAGE _pRpcMessage,
  351.     DWORD *_pdwStubPhase);
  352. HRESULT STDMETHODCALLTYPE IEnumRegisterWordA_Skip_Proxy( 
  353.     IEnumRegisterWordA * This,
  354.     /* [in] */ ULONG ulCount);
  355. void __RPC_STUB IEnumRegisterWordA_Skip_Stub(
  356.     IRpcStubBuffer *This,
  357.     IRpcChannelBuffer *_pRpcChannelBuffer,
  358.     PRPC_MESSAGE _pRpcMessage,
  359.     DWORD *_pdwStubPhase);
  360. #endif  /* __IEnumRegisterWordA_INTERFACE_DEFINED__ */
  361. #ifndef __IEnumRegisterWordW_INTERFACE_DEFINED__
  362. #define __IEnumRegisterWordW_INTERFACE_DEFINED__
  363. /* interface IEnumRegisterWordW */
  364. /* [unique][uuid][object] */ 
  365. EXTERN_C const IID IID_IEnumRegisterWordW;
  366. #if defined(__cplusplus) && !defined(CINTERFACE)
  367.     
  368.     MIDL_INTERFACE("4955DD31-B159-11d0-8FCF-00AA006BCC59")
  369.     IEnumRegisterWordW : public IUnknown
  370.     {
  371.     public:
  372.         virtual HRESULT STDMETHODCALLTYPE Clone( 
  373.             /* [out] */ IEnumRegisterWordW **ppEnum) = 0;
  374.         
  375.         virtual HRESULT STDMETHODCALLTYPE Next( 
  376.             /* [in] */ ULONG ulCount,
  377.             /* [out] */ REGISTERWORDW *rgRegisterWord,
  378.             /* [out] */ ULONG *pcFetched) = 0;
  379.         
  380.         virtual HRESULT STDMETHODCALLTYPE Reset( void) = 0;
  381.         
  382.         virtual HRESULT STDMETHODCALLTYPE Skip( 
  383.             /* [in] */ ULONG ulCount) = 0;
  384.         
  385.     };
  386.     
  387. #else  /* C style interface */
  388.     typedef struct IEnumRegisterWordWVtbl
  389.     {
  390.         BEGIN_INTERFACE
  391.         
  392.         HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
  393.             IEnumRegisterWordW * This,
  394.             /* [in] */ REFIID riid,
  395.             /* [iid_is][out] */ void **ppvObject);
  396.         
  397.         ULONG ( STDMETHODCALLTYPE *AddRef )( 
  398.             IEnumRegisterWordW * This);
  399.         
  400.         ULONG ( STDMETHODCALLTYPE *Release )( 
  401.             IEnumRegisterWordW * This);
  402.         
  403.         HRESULT ( STDMETHODCALLTYPE *Clone )( 
  404.             IEnumRegisterWordW * This,
  405.             /* [out] */ IEnumRegisterWordW **ppEnum);
  406.         
  407.         HRESULT ( STDMETHODCALLTYPE *Next )( 
  408.             IEnumRegisterWordW * This,
  409.             /* [in] */ ULONG ulCount,
  410.             /* [out] */ REGISTERWORDW *rgRegisterWord,
  411.             /* [out] */ ULONG *pcFetched);
  412.         
  413.         HRESULT ( STDMETHODCALLTYPE *Reset )( 
  414.             IEnumRegisterWordW * This);
  415.         
  416.         HRESULT ( STDMETHODCALLTYPE *Skip )( 
  417.             IEnumRegisterWordW * This,
  418.             /* [in] */ ULONG ulCount);
  419.         
  420.         END_INTERFACE
  421.     } IEnumRegisterWordWVtbl;
  422.     interface IEnumRegisterWordW
  423.     {
  424.         CONST_VTBL struct IEnumRegisterWordWVtbl *lpVtbl;
  425.     };
  426.     
  427. #ifdef COBJMACROS
  428. #define IEnumRegisterWordW_QueryInterface(This,riid,ppvObject)
  429.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  430. #define IEnumRegisterWordW_AddRef(This)
  431.     (This)->lpVtbl -> AddRef(This)
  432. #define IEnumRegisterWordW_Release(This)
  433.     (This)->lpVtbl -> Release(This)
  434. #define IEnumRegisterWordW_Clone(This,ppEnum)
  435.     (This)->lpVtbl -> Clone(This,ppEnum)
  436. #define IEnumRegisterWordW_Next(This,ulCount,rgRegisterWord,pcFetched)
  437.     (This)->lpVtbl -> Next(This,ulCount,rgRegisterWord,pcFetched)
  438. #define IEnumRegisterWordW_Reset(This)
  439.     (This)->lpVtbl -> Reset(This)
  440. #define IEnumRegisterWordW_Skip(This,ulCount)
  441.     (This)->lpVtbl -> Skip(This,ulCount)
  442. #endif /* COBJMACROS */
  443. #endif  /* C style interface */
  444. HRESULT STDMETHODCALLTYPE IEnumRegisterWordW_Clone_Proxy( 
  445.     IEnumRegisterWordW * This,
  446.     /* [out] */ IEnumRegisterWordW **ppEnum);
  447. void __RPC_STUB IEnumRegisterWordW_Clone_Stub(
  448.     IRpcStubBuffer *This,
  449.     IRpcChannelBuffer *_pRpcChannelBuffer,
  450.     PRPC_MESSAGE _pRpcMessage,
  451.     DWORD *_pdwStubPhase);
  452. HRESULT STDMETHODCALLTYPE IEnumRegisterWordW_Next_Proxy( 
  453.     IEnumRegisterWordW * This,
  454.     /* [in] */ ULONG ulCount,
  455.     /* [out] */ REGISTERWORDW *rgRegisterWord,
  456.     /* [out] */ ULONG *pcFetched);
  457. void __RPC_STUB IEnumRegisterWordW_Next_Stub(
  458.     IRpcStubBuffer *This,
  459.     IRpcChannelBuffer *_pRpcChannelBuffer,
  460.     PRPC_MESSAGE _pRpcMessage,
  461.     DWORD *_pdwStubPhase);
  462. HRESULT STDMETHODCALLTYPE IEnumRegisterWordW_Reset_Proxy( 
  463.     IEnumRegisterWordW * This);
  464. void __RPC_STUB IEnumRegisterWordW_Reset_Stub(
  465.     IRpcStubBuffer *This,
  466.     IRpcChannelBuffer *_pRpcChannelBuffer,
  467.     PRPC_MESSAGE _pRpcMessage,
  468.     DWORD *_pdwStubPhase);
  469. HRESULT STDMETHODCALLTYPE IEnumRegisterWordW_Skip_Proxy( 
  470.     IEnumRegisterWordW * This,
  471.     /* [in] */ ULONG ulCount);
  472. void __RPC_STUB IEnumRegisterWordW_Skip_Stub(
  473.     IRpcStubBuffer *This,
  474.     IRpcChannelBuffer *_pRpcChannelBuffer,
  475.     PRPC_MESSAGE _pRpcMessage,
  476.     DWORD *_pdwStubPhase);
  477. #endif  /* __IEnumRegisterWordW_INTERFACE_DEFINED__ */
  478. #ifndef __IEnumInputContext_INTERFACE_DEFINED__
  479. #define __IEnumInputContext_INTERFACE_DEFINED__
  480. /* interface IEnumInputContext */
  481. /* [unique][uuid][object] */ 
  482. EXTERN_C const IID IID_IEnumInputContext;
  483. #if defined(__cplusplus) && !defined(CINTERFACE)
  484.     
  485.     MIDL_INTERFACE("09b5eab0-f997-11d1-93d4-0060b067b86e")
  486.     IEnumInputContext : public IUnknown
  487.     {
  488.     public:
  489.         virtual HRESULT STDMETHODCALLTYPE Clone( 
  490.             /* [out] */ IEnumInputContext **ppEnum) = 0;
  491.         
  492.         virtual HRESULT STDMETHODCALLTYPE Next( 
  493.             /* [in] */ ULONG ulCount,
  494.             /* [out] */ HIMC *rgInputContext,
  495.             /* [out] */ ULONG *pcFetched) = 0;
  496.         
  497.         virtual HRESULT STDMETHODCALLTYPE Reset( void) = 0;
  498.         
  499.         virtual HRESULT STDMETHODCALLTYPE Skip( 
  500.             /* [in] */ ULONG ulCount) = 0;
  501.         
  502.     };
  503.     
  504. #else  /* C style interface */
  505.     typedef struct IEnumInputContextVtbl
  506.     {
  507.         BEGIN_INTERFACE
  508.         
  509.         HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
  510.             IEnumInputContext * This,
  511.             /* [in] */ REFIID riid,
  512.             /* [iid_is][out] */ void **ppvObject);
  513.         
  514.         ULONG ( STDMETHODCALLTYPE *AddRef )( 
  515.             IEnumInputContext * This);
  516.         
  517.         ULONG ( STDMETHODCALLTYPE *Release )( 
  518.             IEnumInputContext * This);
  519.         
  520.         HRESULT ( STDMETHODCALLTYPE *Clone )( 
  521.             IEnumInputContext * This,
  522.             /* [out] */ IEnumInputContext **ppEnum);
  523.         
  524.         HRESULT ( STDMETHODCALLTYPE *Next )( 
  525.             IEnumInputContext * This,
  526.             /* [in] */ ULONG ulCount,
  527.             /* [out] */ HIMC *rgInputContext,
  528.             /* [out] */ ULONG *pcFetched);
  529.         
  530.         HRESULT ( STDMETHODCALLTYPE *Reset )( 
  531.             IEnumInputContext * This);
  532.         
  533.         HRESULT ( STDMETHODCALLTYPE *Skip )( 
  534.             IEnumInputContext * This,
  535.             /* [in] */ ULONG ulCount);
  536.         
  537.         END_INTERFACE
  538.     } IEnumInputContextVtbl;
  539.     interface IEnumInputContext
  540.     {
  541.         CONST_VTBL struct IEnumInputContextVtbl *lpVtbl;
  542.     };
  543.     
  544. #ifdef COBJMACROS
  545. #define IEnumInputContext_QueryInterface(This,riid,ppvObject)
  546.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  547. #define IEnumInputContext_AddRef(This)
  548.     (This)->lpVtbl -> AddRef(This)
  549. #define IEnumInputContext_Release(This)
  550.     (This)->lpVtbl -> Release(This)
  551. #define IEnumInputContext_Clone(This,ppEnum)
  552.     (This)->lpVtbl -> Clone(This,ppEnum)
  553. #define IEnumInputContext_Next(This,ulCount,rgInputContext,pcFetched)
  554.     (This)->lpVtbl -> Next(This,ulCount,rgInputContext,pcFetched)
  555. #define IEnumInputContext_Reset(This)
  556.     (This)->lpVtbl -> Reset(This)
  557. #define IEnumInputContext_Skip(This,ulCount)
  558.     (This)->lpVtbl -> Skip(This,ulCount)
  559. #endif /* COBJMACROS */
  560. #endif  /* C style interface */
  561. HRESULT STDMETHODCALLTYPE IEnumInputContext_Clone_Proxy( 
  562.     IEnumInputContext * This,
  563.     /* [out] */ IEnumInputContext **ppEnum);
  564. void __RPC_STUB IEnumInputContext_Clone_Stub(
  565.     IRpcStubBuffer *This,
  566.     IRpcChannelBuffer *_pRpcChannelBuffer,
  567.     PRPC_MESSAGE _pRpcMessage,
  568.     DWORD *_pdwStubPhase);
  569. HRESULT STDMETHODCALLTYPE IEnumInputContext_Next_Proxy( 
  570.     IEnumInputContext * This,
  571.     /* [in] */ ULONG ulCount,
  572.     /* [out] */ HIMC *rgInputContext,
  573.     /* [out] */ ULONG *pcFetched);
  574. void __RPC_STUB IEnumInputContext_Next_Stub(
  575.     IRpcStubBuffer *This,
  576.     IRpcChannelBuffer *_pRpcChannelBuffer,
  577.     PRPC_MESSAGE _pRpcMessage,
  578.     DWORD *_pdwStubPhase);
  579. HRESULT STDMETHODCALLTYPE IEnumInputContext_Reset_Proxy( 
  580.     IEnumInputContext * This);
  581. void __RPC_STUB IEnumInputContext_Reset_Stub(
  582.     IRpcStubBuffer *This,
  583.     IRpcChannelBuffer *_pRpcChannelBuffer,
  584.     PRPC_MESSAGE _pRpcMessage,
  585.     DWORD *_pdwStubPhase);
  586. HRESULT STDMETHODCALLTYPE IEnumInputContext_Skip_Proxy( 
  587.     IEnumInputContext * This,
  588.     /* [in] */ ULONG ulCount);
  589. void __RPC_STUB IEnumInputContext_Skip_Stub(
  590.     IRpcStubBuffer *This,
  591.     IRpcChannelBuffer *_pRpcChannelBuffer,
  592.     PRPC_MESSAGE _pRpcMessage,
  593.     DWORD *_pdwStubPhase);
  594. #endif  /* __IEnumInputContext_INTERFACE_DEFINED__ */
  595. #ifndef __IActiveIMMRegistrar_INTERFACE_DEFINED__
  596. #define __IActiveIMMRegistrar_INTERFACE_DEFINED__
  597. /* interface IActiveIMMRegistrar */
  598. /* [unique][uuid][object] */ 
  599. EXTERN_C const IID IID_IActiveIMMRegistrar;
  600. #if defined(__cplusplus) && !defined(CINTERFACE)
  601.     
  602.     MIDL_INTERFACE("b3458082-bd00-11d1-939b-0060b067b86e")
  603.     IActiveIMMRegistrar : public IUnknown
  604.     {
  605.     public:
  606.         virtual HRESULT STDMETHODCALLTYPE RegisterIME( 
  607.             /* [in] */ REFCLSID rclsid,
  608.             /* [in] */ LANGID lgid,
  609.             /* [in] */ LPCWSTR pszIconFile,
  610.             /* [in] */ LPCWSTR pszDesc) = 0;
  611.         
  612.         virtual HRESULT STDMETHODCALLTYPE UnregisterIME( 
  613.             /* [in] */ REFCLSID rclsid) = 0;
  614.         
  615.     };
  616.     
  617. #else  /* C style interface */
  618.     typedef struct IActiveIMMRegistrarVtbl
  619.     {
  620.         BEGIN_INTERFACE
  621.         
  622.         HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
  623.             IActiveIMMRegistrar * This,
  624.             /* [in] */ REFIID riid,
  625.             /* [iid_is][out] */ void **ppvObject);
  626.         
  627.         ULONG ( STDMETHODCALLTYPE *AddRef )( 
  628.             IActiveIMMRegistrar * This);
  629.         
  630.         ULONG ( STDMETHODCALLTYPE *Release )( 
  631.             IActiveIMMRegistrar * This);
  632.         
  633.         HRESULT ( STDMETHODCALLTYPE *RegisterIME )( 
  634.             IActiveIMMRegistrar * This,
  635.             /* [in] */ REFCLSID rclsid,
  636.             /* [in] */ LANGID lgid,
  637.             /* [in] */ LPCWSTR pszIconFile,
  638.             /* [in] */ LPCWSTR pszDesc);
  639.         
  640.         HRESULT ( STDMETHODCALLTYPE *UnregisterIME )( 
  641.             IActiveIMMRegistrar * This,
  642.             /* [in] */ REFCLSID rclsid);
  643.         
  644.         END_INTERFACE
  645.     } IActiveIMMRegistrarVtbl;
  646.     interface IActiveIMMRegistrar
  647.     {
  648.         CONST_VTBL struct IActiveIMMRegistrarVtbl *lpVtbl;
  649.     };
  650.     
  651. #ifdef COBJMACROS
  652. #define IActiveIMMRegistrar_QueryInterface(This,riid,ppvObject)
  653.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  654. #define IActiveIMMRegistrar_AddRef(This)
  655.     (This)->lpVtbl -> AddRef(This)
  656. #define IActiveIMMRegistrar_Release(This)
  657.     (This)->lpVtbl -> Release(This)
  658. #define IActiveIMMRegistrar_RegisterIME(This,rclsid,lgid,pszIconFile,pszDesc)
  659.     (This)->lpVtbl -> RegisterIME(This,rclsid,lgid,pszIconFile,pszDesc)
  660. #define IActiveIMMRegistrar_UnregisterIME(This,rclsid)
  661.     (This)->lpVtbl -> UnregisterIME(This,rclsid)
  662. #endif /* COBJMACROS */
  663. #endif  /* C style interface */
  664. HRESULT STDMETHODCALLTYPE IActiveIMMRegistrar_RegisterIME_Proxy( 
  665.     IActiveIMMRegistrar * This,
  666.     /* [in] */ REFCLSID rclsid,
  667.     /* [in] */ LANGID lgid,
  668.     /* [in] */ LPCWSTR pszIconFile,
  669.     /* [in] */ LPCWSTR pszDesc);
  670. void __RPC_STUB IActiveIMMRegistrar_RegisterIME_Stub(
  671.     IRpcStubBuffer *This,
  672.     IRpcChannelBuffer *_pRpcChannelBuffer,
  673.     PRPC_MESSAGE _pRpcMessage,
  674.     DWORD *_pdwStubPhase);
  675. HRESULT STDMETHODCALLTYPE IActiveIMMRegistrar_UnregisterIME_Proxy( 
  676.     IActiveIMMRegistrar * This,
  677.     /* [in] */ REFCLSID rclsid);
  678. void __RPC_STUB IActiveIMMRegistrar_UnregisterIME_Stub(
  679.     IRpcStubBuffer *This,
  680.     IRpcChannelBuffer *_pRpcChannelBuffer,
  681.     PRPC_MESSAGE _pRpcMessage,
  682.     DWORD *_pdwStubPhase);
  683. #endif  /* __IActiveIMMRegistrar_INTERFACE_DEFINED__ */
  684. #ifndef __IActiveIMMMessagePumpOwner_INTERFACE_DEFINED__
  685. #define __IActiveIMMMessagePumpOwner_INTERFACE_DEFINED__
  686. /* interface IActiveIMMMessagePumpOwner */
  687. /* [unique][uuid][object] */ 
  688. EXTERN_C const IID IID_IActiveIMMMessagePumpOwner;
  689. #if defined(__cplusplus) && !defined(CINTERFACE)
  690.     
  691.     MIDL_INTERFACE("b5cf2cfa-8aeb-11d1-9364-0060b067b86e")
  692.     IActiveIMMMessagePumpOwner : public IUnknown
  693.     {
  694.     public:
  695.         virtual HRESULT STDMETHODCALLTYPE Start( void) = 0;
  696.         
  697.         virtual HRESULT STDMETHODCALLTYPE End( void) = 0;
  698.         
  699.         virtual HRESULT STDMETHODCALLTYPE OnTranslateMessage( 
  700.             /* [in] */ const MSG *pMsg) = 0;
  701.         
  702.         virtual HRESULT STDMETHODCALLTYPE Pause( 
  703.             /* [out] */ DWORD *pdwCookie) = 0;
  704.         
  705.         virtual HRESULT STDMETHODCALLTYPE Resume( 
  706.             /* [in] */ DWORD dwCookie) = 0;
  707.         
  708.     };
  709.     
  710. #else  /* C style interface */
  711.     typedef struct IActiveIMMMessagePumpOwnerVtbl
  712.     {
  713.         BEGIN_INTERFACE
  714.         
  715.         HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
  716.             IActiveIMMMessagePumpOwner * This,
  717.             /* [in] */ REFIID riid,
  718.             /* [iid_is][out] */ void **ppvObject);
  719.         
  720.         ULONG ( STDMETHODCALLTYPE *AddRef )( 
  721.             IActiveIMMMessagePumpOwner * This);
  722.         
  723.         ULONG ( STDMETHODCALLTYPE *Release )( 
  724.             IActiveIMMMessagePumpOwner * This);
  725.         
  726.         HRESULT ( STDMETHODCALLTYPE *Start )( 
  727.             IActiveIMMMessagePumpOwner * This);
  728.         
  729.         HRESULT ( STDMETHODCALLTYPE *End )( 
  730.             IActiveIMMMessagePumpOwner * This);
  731.         
  732.         HRESULT ( STDMETHODCALLTYPE *OnTranslateMessage )( 
  733.             IActiveIMMMessagePumpOwner * This,
  734.             /* [in] */ const MSG *pMsg);
  735.         
  736.         HRESULT ( STDMETHODCALLTYPE *Pause )( 
  737.             IActiveIMMMessagePumpOwner * This,
  738.             /* [out] */ DWORD *pdwCookie);
  739.         
  740.         HRESULT ( STDMETHODCALLTYPE *Resume )( 
  741.             IActiveIMMMessagePumpOwner * This,
  742.             /* [in] */ DWORD dwCookie);
  743.         
  744.         END_INTERFACE
  745.     } IActiveIMMMessagePumpOwnerVtbl;
  746.     interface IActiveIMMMessagePumpOwner
  747.     {
  748.         CONST_VTBL struct IActiveIMMMessagePumpOwnerVtbl *lpVtbl;
  749.     };
  750.     
  751. #ifdef COBJMACROS
  752. #define IActiveIMMMessagePumpOwner_QueryInterface(This,riid,ppvObject)
  753.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  754. #define IActiveIMMMessagePumpOwner_AddRef(This)
  755.     (This)->lpVtbl -> AddRef(This)
  756. #define IActiveIMMMessagePumpOwner_Release(This)
  757.     (This)->lpVtbl -> Release(This)
  758. #define IActiveIMMMessagePumpOwner_Start(This)
  759.     (This)->lpVtbl -> Start(This)
  760. #define IActiveIMMMessagePumpOwner_End(This)
  761.     (This)->lpVtbl -> End(This)
  762. #define IActiveIMMMessagePumpOwner_OnTranslateMessage(This,pMsg)
  763.     (This)->lpVtbl -> OnTranslateMessage(This,pMsg)
  764. #define IActiveIMMMessagePumpOwner_Pause(This,pdwCookie)
  765.     (This)->lpVtbl -> Pause(This,pdwCookie)
  766. #define IActiveIMMMessagePumpOwner_Resume(This,dwCookie)
  767.     (This)->lpVtbl -> Resume(This,dwCookie)
  768. #endif /* COBJMACROS */
  769. #endif  /* C style interface */
  770. HRESULT STDMETHODCALLTYPE IActiveIMMMessagePumpOwner_Start_Proxy( 
  771.     IActiveIMMMessagePumpOwner * This);
  772. void __RPC_STUB IActiveIMMMessagePumpOwner_Start_Stub(
  773.     IRpcStubBuffer *This,
  774.     IRpcChannelBuffer *_pRpcChannelBuffer,
  775.     PRPC_MESSAGE _pRpcMessage,
  776.     DWORD *_pdwStubPhase);
  777. HRESULT STDMETHODCALLTYPE IActiveIMMMessagePumpOwner_End_Proxy( 
  778.     IActiveIMMMessagePumpOwner * This);
  779. void __RPC_STUB IActiveIMMMessagePumpOwner_End_Stub(
  780.     IRpcStubBuffer *This,
  781.     IRpcChannelBuffer *_pRpcChannelBuffer,
  782.     PRPC_MESSAGE _pRpcMessage,
  783.     DWORD *_pdwStubPhase);
  784. HRESULT STDMETHODCALLTYPE IActiveIMMMessagePumpOwner_OnTranslateMessage_Proxy( 
  785.     IActiveIMMMessagePumpOwner * This,
  786.     /* [in] */ const MSG *pMsg);
  787. void __RPC_STUB IActiveIMMMessagePumpOwner_OnTranslateMessage_Stub(
  788.     IRpcStubBuffer *This,
  789.     IRpcChannelBuffer *_pRpcChannelBuffer,
  790.     PRPC_MESSAGE _pRpcMessage,
  791.     DWORD *_pdwStubPhase);
  792. HRESULT STDMETHODCALLTYPE IActiveIMMMessagePumpOwner_Pause_Proxy( 
  793.     IActiveIMMMessagePumpOwner * This,
  794.     /* [out] */ DWORD *pdwCookie);
  795. void __RPC_STUB IActiveIMMMessagePumpOwner_Pause_Stub(
  796.     IRpcStubBuffer *This,
  797.     IRpcChannelBuffer *_pRpcChannelBuffer,
  798.     PRPC_MESSAGE _pRpcMessage,
  799.     DWORD *_pdwStubPhase);
  800. HRESULT STDMETHODCALLTYPE IActiveIMMMessagePumpOwner_Resume_Proxy( 
  801.     IActiveIMMMessagePumpOwner * This,
  802.     /* [in] */ DWORD dwCookie);
  803. void __RPC_STUB IActiveIMMMessagePumpOwner_Resume_Stub(
  804.     IRpcStubBuffer *This,
  805.     IRpcChannelBuffer *_pRpcChannelBuffer,
  806.     PRPC_MESSAGE _pRpcMessage,
  807.     DWORD *_pdwStubPhase);
  808. #endif  /* __IActiveIMMMessagePumpOwner_INTERFACE_DEFINED__ */
  809. #ifndef __IActiveIMMApp_INTERFACE_DEFINED__
  810. #define __IActiveIMMApp_INTERFACE_DEFINED__
  811. /* interface IActiveIMMApp */
  812. /* [unique][uuid][object] */ 
  813. EXTERN_C const IID IID_IActiveIMMApp;
  814. #if defined(__cplusplus) && !defined(CINTERFACE)
  815.     
  816.     MIDL_INTERFACE("08c0e040-62d1-11d1-9326-0060b067b86e")
  817.     IActiveIMMApp : public IUnknown
  818.     {
  819.     public:
  820.         virtual HRESULT STDMETHODCALLTYPE AssociateContext( 
  821.             /* [in] */ HWND hWnd,
  822.             /* [in] */ HIMC hIME,
  823.             /* [out] */ HIMC *phPrev) = 0;
  824.         
  825.         virtual HRESULT STDMETHODCALLTYPE ConfigureIMEA( 
  826.             /* [in] */ HKL hKL,
  827.             /* [in] */ HWND hWnd,
  828.             /* [in] */ DWORD dwMode,
  829.             /* [in] */ REGISTERWORDA *pData) = 0;
  830.         
  831.         virtual HRESULT STDMETHODCALLTYPE ConfigureIMEW( 
  832.             /* [in] */ HKL hKL,
  833.             /* [in] */ HWND hWnd,
  834.             /* [in] */ DWORD dwMode,
  835.             /* [in] */ REGISTERWORDW *pData) = 0;
  836.         
  837.         virtual HRESULT STDMETHODCALLTYPE CreateContext( 
  838.             /* [out] */ HIMC *phIMC) = 0;
  839.         
  840.         virtual HRESULT STDMETHODCALLTYPE DestroyContext( 
  841.             /* [in] */ HIMC hIME) = 0;
  842.         
  843.         virtual HRESULT STDMETHODCALLTYPE EnumRegisterWordA( 
  844.             /* [in] */ HKL hKL,
  845.             /* [in] */ LPSTR szReading,
  846.             /* [in] */ DWORD dwStyle,
  847.             /* [in] */ LPSTR szRegister,
  848.             /* [in] */ LPVOID pData,
  849.             /* [out] */ IEnumRegisterWordA **pEnum) = 0;
  850.         
  851.         virtual HRESULT STDMETHODCALLTYPE EnumRegisterWordW( 
  852.             /* [in] */ HKL hKL,
  853.             /* [in] */ LPWSTR szReading,
  854.             /* [in] */ DWORD dwStyle,
  855.             /* [in] */ LPWSTR szRegister,
  856.             /* [in] */ LPVOID pData,
  857.             /* [out] */ IEnumRegisterWordW **pEnum) = 0;
  858.         
  859.         virtual HRESULT STDMETHODCALLTYPE EscapeA( 
  860.             /* [in] */ HKL hKL,
  861.             /* [in] */ HIMC hIMC,
  862.             /* [in] */ UINT uEscape,
  863.             /* [out][in] */ LPVOID pData,
  864.             /* [out] */ LRESULT *plResult) = 0;
  865.         
  866.         virtual HRESULT STDMETHODCALLTYPE EscapeW( 
  867.             /* [in] */ HKL hKL,
  868.             /* [in] */ HIMC hIMC,
  869.             /* [in] */ UINT uEscape,
  870.             /* [out][in] */ LPVOID pData,
  871.             /* [out] */ LRESULT *plResult) = 0;
  872.         
  873.         virtual HRESULT STDMETHODCALLTYPE GetCandidateListA( 
  874.             /* [in] */ HIMC hIMC,
  875.             /* [in] */ DWORD dwIndex,
  876.             /* [in] */ UINT uBufLen,
  877.             /* [out] */ CANDIDATELIST *pCandList,
  878.             /* [out] */ UINT *puCopied) = 0;
  879.         
  880.         virtual HRESULT STDMETHODCALLTYPE GetCandidateListW( 
  881.             /* [in] */ HIMC hIMC,
  882.             /* [in] */ DWORD dwIndex,
  883.             /* [in] */ UINT uBufLen,
  884.             /* [out] */ CANDIDATELIST *pCandList,
  885.             /* [out] */ UINT *puCopied) = 0;
  886.         
  887.         virtual HRESULT STDMETHODCALLTYPE GetCandidateListCountA( 
  888.             /* [in] */ HIMC hIMC,
  889.             /* [out] */ DWORD *pdwListSize,
  890.             /* [out] */ DWORD *pdwBufLen) = 0;
  891.         
  892.         virtual HRESULT STDMETHODCALLTYPE GetCandidateListCountW( 
  893.             /* [in] */ HIMC hIMC,
  894.             /* [out] */ DWORD *pdwListSize,
  895.             /* [out] */ DWORD *pdwBufLen) = 0;
  896.         
  897.         virtual HRESULT STDMETHODCALLTYPE GetCandidateWindow( 
  898.             /* [in] */ HIMC hIMC,
  899.             /* [in] */ DWORD dwIndex,
  900.             /* [out] */ CANDIDATEFORM *pCandidate) = 0;
  901.         
  902.         virtual HRESULT STDMETHODCALLTYPE GetCompositionFontA( 
  903.             /* [in] */ HIMC hIMC,
  904.             /* [out] */ LOGFONTA *plf) = 0;
  905.         
  906.         virtual HRESULT STDMETHODCALLTYPE GetCompositionFontW( 
  907.             /* [in] */ HIMC hIMC,
  908.             /* [out] */ LOGFONTW *plf) = 0;
  909.         
  910.         virtual HRESULT STDMETHODCALLTYPE GetCompositionStringA( 
  911.             /* [in] */ HIMC hIMC,
  912.             /* [in] */ DWORD dwIndex,
  913.             /* [in] */ DWORD dwBufLen,
  914.             /* [out] */ LONG *plCopied,
  915.             /* [out] */ LPVOID pBuf) = 0;
  916.         
  917.         virtual HRESULT STDMETHODCALLTYPE GetCompositionStringW( 
  918.             /* [in] */ HIMC hIMC,
  919.             /* [in] */ DWORD dwIndex,
  920.             /* [in] */ DWORD dwBufLen,
  921.             /* [out] */ LONG *plCopied,
  922.             /* [out] */ LPVOID pBuf) = 0;
  923.         
  924.         virtual HRESULT STDMETHODCALLTYPE GetCompositionWindow( 
  925.             /* [in] */ HIMC hIMC,
  926.             /* [out] */ COMPOSITIONFORM *pCompForm) = 0;
  927.         
  928.         virtual HRESULT STDMETHODCALLTYPE GetContext( 
  929.             /* [in] */ HWND hWnd,
  930.             /* [out] */ HIMC *phIMC) = 0;
  931.         
  932.         virtual HRESULT STDMETHODCALLTYPE GetConversionListA( 
  933.             /* [in] */ HKL hKL,
  934.             /* [in] */ HIMC hIMC,
  935.             /* [in] */ LPSTR pSrc,
  936.             /* [in] */ UINT uBufLen,
  937.             /* [in] */ UINT uFlag,
  938.             /* [out] */ CANDIDATELIST *pDst,
  939.             /* [out] */ UINT *puCopied) = 0;
  940.         
  941.         virtual HRESULT STDMETHODCALLTYPE GetConversionListW( 
  942.             /* [in] */ HKL hKL,
  943.             /* [in] */ HIMC hIMC,
  944.             /* [in] */ LPWSTR pSrc,
  945.             /* [in] */ UINT uBufLen,
  946.             /* [in] */ UINT uFlag,
  947.             /* [out] */ CANDIDATELIST *pDst,
  948.             /* [out] */ UINT *puCopied) = 0;
  949.         
  950.         virtual HRESULT STDMETHODCALLTYPE GetConversionStatus( 
  951.             /* [in] */ HIMC hIMC,
  952.             /* [out] */ DWORD *pfdwConversion,
  953.             /* [out] */ DWORD *pfdwSentence) = 0;
  954.         
  955.         virtual HRESULT STDMETHODCALLTYPE GetDefaultIMEWnd( 
  956.             /* [in] */ HWND hWnd,
  957.             /* [out] */ HWND *phDefWnd) = 0;
  958.         
  959.         virtual HRESULT STDMETHODCALLTYPE GetDescriptionA( 
  960.             /* [in] */ HKL hKL,
  961.             /* [in] */ UINT uBufLen,
  962.             /* [out] */ LPSTR szDescription,
  963.             /* [out] */ UINT *puCopied) = 0;
  964.         
  965.         virtual HRESULT STDMETHODCALLTYPE GetDescriptionW( 
  966.             /* [in] */ HKL hKL,
  967.             /* [in] */ UINT uBufLen,
  968.             /* [out] */ LPWSTR szDescription,
  969.             /* [out] */ UINT *puCopied) = 0;
  970.         
  971.         virtual HRESULT STDMETHODCALLTYPE GetGuideLineA( 
  972.             /* [in] */ HIMC hIMC,
  973.             /* [in] */ DWORD dwIndex,
  974.             /* [in] */ DWORD dwBufLen,
  975.             /* [out] */ LPSTR pBuf,
  976.             /* [out] */ DWORD *pdwResult) = 0;
  977.         
  978.         virtual HRESULT STDMETHODCALLTYPE GetGuideLineW( 
  979.             /* [in] */ HIMC hIMC,
  980.             /* [in] */ DWORD dwIndex,
  981.             /* [in] */ DWORD dwBufLen,
  982.             /* [out] */ LPWSTR pBuf,
  983.             /* [out] */ DWORD *pdwResult) = 0;
  984.         
  985.         virtual HRESULT STDMETHODCALLTYPE GetIMEFileNameA( 
  986.             /* [in] */ HKL hKL,
  987.             /* [in] */ UINT uBufLen,
  988.             /* [out] */ LPSTR szFileName,
  989.             /* [out] */ UINT *puCopied) = 0;
  990.         
  991.         virtual HRESULT STDMETHODCALLTYPE GetIMEFileNameW( 
  992.             /* [in] */ HKL hKL,
  993.             /* [in] */ UINT uBufLen,
  994.             /* [out] */ LPWSTR szFileName,
  995.             /* [out] */ UINT *puCopied) = 0;
  996.         
  997.         virtual HRESULT STDMETHODCALLTYPE GetOpenStatus( 
  998.             /* [in] */ HIMC hIMC) = 0;
  999.         
  1000.         virtual HRESULT STDMETHODCALLTYPE GetProperty( 
  1001.             /* [in] */ HKL hKL,
  1002.             /* [in] */ DWORD fdwIndex,
  1003.             /* [out] */ DWORD *pdwProperty) = 0;
  1004.         
  1005.         virtual HRESULT STDMETHODCALLTYPE GetRegisterWordStyleA( 
  1006.             /* [in] */ HKL hKL,
  1007.             /* [in] */ UINT nItem,
  1008.             /* [out] */ STYLEBUFA *pStyleBuf,
  1009.             /* [out] */ UINT *puCopied) = 0;
  1010.         
  1011.         virtual HRESULT STDMETHODCALLTYPE GetRegisterWordStyleW( 
  1012.             /* [in] */ HKL hKL,
  1013.             /* [in] */ UINT nItem,
  1014.             /* [out] */ STYLEBUFW *pStyleBuf,
  1015.             /* [out] */ UINT *puCopied) = 0;
  1016.         
  1017.         virtual HRESULT STDMETHODCALLTYPE GetStatusWindowPos( 
  1018.             /* [in] */ HIMC hIMC,
  1019.             /* [out] */ POINT *pptPos) = 0;
  1020.         
  1021.         virtual HRESULT STDMETHODCALLTYPE GetVirtualKey( 
  1022.             /* [in] */ HWND hWnd,
  1023.             /* [out] */ UINT *puVirtualKey) = 0;
  1024.         
  1025.         virtual HRESULT STDMETHODCALLTYPE InstallIMEA( 
  1026.             /* [in] */ LPSTR szIMEFileName,
  1027.             /* [in] */ LPSTR szLayoutText,
  1028.             /* [out] */ HKL *phKL) = 0;
  1029.         
  1030.         virtual HRESULT STDMETHODCALLTYPE InstallIMEW( 
  1031.             /* [in] */ LPWSTR szIMEFileName,
  1032.             /* [in] */ LPWSTR szLayoutText,
  1033.             /* [out] */ HKL *phKL) = 0;
  1034.         
  1035.         virtual HRESULT STDMETHODCALLTYPE IsIME( 
  1036.             /* [in] */ HKL hKL) = 0;
  1037.         
  1038.         virtual HRESULT STDMETHODCALLTYPE IsUIMessageA( 
  1039.             /* [in] */ HWND hWndIME,
  1040.             /* [in] */ UINT msg,
  1041.             /* [in] */ WPARAM wParam,
  1042.             /* [in] */ LPARAM lParam) = 0;
  1043.         
  1044.         virtual HRESULT STDMETHODCALLTYPE IsUIMessageW( 
  1045.             /* [in] */ HWND hWndIME,
  1046.             /* [in] */ UINT msg,
  1047.             /* [in] */ WPARAM wParam,
  1048.             /* [in] */ LPARAM lParam) = 0;
  1049.         
  1050.         virtual HRESULT STDMETHODCALLTYPE NotifyIME( 
  1051.             /* [in] */ HIMC hIMC,
  1052.             /* [in] */ DWORD dwAction,
  1053.             /* [in] */ DWORD dwIndex,
  1054.             /* [in] */ DWORD dwValue) = 0;
  1055.         
  1056.         virtual HRESULT STDMETHODCALLTYPE RegisterWordA( 
  1057.             /* [in] */ HKL hKL,
  1058.             /* [in] */ LPSTR szReading,
  1059.             /* [in] */ DWORD dwStyle,
  1060.             /* [in] */ LPSTR szRegister) = 0;
  1061.         
  1062.         virtual HRESULT STDMETHODCALLTYPE RegisterWordW( 
  1063.             /* [in] */ HKL hKL,
  1064.             /* [in] */ LPWSTR szReading,
  1065.             /* [in] */ DWORD dwStyle,
  1066.             /* [in] */ LPWSTR szRegister) = 0;
  1067.         
  1068.         virtual HRESULT STDMETHODCALLTYPE ReleaseContext( 
  1069.             /* [in] */ HWND hWnd,
  1070.             /* [in] */ HIMC hIMC) = 0;
  1071.         
  1072.         virtual HRESULT STDMETHODCALLTYPE SetCandidateWindow( 
  1073.             /* [in] */ HIMC hIMC,
  1074.             /* [in] */ CANDIDATEFORM *pCandidate) = 0;
  1075.         
  1076.         virtual HRESULT STDMETHODCALLTYPE SetCompositionFontA( 
  1077.             /* [in] */ HIMC hIMC,
  1078.             /* [in] */ LOGFONTA *plf) = 0;
  1079.         
  1080.         virtual HRESULT STDMETHODCALLTYPE SetCompositionFontW( 
  1081.             /* [in] */ HIMC hIMC,
  1082.             /* [in] */ LOGFONTW *plf) = 0;
  1083.         
  1084.         virtual HRESULT STDMETHODCALLTYPE SetCompositionStringA( 
  1085.             /* [in] */ HIMC hIMC,
  1086.             /* [in] */ DWORD dwIndex,
  1087.             /* [in] */ LPVOID pComp,
  1088.             /* [in] */ DWORD dwCompLen,
  1089.             /* [in] */ LPVOID pRead,
  1090.             /* [in] */ DWORD dwReadLen) = 0;
  1091.         
  1092.         virtual HRESULT STDMETHODCALLTYPE SetCompositionStringW( 
  1093.             /* [in] */ HIMC hIMC,
  1094.             /* [in] */ DWORD dwIndex,
  1095.             /* [in] */ LPVOID pComp,
  1096.             /* [in] */ DWORD dwCompLen,
  1097.             /* [in] */ LPVOID pRead,
  1098.             /* [in] */ DWORD dwReadLen) = 0;
  1099.         
  1100.         virtual HRESULT STDMETHODCALLTYPE SetCompositionWindow( 
  1101.             /* [in] */ HIMC hIMC,
  1102.             /* [in] */ COMPOSITIONFORM *pCompForm) = 0;
  1103.         
  1104.         virtual HRESULT STDMETHODCALLTYPE SetConversionStatus( 
  1105.             /* [in] */ HIMC hIMC,
  1106.             /* [in] */ DWORD fdwConversion,
  1107.             /* [in] */ DWORD fdwSentence) = 0;
  1108.         
  1109.         virtual HRESULT STDMETHODCALLTYPE SetOpenStatus( 
  1110.             /* [in] */ HIMC hIMC,
  1111.             /* [in] */ BOOL fOpen) = 0;
  1112.         
  1113.         virtual HRESULT STDMETHODCALLTYPE SetStatusWindowPos( 
  1114.             /* [in] */ HIMC hIMC,
  1115.             /* [in] */ POINT *pptPos) = 0;
  1116.         
  1117.         virtual HRESULT STDMETHODCALLTYPE SimulateHotKey( 
  1118.             /* [in] */ HWND hWnd,
  1119.             /* [in] */ DWORD dwHotKeyID) = 0;
  1120.         
  1121.         virtual HRESULT STDMETHODCALLTYPE UnregisterWordA( 
  1122.             /* [in] */ HKL hKL,
  1123.             /* [in] */ LPSTR szReading,
  1124.             /* [in] */ DWORD dwStyle,
  1125.             /* [in] */ LPSTR szUnregister) = 0;
  1126.         
  1127.         virtual HRESULT STDMETHODCALLTYPE UnregisterWordW( 
  1128.             /* [in] */ HKL hKL,
  1129.             /* [in] */ LPWSTR szReading,
  1130.             /* [in] */ DWORD dwStyle,
  1131.             /* [in] */ LPWSTR szUnregister) = 0;
  1132.         
  1133.         virtual HRESULT STDMETHODCALLTYPE Activate( 
  1134.             /* [in] */ BOOL fRestoreLayout) = 0;
  1135.         
  1136.         virtual HRESULT STDMETHODCALLTYPE Deactivate( void) = 0;
  1137.         
  1138.         virtual HRESULT STDMETHODCALLTYPE OnDefWindowProc( 
  1139.             /* [in] */ HWND hWnd,
  1140.             /* [in] */ UINT Msg,
  1141.             /* [in] */ WPARAM wParam,
  1142.             /* [in] */ LPARAM lParam,
  1143.             /* [out] */ LRESULT *plResult) = 0;
  1144.         
  1145.         virtual HRESULT STDMETHODCALLTYPE FilterClientWindows( 
  1146.             /* [in] */ ATOM *aaClassList,
  1147.             /* [in] */ UINT uSize) = 0;
  1148.         
  1149.         virtual HRESULT STDMETHODCALLTYPE GetCodePageA( 
  1150.             /* [in] */ HKL hKL,
  1151.             /* [out] */ UINT *uCodePage) = 0;
  1152.         
  1153.         virtual HRESULT STDMETHODCALLTYPE GetLangId( 
  1154.             /* [in] */ HKL hKL,
  1155.             /* [out] */ LANGID *plid) = 0;
  1156.         
  1157.         virtual HRESULT STDMETHODCALLTYPE AssociateContextEx( 
  1158.             /* [in] */ HWND hWnd,
  1159.             /* [in] */ HIMC hIMC,
  1160.             /* [in] */ DWORD dwFlags) = 0;
  1161.         
  1162.         virtual HRESULT STDMETHODCALLTYPE DisableIME( 
  1163.             /* [in] */ DWORD idThread) = 0;
  1164.         
  1165.         virtual HRESULT STDMETHODCALLTYPE GetImeMenuItemsA( 
  1166.             /* [in] */ HIMC hIMC,
  1167.             /* [in] */ DWORD dwFlags,
  1168.             /* [in] */ DWORD dwType,
  1169.             /* [in] */ IMEMENUITEMINFOA *pImeParentMenu,
  1170.             /* [out] */ IMEMENUITEMINFOA *pImeMenu,
  1171.             /* [in] */ DWORD dwSize,
  1172.             /* [out] */ DWORD *pdwResult) = 0;
  1173.         
  1174.         virtual HRESULT STDMETHODCALLTYPE GetImeMenuItemsW( 
  1175.             /* [in] */ HIMC hIMC,
  1176.             /* [in] */ DWORD dwFlags,
  1177.             /* [in] */ DWORD dwType,
  1178.             /* [in] */ IMEMENUITEMINFOW *pImeParentMenu,
  1179.             /* [out] */ IMEMENUITEMINFOW *pImeMenu,
  1180.             /* [in] */ DWORD dwSize,
  1181.             /* [out] */ DWORD *pdwResult) = 0;
  1182.         
  1183.         virtual HRESULT STDMETHODCALLTYPE EnumInputContext( 
  1184.             /* [in] */ DWORD idThread,
  1185.             /* [out] */ IEnumInputContext **ppEnum) = 0;
  1186.         
  1187.     };
  1188.     
  1189. #else  /* C style interface */
  1190.     typedef struct IActiveIMMAppVtbl
  1191.     {
  1192.         BEGIN_INTERFACE
  1193.         
  1194.         HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
  1195.             IActiveIMMApp * This,
  1196.             /* [in] */ REFIID riid,
  1197.             /* [iid_is][out] */ void **ppvObject);
  1198.         
  1199.         ULONG ( STDMETHODCALLTYPE *AddRef )( 
  1200.             IActiveIMMApp * This);
  1201.         
  1202.         ULONG ( STDMETHODCALLTYPE *Release )( 
  1203.             IActiveIMMApp * This);
  1204.         
  1205.         HRESULT ( STDMETHODCALLTYPE *AssociateContext )( 
  1206.             IActiveIMMApp * This,
  1207.             /* [in] */ HWND hWnd,
  1208.             /* [in] */ HIMC hIME,
  1209.             /* [out] */ HIMC *phPrev);
  1210.         
  1211.         HRESULT ( STDMETHODCALLTYPE *ConfigureIMEA )( 
  1212.             IActiveIMMApp * This,
  1213.             /* [in] */ HKL hKL,
  1214.             /* [in] */ HWND hWnd,
  1215.             /* [in] */ DWORD dwMode,
  1216.             /* [in] */ REGISTERWORDA *pData);
  1217.         
  1218.         HRESULT ( STDMETHODCALLTYPE *ConfigureIMEW )( 
  1219.             IActiveIMMApp * This,
  1220.             /* [in] */ HKL hKL,
  1221.             /* [in] */ HWND hWnd,
  1222.             /* [in] */ DWORD dwMode,
  1223.             /* [in] */ REGISTERWORDW *pData);
  1224.         
  1225.         HRESULT ( STDMETHODCALLTYPE *CreateContext )( 
  1226.             IActiveIMMApp * This,
  1227.             /* [out] */ HIMC *phIMC);
  1228.         
  1229.         HRESULT ( STDMETHODCALLTYPE *DestroyContext )( 
  1230.             IActiveIMMApp * This,
  1231.             /* [in] */ HIMC hIME);
  1232.         
  1233.         HRESULT ( STDMETHODCALLTYPE *EnumRegisterWordA )( 
  1234.             IActiveIMMApp * This,
  1235.             /* [in] */ HKL hKL,
  1236.             /* [in] */ LPSTR szReading,
  1237.             /* [in] */ DWORD dwStyle,
  1238.             /* [in] */ LPSTR szRegister,
  1239.             /* [in] */ LPVOID pData,
  1240.             /* [out] */ IEnumRegisterWordA **pEnum);
  1241.         
  1242.         HRESULT ( STDMETHODCALLTYPE *EnumRegisterWordW )( 
  1243.             IActiveIMMApp * This,
  1244.             /* [in] */ HKL hKL,
  1245.             /* [in] */ LPWSTR szReading,
  1246.             /* [in] */ DWORD dwStyle,
  1247.             /* [in] */ LPWSTR szRegister,
  1248.             /* [in] */ LPVOID pData,
  1249.             /* [out] */ IEnumRegisterWordW **pEnum);
  1250.         
  1251.         HRESULT ( STDMETHODCALLTYPE *EscapeA )( 
  1252.             IActiveIMMApp * This,
  1253.             /* [in] */ HKL hKL,
  1254.             /* [in] */ HIMC hIMC,
  1255.             /* [in] */ UINT uEscape,
  1256.             /* [out][in] */ LPVOID pData,
  1257.             /* [out] */ LRESULT *plResult);
  1258.         
  1259.         HRESULT ( STDMETHODCALLTYPE *EscapeW )( 
  1260.             IActiveIMMApp * This,
  1261.             /* [in] */ HKL hKL,
  1262.             /* [in] */ HIMC hIMC,
  1263.             /* [in] */ UINT uEscape,
  1264.             /* [out][in] */ LPVOID pData,
  1265.             /* [out] */ LRESULT *plResult);
  1266.         
  1267.         HRESULT ( STDMETHODCALLTYPE *GetCandidateListA )( 
  1268.             IActiveIMMApp * This,
  1269.             /* [in] */ HIMC hIMC,
  1270.             /* [in] */ DWORD dwIndex,
  1271.             /* [in] */ UINT uBufLen,
  1272.             /* [out] */ CANDIDATELIST *pCandList,
  1273.             /* [out] */ UINT *puCopied);
  1274.         
  1275.         HRESULT ( STDMETHODCALLTYPE *GetCandidateListW )( 
  1276.             IActiveIMMApp * This,
  1277.             /* [in] */ HIMC hIMC,
  1278.             /* [in] */ DWORD dwIndex,
  1279.             /* [in] */ UINT uBufLen,
  1280.             /* [out] */ CANDIDATELIST *pCandList,
  1281.             /* [out] */ UINT *puCopied);
  1282.         
  1283.         HRESULT ( STDMETHODCALLTYPE *GetCandidateListCountA )( 
  1284.             IActiveIMMApp * This,
  1285.             /* [in] */ HIMC hIMC,
  1286.             /* [out] */ DWORD *pdwListSize,
  1287.             /* [out] */ DWORD *pdwBufLen);
  1288.         
  1289.         HRESULT ( STDMETHODCALLTYPE *GetCandidateListCountW )( 
  1290.             IActiveIMMApp * This,
  1291.             /* [in] */ HIMC hIMC,
  1292.             /* [out] */ DWORD *pdwListSize,
  1293.             /* [out] */ DWORD *pdwBufLen);
  1294.         
  1295.         HRESULT ( STDMETHODCALLTYPE *GetCandidateWindow )( 
  1296.             IActiveIMMApp * This,
  1297.             /* [in] */ HIMC hIMC,
  1298.             /* [in] */ DWORD dwIndex,
  1299.             /* [out] */ CANDIDATEFORM *pCandidate);
  1300.         
  1301.         HRESULT ( STDMETHODCALLTYPE *GetCompositionFontA )( 
  1302.             IActiveIMMApp * This,
  1303.             /* [in] */ HIMC hIMC,
  1304.             /* [out] */ LOGFONTA *plf);
  1305.         
  1306.         HRESULT ( STDMETHODCALLTYPE *GetCompositionFontW )( 
  1307.             IActiveIMMApp * This,
  1308.             /* [in] */ HIMC hIMC,
  1309.             /* [out] */ LOGFONTW *plf);
  1310.         
  1311.         HRESULT ( STDMETHODCALLTYPE *GetCompositionStringA )( 
  1312.             IActiveIMMApp * This,
  1313.             /* [in] */ HIMC hIMC,
  1314.             /* [in] */ DWORD dwIndex,
  1315.             /* [in] */ DWORD dwBufLen,
  1316.             /* [out] */ LONG *plCopied,
  1317.             /* [out] */ LPVOID pBuf);
  1318.         
  1319.         HRESULT ( STDMETHODCALLTYPE *GetCompositionStringW )( 
  1320.             IActiveIMMApp * This,
  1321.             /* [in] */ HIMC hIMC,
  1322.             /* [in] */ DWORD dwIndex,
  1323.             /* [in] */ DWORD dwBufLen,
  1324.             /* [out] */ LONG *plCopied,
  1325.             /* [out] */ LPVOID pBuf);
  1326.         
  1327.         HRESULT ( STDMETHODCALLTYPE *GetCompositionWindow )( 
  1328.             IActiveIMMApp * This,
  1329.             /* [in] */ HIMC hIMC,
  1330.             /* [out] */ COMPOSITIONFORM *pCompForm);
  1331.         
  1332.         HRESULT ( STDMETHODCALLTYPE *GetContext )( 
  1333.             IActiveIMMApp * This,
  1334.             /* [in] */ HWND hWnd,
  1335.             /* [out] */ HIMC *phIMC);
  1336.         
  1337.         HRESULT ( STDMETHODCALLTYPE *GetConversionListA )( 
  1338.             IActiveIMMApp * This,
  1339.             /* [in] */ HKL hKL,
  1340.             /* [in] */ HIMC hIMC,
  1341.             /* [in] */ LPSTR pSrc,
  1342.             /* [in] */ UINT uBufLen,
  1343.             /* [in] */ UINT uFlag,
  1344.             /* [out] */ CANDIDATELIST *pDst,
  1345.             /* [out] */ UINT *puCopied);
  1346.         
  1347.         HRESULT ( STDMETHODCALLTYPE *GetConversionListW )( 
  1348.             IActiveIMMApp * This,
  1349.             /* [in] */ HKL hKL,
  1350.             /* [in] */ HIMC hIMC,
  1351.             /* [in] */ LPWSTR pSrc,
  1352.             /* [in] */ UINT uBufLen,
  1353.             /* [in] */ UINT uFlag,
  1354.             /* [out] */ CANDIDATELIST *pDst,
  1355.             /* [out] */ UINT *puCopied);
  1356.         
  1357.         HRESULT ( STDMETHODCALLTYPE *GetConversionStatus )( 
  1358.             IActiveIMMApp * This,
  1359.             /* [in] */ HIMC hIMC,
  1360.             /* [out] */ DWORD *pfdwConversion,
  1361.             /* [out] */ DWORD *pfdwSentence);
  1362.         
  1363.         HRESULT ( STDMETHODCALLTYPE *GetDefaultIMEWnd )( 
  1364.             IActiveIMMApp * This,
  1365.             /* [in] */ HWND hWnd,
  1366.             /* [out] */ HWND *phDefWnd);
  1367.         
  1368.         HRESULT ( STDMETHODCALLTYPE *GetDescriptionA )( 
  1369.             IActiveIMMApp * This,
  1370.             /* [in] */ HKL hKL,
  1371.             /* [in] */ UINT uBufLen,
  1372.             /* [out] */ LPSTR szDescription,
  1373.             /* [out] */ UINT *puCopied);
  1374.         
  1375.         HRESULT ( STDMETHODCALLTYPE *GetDescriptionW )( 
  1376.             IActiveIMMApp * This,
  1377.             /* [in] */ HKL hKL,
  1378.             /* [in] */ UINT uBufLen,
  1379.             /* [out] */ LPWSTR szDescription,
  1380.             /* [out] */ UINT *puCopied);
  1381.         
  1382.         HRESULT ( STDMETHODCALLTYPE *GetGuideLineA )( 
  1383.             IActiveIMMApp * This,
  1384.             /* [in] */ HIMC hIMC,
  1385.             /* [in] */ DWORD dwIndex,
  1386.             /* [in] */ DWORD dwBufLen,
  1387.             /* [out] */ LPSTR pBuf,
  1388.             /* [out] */ DWORD *pdwResult);
  1389.         
  1390.         HRESULT ( STDMETHODCALLTYPE *GetGuideLineW )( 
  1391.             IActiveIMMApp * This,
  1392.             /* [in] */ HIMC hIMC,
  1393.             /* [in] */ DWORD dwIndex,
  1394.             /* [in] */ DWORD dwBufLen,
  1395.             /* [out] */ LPWSTR pBuf,
  1396.             /* [out] */ DWORD *pdwResult);
  1397.         
  1398.         HRESULT ( STDMETHODCALLTYPE *GetIMEFileNameA )( 
  1399.             IActiveIMMApp * This,
  1400.             /* [in] */ HKL hKL,
  1401.             /* [in] */ UINT uBufLen,
  1402.             /* [out] */ LPSTR szFileName,
  1403.             /* [out] */ UINT *puCopied);
  1404.         
  1405.         HRESULT ( STDMETHODCALLTYPE *GetIMEFileNameW )( 
  1406.             IActiveIMMApp * This,
  1407.             /* [in] */ HKL hKL,
  1408.             /* [in] */ UINT uBufLen,
  1409.             /* [out] */ LPWSTR szFileName,
  1410.             /* [out] */ UINT *puCopied);
  1411.         
  1412.         HRESULT ( STDMETHODCALLTYPE *GetOpenStatus )( 
  1413.             IActiveIMMApp * This,
  1414.             /* [in] */ HIMC hIMC);
  1415.         
  1416.         HRESULT ( STDMETHODCALLTYPE *GetProperty )( 
  1417.             IActiveIMMApp * This,
  1418.             /* [in] */ HKL hKL,
  1419.             /* [in] */ DWORD fdwIndex,
  1420.             /* [out] */ DWORD *pdwProperty);
  1421.         
  1422.         HRESULT ( STDMETHODCALLTYPE *GetRegisterWordStyleA )( 
  1423.             IActiveIMMApp * This,
  1424.             /* [in] */ HKL hKL,
  1425.             /* [in] */ UINT nItem,
  1426.             /* [out] */ STYLEBUFA *pStyleBuf,
  1427.             /* [out] */ UINT *puCopied);
  1428.         
  1429.         HRESULT ( STDMETHODCALLTYPE *GetRegisterWordStyleW )( 
  1430.             IActiveIMMApp * This,
  1431.             /* [in] */ HKL hKL,
  1432.             /* [in] */ UINT nItem,
  1433.             /* [out] */ STYLEBUFW *pStyleBuf,
  1434.             /* [out] */ UINT *puCopied);
  1435.         
  1436.         HRESULT ( STDMETHODCALLTYPE *GetStatusWindowPos )( 
  1437.             IActiveIMMApp * This,
  1438.             /* [in] */ HIMC hIMC,
  1439.             /* [out] */ POINT *pptPos);
  1440.         
  1441.         HRESULT ( STDMETHODCALLTYPE *GetVirtualKey )( 
  1442.             IActiveIMMApp * This,
  1443.             /* [in] */ HWND hWnd,
  1444.             /* [out] */ UINT *puVirtualKey);
  1445.         
  1446.         HRESULT ( STDMETHODCALLTYPE *InstallIMEA )( 
  1447.             IActiveIMMApp * This,
  1448.             /* [in] */ LPSTR szIMEFileName,
  1449.             /* [in] */ LPSTR szLayoutText,
  1450.             /* [out] */ HKL *phKL);
  1451.         
  1452.         HRESULT ( STDMETHODCALLTYPE *InstallIMEW )( 
  1453.             IActiveIMMApp * This,
  1454.             /* [in] */ LPWSTR szIMEFileName,
  1455.             /* [in] */ LPWSTR szLayoutText,
  1456.             /* [out] */ HKL *phKL);
  1457.         
  1458.         HRESULT ( STDMETHODCALLTYPE *IsIME )( 
  1459.             IActiveIMMApp * This,
  1460.             /* [in] */ HKL hKL);
  1461.         
  1462.         HRESULT ( STDMETHODCALLTYPE *IsUIMessageA )( 
  1463.             IActiveIMMApp * This,
  1464.             /* [in] */ HWND hWndIME,
  1465.             /* [in] */ UINT msg,
  1466.             /* [in] */ WPARAM wParam,
  1467.             /* [in] */ LPARAM lParam);
  1468.         
  1469.         HRESULT ( STDMETHODCALLTYPE *IsUIMessageW )( 
  1470.             IActiveIMMApp * This,
  1471.             /* [in] */ HWND hWndIME,
  1472.             /* [in] */ UINT msg,
  1473.             /* [in] */ WPARAM wParam,
  1474.             /* [in] */ LPARAM lParam);
  1475.         
  1476.         HRESULT ( STDMETHODCALLTYPE *NotifyIME )( 
  1477.             IActiveIMMApp * This,
  1478.             /* [in] */ HIMC hIMC,
  1479.             /* [in] */ DWORD dwAction,
  1480.             /* [in] */ DWORD dwIndex,
  1481.             /* [in] */ DWORD dwValue);
  1482.         
  1483.         HRESULT ( STDMETHODCALLTYPE *RegisterWordA )( 
  1484.             IActiveIMMApp * This,
  1485.             /* [in] */ HKL hKL,
  1486.             /* [in] */ LPSTR szReading,
  1487.             /* [in] */ DWORD dwStyle,
  1488.             /* [in] */ LPSTR szRegister);
  1489.         
  1490.         HRESULT ( STDMETHODCALLTYPE *RegisterWordW )( 
  1491.             IActiveIMMApp * This,
  1492.             /* [in] */ HKL hKL,
  1493.             /* [in] */ LPWSTR szReading,
  1494.             /* [in] */ DWORD dwStyle,
  1495.             /* [in] */ LPWSTR szRegister);
  1496.         
  1497.         HRESULT ( STDMETHODCALLTYPE *ReleaseContext )( 
  1498.             IActiveIMMApp * This,
  1499.             /* [in] */ HWND hWnd,
  1500.             /* [in] */ HIMC hIMC);
  1501.         
  1502.         HRESULT ( STDMETHODCALLTYPE *SetCandidateWindow )( 
  1503.             IActiveIMMApp * This,
  1504.             /* [in] */ HIMC hIMC,
  1505.             /* [in] */ CANDIDATEFORM *pCandidate);
  1506.         
  1507.         HRESULT ( STDMETHODCALLTYPE *SetCompositionFontA )( 
  1508.             IActiveIMMApp * This,
  1509.             /* [in] */ HIMC hIMC,
  1510.             /* [in] */ LOGFONTA *plf);
  1511.         
  1512.         HRESULT ( STDMETHODCALLTYPE *SetCompositionFontW )( 
  1513.             IActiveIMMApp * This,
  1514.             /* [in] */ HIMC hIMC,
  1515.             /* [in] */ LOGFONTW *plf);
  1516.         
  1517.         HRESULT ( STDMETHODCALLTYPE *SetCompositionStringA )( 
  1518.             IActiveIMMApp * This,
  1519.             /* [in] */ HIMC hIMC,
  1520.             /* [in] */ DWORD dwIndex,
  1521.             /* [in] */ LPVOID pComp,
  1522.             /* [in] */ DWORD dwCompLen,
  1523.             /* [in] */ LPVOID pRead,
  1524.             /* [in] */ DWORD dwReadLen);
  1525.         
  1526.         HRESULT ( STDMETHODCALLTYPE *SetCompositionStringW )( 
  1527.             IActiveIMMApp * This,
  1528.             /* [in] */ HIMC hIMC,
  1529.             /* [in] */ DWORD dwIndex,
  1530.             /* [in] */ LPVOID pComp,
  1531.             /* [in] */ DWORD dwCompLen,
  1532.             /* [in] */ LPVOID pRead,
  1533.             /* [in] */ DWORD dwReadLen);
  1534.         
  1535.         HRESULT ( STDMETHODCALLTYPE *SetCompositionWindow )( 
  1536.             IActiveIMMApp * This,
  1537.             /* [in] */ HIMC hIMC,
  1538.             /* [in] */ COMPOSITIONFORM *pCompForm);
  1539.         
  1540.         HRESULT ( STDMETHODCALLTYPE *SetConversionStatus )( 
  1541.             IActiveIMMApp * This,
  1542.             /* [in] */ HIMC hIMC,
  1543.             /* [in] */ DWORD fdwConversion,
  1544.             /* [in] */ DWORD fdwSentence);
  1545.         
  1546.         HRESULT ( STDMETHODCALLTYPE *SetOpenStatus )( 
  1547.             IActiveIMMApp * This,
  1548.             /* [in] */ HIMC hIMC,
  1549.             /* [in] */ BOOL fOpen);
  1550.         
  1551.         HRESULT ( STDMETHODCALLTYPE *SetStatusWindowPos )( 
  1552.             IActiveIMMApp * This,
  1553.             /* [in] */ HIMC hIMC,
  1554.             /* [in] */ POINT *pptPos);
  1555.         
  1556.         HRESULT ( STDMETHODCALLTYPE *SimulateHotKey )( 
  1557.             IActiveIMMApp * This,
  1558.             /* [in] */ HWND hWnd,
  1559.             /* [in] */ DWORD dwHotKeyID);
  1560.         
  1561.         HRESULT ( STDMETHODCALLTYPE *UnregisterWordA )( 
  1562.             IActiveIMMApp * This,
  1563.             /* [in] */ HKL hKL,
  1564.             /* [in] */ LPSTR szReading,
  1565.             /* [in] */ DWORD dwStyle,
  1566.             /* [in] */ LPSTR szUnregister);
  1567.         
  1568.         HRESULT ( STDMETHODCALLTYPE *UnregisterWordW )( 
  1569.             IActiveIMMApp * This,
  1570.             /* [in] */ HKL hKL,
  1571.             /* [in] */ LPWSTR szReading,
  1572.             /* [in] */ DWORD dwStyle,
  1573.             /* [in] */ LPWSTR szUnregister);
  1574.         
  1575.         HRESULT ( STDMETHODCALLTYPE *Activate )( 
  1576.             IActiveIMMApp * This,
  1577.             /* [in] */ BOOL fRestoreLayout);
  1578.         
  1579.         HRESULT ( STDMETHODCALLTYPE *Deactivate )( 
  1580.             IActiveIMMApp * This);
  1581.         
  1582.         HRESULT ( STDMETHODCALLTYPE *OnDefWindowProc )( 
  1583.             IActiveIMMApp * This,
  1584.             /* [in] */ HWND hWnd,
  1585.             /* [in] */ UINT Msg,
  1586.             /* [in] */ WPARAM wParam,
  1587.             /* [in] */ LPARAM lParam,
  1588.             /* [out] */ LRESULT *plResult);
  1589.         
  1590.         HRESULT ( STDMETHODCALLTYPE *FilterClientWindows )( 
  1591.             IActiveIMMApp * This,
  1592.             /* [in] */ ATOM *aaClassList,
  1593.             /* [in] */ UINT uSize);
  1594.         
  1595.         HRESULT ( STDMETHODCALLTYPE *GetCodePageA )( 
  1596.             IActiveIMMApp * This,
  1597.             /* [in] */ HKL hKL,
  1598.             /* [out] */ UINT *uCodePage);
  1599.         
  1600.         HRESULT ( STDMETHODCALLTYPE *GetLangId )( 
  1601.             IActiveIMMApp * This,
  1602.             /* [in] */ HKL hKL,
  1603.             /* [out] */ LANGID *plid);
  1604.         
  1605.         HRESULT ( STDMETHODCALLTYPE *AssociateContextEx )( 
  1606.             IActiveIMMApp * This,
  1607.             /* [in] */ HWND hWnd,
  1608.             /* [in] */ HIMC hIMC,
  1609.             /* [in] */ DWORD dwFlags);
  1610.         
  1611.         HRESULT ( STDMETHODCALLTYPE *DisableIME )( 
  1612.             IActiveIMMApp * This,
  1613.             /* [in] */ DWORD idThread);
  1614.         
  1615.         HRESULT ( STDMETHODCALLTYPE *GetImeMenuItemsA )( 
  1616.             IActiveIMMApp * This,
  1617.             /* [in] */ HIMC hIMC,
  1618.             /* [in] */ DWORD dwFlags,
  1619.             /* [in] */ DWORD dwType,
  1620.             /* [in] */ IMEMENUITEMINFOA *pImeParentMenu,
  1621.             /* [out] */ IMEMENUITEMINFOA *pImeMenu,
  1622.             /* [in] */ DWORD dwSize,
  1623.             /* [out] */ DWORD *pdwResult);
  1624.         
  1625.         HRESULT ( STDMETHODCALLTYPE *GetImeMenuItemsW )( 
  1626.             IActiveIMMApp * This,
  1627.             /* [in] */ HIMC hIMC,
  1628.             /* [in] */ DWORD dwFlags,
  1629.             /* [in] */ DWORD dwType,
  1630.             /* [in] */ IMEMENUITEMINFOW *pImeParentMenu,
  1631.             /* [out] */ IMEMENUITEMINFOW *pImeMenu,
  1632.             /* [in] */ DWORD dwSize,
  1633.             /* [out] */ DWORD *pdwResult);
  1634.         
  1635.         HRESULT ( STDMETHODCALLTYPE *EnumInputContext )( 
  1636.             IActiveIMMApp * This,
  1637.             /* [in] */ DWORD idThread,
  1638.             /* [out] */ IEnumInputContext **ppEnum);
  1639.         
  1640.         END_INTERFACE
  1641.     } IActiveIMMAppVtbl;
  1642.     interface IActiveIMMApp
  1643.     {
  1644.         CONST_VTBL struct IActiveIMMAppVtbl *lpVtbl;
  1645.     };
  1646.     
  1647. #ifdef COBJMACROS
  1648. #define IActiveIMMApp_QueryInterface(This,riid,ppvObject)
  1649.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  1650. #define IActiveIMMApp_AddRef(This)
  1651.     (This)->lpVtbl -> AddRef(This)
  1652. #define IActiveIMMApp_Release(This)
  1653.     (This)->lpVtbl -> Release(This)
  1654. #define IActiveIMMApp_AssociateContext(This,hWnd,hIME,phPrev)
  1655.     (This)->lpVtbl -> AssociateContext(This,hWnd,hIME,phPrev)
  1656. #define IActiveIMMApp_ConfigureIMEA(This,hKL,hWnd,dwMode,pData)
  1657.     (This)->lpVtbl -> ConfigureIMEA(This,hKL,hWnd,dwMode,pData)
  1658. #define IActiveIMMApp_ConfigureIMEW(This,hKL,hWnd,dwMode,pData)
  1659.     (This)->lpVtbl -> ConfigureIMEW(This,hKL,hWnd,dwMode,pData)
  1660. #define IActiveIMMApp_CreateContext(This,phIMC)
  1661.     (This)->lpVtbl -> CreateContext(This,phIMC)
  1662. #define IActiveIMMApp_DestroyContext(This,hIME)
  1663.     (This)->lpVtbl -> DestroyContext(This,hIME)
  1664. #define IActiveIMMApp_EnumRegisterWordA(This,hKL,szReading,dwStyle,szRegister,pData,pEnum)
  1665.     (This)->lpVtbl -> EnumRegisterWordA(This,hKL,szReading,dwStyle,szRegister,pData,pEnum)
  1666. #define IActiveIMMApp_EnumRegisterWordW(This,hKL,szReading,dwStyle,szRegister,pData,pEnum)
  1667.     (This)->lpVtbl -> EnumRegisterWordW(This,hKL,szReading,dwStyle,szRegister,pData,pEnum)
  1668. #define IActiveIMMApp_EscapeA(This,hKL,hIMC,uEscape,pData,plResult)
  1669.     (This)->lpVtbl -> EscapeA(This,hKL,hIMC,uEscape,pData,plResult)
  1670. #define IActiveIMMApp_EscapeW(This,hKL,hIMC,uEscape,pData,plResult)
  1671.     (This)->lpVtbl -> EscapeW(This,hKL,hIMC,uEscape,pData,plResult)
  1672. #define IActiveIMMApp_GetCandidateListA(This,hIMC,dwIndex,uBufLen,pCandList,puCopied)
  1673.     (This)->lpVtbl -> GetCandidateListA(This,hIMC,dwIndex,uBufLen,pCandList,puCopied)
  1674. #define IActiveIMMApp_GetCandidateListW(This,hIMC,dwIndex,uBufLen,pCandList,puCopied)
  1675.     (This)->lpVtbl -> GetCandidateListW(This,hIMC,dwIndex,uBufLen,pCandList,puCopied)
  1676. #define IActiveIMMApp_GetCandidateListCountA(This,hIMC,pdwListSize,pdwBufLen)
  1677.     (This)->lpVtbl -> GetCandidateListCountA(This,hIMC,pdwListSize,pdwBufLen)
  1678. #define IActiveIMMApp_GetCandidateListCountW(This,hIMC,pdwListSize,pdwBufLen)
  1679.     (This)->lpVtbl -> GetCandidateListCountW(This,hIMC,pdwListSize,pdwBufLen)
  1680. #define IActiveIMMApp_GetCandidateWindow(This,hIMC,dwIndex,pCandidate)
  1681.     (This)->lpVtbl -> GetCandidateWindow(This,hIMC,dwIndex,pCandidate)
  1682. #define IActiveIMMApp_GetCompositionFontA(This,hIMC,plf)
  1683.     (This)->lpVtbl -> GetCompositionFontA(This,hIMC,plf)
  1684. #define IActiveIMMApp_GetCompositionFontW(This,hIMC,plf)
  1685.     (This)->lpVtbl -> GetCompositionFontW(This,hIMC,plf)
  1686. #define IActiveIMMApp_GetCompositionStringA(This,hIMC,dwIndex,dwBufLen,plCopied,pBuf)
  1687.     (This)->lpVtbl -> GetCompositionStringA(This,hIMC,dwIndex,dwBufLen,plCopied,pBuf)
  1688. #define IActiveIMMApp_GetCompositionStringW(This,hIMC,dwIndex,dwBufLen,plCopied,pBuf)
  1689.     (This)->lpVtbl -> GetCompositionStringW(This,hIMC,dwIndex,dwBufLen,plCopied,pBuf)
  1690. #define IActiveIMMApp_GetCompositionWindow(This,hIMC,pCompForm)
  1691.     (This)->lpVtbl -> GetCompositionWindow(This,hIMC,pCompForm)
  1692. #define IActiveIMMApp_GetContext(This,hWnd,phIMC)
  1693.     (This)->lpVtbl -> GetContext(This,hWnd,phIMC)
  1694. #define IActiveIMMApp_GetConversionListA(This,hKL,hIMC,pSrc,uBufLen,uFlag,pDst,puCopied)
  1695.     (This)->lpVtbl -> GetConversionListA(This,hKL,hIMC,pSrc,uBufLen,uFlag,pDst,puCopied)
  1696. #define IActiveIMMApp_GetConversionListW(This,hKL,hIMC,pSrc,uBufLen,uFlag,pDst,puCopied)
  1697.     (This)->lpVtbl -> GetConversionListW(This,hKL,hIMC,pSrc,uBufLen,uFlag,pDst,puCopied)
  1698. #define IActiveIMMApp_GetConversionStatus(This,hIMC,pfdwConversion,pfdwSentence)
  1699.     (This)->lpVtbl -> GetConversionStatus(This,hIMC,pfdwConversion,pfdwSentence)
  1700. #define IActiveIMMApp_GetDefaultIMEWnd(This,hWnd,phDefWnd)
  1701.     (This)->lpVtbl -> GetDefaultIMEWnd(This,hWnd,phDefWnd)
  1702. #define IActiveIMMApp_GetDescriptionA(This,hKL,uBufLen,szDescription,puCopied)
  1703.     (This)->lpVtbl -> GetDescriptionA(This,hKL,uBufLen,szDescription,puCopied)
  1704. #define IActiveIMMApp_GetDescriptionW(This,hKL,uBufLen,szDescription,puCopied)
  1705.     (This)->lpVtbl -> GetDescriptionW(This,hKL,uBufLen,szDescription,puCopied)
  1706. #define IActiveIMMApp_GetGuideLineA(This,hIMC,dwIndex,dwBufLen,pBuf,pdwResult)
  1707.     (This)->lpVtbl -> GetGuideLineA(This,hIMC,dwIndex,dwBufLen,pBuf,pdwResult)
  1708. #define IActiveIMMApp_GetGuideLineW(This,hIMC,dwIndex,dwBufLen,pBuf,pdwResult)
  1709.     (This)->lpVtbl -> GetGuideLineW(This,hIMC,dwIndex,dwBufLen,pBuf,pdwResult)
  1710. #define IActiveIMMApp_GetIMEFileNameA(This,hKL,uBufLen,szFileName,puCopied)
  1711.     (This)->lpVtbl -> GetIMEFileNameA(This,hKL,uBufLen,szFileName,puCopied)
  1712. #define IActiveIMMApp_GetIMEFileNameW(This,hKL,uBufLen,szFileName,puCopied)
  1713.     (This)->lpVtbl -> GetIMEFileNameW(This,hKL,uBufLen,szFileName,puCopied)
  1714. #define IActiveIMMApp_GetOpenStatus(This,hIMC)
  1715.     (This)->lpVtbl -> GetOpenStatus(This,hIMC)
  1716. #define IActiveIMMApp_GetProperty(This,hKL,fdwIndex,pdwProperty)
  1717.     (This)->lpVtbl -> GetProperty(This,hKL,fdwIndex,pdwProperty)
  1718. #define IActiveIMMApp_GetRegisterWordStyleA(This,hKL,nItem,pStyleBuf,puCopied)
  1719.     (This)->lpVtbl -> GetRegisterWordStyleA(This,hKL,nItem,pStyleBuf,puCopied)
  1720. #define IActiveIMMApp_GetRegisterWordStyleW(This,hKL,nItem,pStyleBuf,puCopied)
  1721.     (This)->lpVtbl -> GetRegisterWordStyleW(This,hKL,nItem,pStyleBuf,puCopied)
  1722. #define IActiveIMMApp_GetStatusWindowPos(This,hIMC,pptPos)
  1723.     (This)->lpVtbl -> GetStatusWindowPos(This,hIMC,pptPos)
  1724. #define IActiveIMMApp_GetVirtualKey(This,hWnd,puVirtualKey)
  1725.     (This)->lpVtbl -> GetVirtualKey(This,hWnd,puVirtualKey)
  1726. #define IActiveIMMApp_InstallIMEA(This,szIMEFileName,szLayoutText,phKL)
  1727.     (This)->lpVtbl -> InstallIMEA(This,szIMEFileName,szLayoutText,phKL)
  1728. #define IActiveIMMApp_InstallIMEW(This,szIMEFileName,szLayoutText,phKL)
  1729.     (This)->lpVtbl -> InstallIMEW(This,szIMEFileName,szLayoutText,phKL)
  1730. #define IActiveIMMApp_IsIME(This,hKL)
  1731.     (This)->lpVtbl -> IsIME(This,hKL)
  1732. #define IActiveIMMApp_IsUIMessageA(This,hWndIME,msg,wParam,lParam)
  1733.     (This)->lpVtbl -> IsUIMessageA(This,hWndIME,msg,wParam,lParam)
  1734. #define IActiveIMMApp_IsUIMessageW(This,hWndIME,msg,wParam,lParam)
  1735.     (This)->lpVtbl -> IsUIMessageW(This,hWndIME,msg,wParam,lParam)
  1736. #define IActiveIMMApp_NotifyIME(This,hIMC,dwAction,dwIndex,dwValue)
  1737.     (This)->lpVtbl -> NotifyIME(This,hIMC,dwAction,dwIndex,dwValue)
  1738. #define IActiveIMMApp_RegisterWordA(This,hKL,szReading,dwStyle,szRegister)
  1739.     (This)->lpVtbl -> RegisterWordA(This,hKL,szReading,dwStyle,szRegister)
  1740. #define IActiveIMMApp_RegisterWordW(This,hKL,szReading,dwStyle,szRegister)
  1741.     (This)->lpVtbl -> RegisterWordW(This,hKL,szReading,dwStyle,szRegister)
  1742. #define IActiveIMMApp_ReleaseContext(This,hWnd,hIMC)
  1743.     (This)->lpVtbl -> ReleaseContext(This,hWnd,hIMC)
  1744. #define IActiveIMMApp_SetCandidateWindow(This,hIMC,pCandidate)
  1745.     (This)->lpVtbl -> SetCandidateWindow(This,hIMC,pCandidate)
  1746. #define IActiveIMMApp_SetCompositionFontA(This,hIMC,plf)
  1747.     (This)->lpVtbl -> SetCompositionFontA(This,hIMC,plf)
  1748. #define IActiveIMMApp_SetCompositionFontW(This,hIMC,plf)
  1749.     (This)->lpVtbl -> SetCompositionFontW(This,hIMC,plf)
  1750. #define IActiveIMMApp_SetCompositionStringA(This,hIMC,dwIndex,pComp,dwCompLen,pRead,dwReadLen)
  1751.     (This)->lpVtbl -> SetCompositionStringA(This,hIMC,dwIndex,pComp,dwCompLen,pRead,dwReadLen)
  1752. #define IActiveIMMApp_SetCompositionStringW(This,hIMC,dwIndex,pComp,dwCompLen,pRead,dwReadLen)
  1753.     (This)->lpVtbl -> SetCompositionStringW(This,hIMC,dwIndex,pComp,dwCompLen,pRead,dwReadLen)
  1754. #define IActiveIMMApp_SetCompositionWindow(This,hIMC,pCompForm)
  1755.     (This)->lpVtbl -> SetCompositionWindow(This,hIMC,pCompForm)
  1756. #define IActiveIMMApp_SetConversionStatus(This,hIMC,fdwConversion,fdwSentence)
  1757.     (This)->lpVtbl -> SetConversionStatus(This,hIMC,fdwConversion,fdwSentence)
  1758. #define IActiveIMMApp_SetOpenStatus(This,hIMC,fOpen)
  1759.     (This)->lpVtbl -> SetOpenStatus(This,hIMC,fOpen)
  1760. #define IActiveIMMApp_SetStatusWindowPos(This,hIMC,pptPos)
  1761.     (This)->lpVtbl -> SetStatusWindowPos(This,hIMC,pptPos)
  1762. #define IActiveIMMApp_SimulateHotKey(This,hWnd,dwHotKeyID)
  1763.     (This)->lpVtbl -> SimulateHotKey(This,hWnd,dwHotKeyID)
  1764. #define IActiveIMMApp_UnregisterWordA(This,hKL,szReading,dwStyle,szUnregister)
  1765.     (This)->lpVtbl -> UnregisterWordA(This,hKL,szReading,dwStyle,szUnregister)
  1766. #define IActiveIMMApp_UnregisterWordW(This,hKL,szReading,dwStyle,szUnregister)
  1767.     (This)->lpVtbl -> UnregisterWordW(This,hKL,szReading,dwStyle,szUnregister)
  1768. #define IActiveIMMApp_Activate(This,fRestoreLayout)
  1769.     (This)->lpVtbl -> Activate(This,fRestoreLayout)
  1770. #define IActiveIMMApp_Deactivate(This)
  1771.     (This)->lpVtbl -> Deactivate(This)
  1772. #define IActiveIMMApp_OnDefWindowProc(This,hWnd,Msg,wParam,lParam,plResult)
  1773.     (This)->lpVtbl -> OnDefWindowProc(This,hWnd,Msg,wParam,lParam,plResult)
  1774. #define IActiveIMMApp_FilterClientWindows(This,aaClassList,uSize)
  1775.     (This)->lpVtbl -> FilterClientWindows(This,aaClassList,uSize)
  1776. #define IActiveIMMApp_GetCodePageA(This,hKL,uCodePage)
  1777.     (This)->lpVtbl -> GetCodePageA(This,hKL,uCodePage)
  1778. #define IActiveIMMApp_GetLangId(This,hKL,plid)
  1779.     (This)->lpVtbl -> GetLangId(This,hKL,plid)
  1780. #define IActiveIMMApp_AssociateContextEx(This,hWnd,hIMC,dwFlags)
  1781.     (This)->lpVtbl -> AssociateContextEx(This,hWnd,hIMC,dwFlags)
  1782. #define IActiveIMMApp_DisableIME(This,idThread)
  1783.     (This)->lpVtbl -> DisableIME(This,idThread)
  1784. #define IActiveIMMApp_GetImeMenuItemsA(This,hIMC,dwFlags,dwType,pImeParentMenu,pImeMenu,dwSize,pdwResult)
  1785.     (This)->lpVtbl -> GetImeMenuItemsA(This,hIMC,dwFlags,dwType,pImeParentMenu,pImeMenu,dwSize,pdwResult)
  1786. #define IActiveIMMApp_GetImeMenuItemsW(This,hIMC,dwFlags,dwType,pImeParentMenu,pImeMenu,dwSize,pdwResult)
  1787.     (This)->lpVtbl -> GetImeMenuItemsW(This,hIMC,dwFlags,dwType,pImeParentMenu,pImeMenu,dwSize,pdwResult)
  1788. #define IActiveIMMApp_EnumInputContext(This,idThread,ppEnum)
  1789.     (This)->lpVtbl -> EnumInputContext(This,idThread,ppEnum)
  1790. #endif /* COBJMACROS */
  1791. #endif  /* C style interface */
  1792. HRESULT STDMETHODCALLTYPE IActiveIMMApp_AssociateContext_Proxy( 
  1793.     IActiveIMMApp * This,
  1794.     /* [in] */ HWND hWnd,
  1795.     /* [in] */ HIMC hIME,
  1796.     /* [out] */ HIMC *phPrev);
  1797. void __RPC_STUB IActiveIMMApp_AssociateContext_Stub(
  1798.     IRpcStubBuffer *This,
  1799.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1800.     PRPC_MESSAGE _pRpcMessage,
  1801.     DWORD *_pdwStubPhase);
  1802. HRESULT STDMETHODCALLTYPE IActiveIMMApp_ConfigureIMEA_Proxy( 
  1803.     IActiveIMMApp * This,
  1804.     /* [in] */ HKL hKL,
  1805.     /* [in] */ HWND hWnd,
  1806.     /* [in] */ DWORD dwMode,
  1807.     /* [in] */ REGISTERWORDA *pData);
  1808. void __RPC_STUB IActiveIMMApp_ConfigureIMEA_Stub(
  1809.     IRpcStubBuffer *This,
  1810.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1811.     PRPC_MESSAGE _pRpcMessage,
  1812.     DWORD *_pdwStubPhase);
  1813. HRESULT STDMETHODCALLTYPE IActiveIMMApp_ConfigureIMEW_Proxy( 
  1814.     IActiveIMMApp * This,
  1815.     /* [in] */ HKL hKL,
  1816.     /* [in] */ HWND hWnd,
  1817.     /* [in] */ DWORD dwMode,
  1818.     /* [in] */ REGISTERWORDW *pData);
  1819. void __RPC_STUB IActiveIMMApp_ConfigureIMEW_Stub(
  1820.     IRpcStubBuffer *This,
  1821.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1822.     PRPC_MESSAGE _pRpcMessage,
  1823.     DWORD *_pdwStubPhase);
  1824. HRESULT STDMETHODCALLTYPE IActiveIMMApp_CreateContext_Proxy( 
  1825.     IActiveIMMApp * This,
  1826.     /* [out] */ HIMC *phIMC);
  1827. void __RPC_STUB IActiveIMMApp_CreateContext_Stub(
  1828.     IRpcStubBuffer *This,
  1829.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1830.     PRPC_MESSAGE _pRpcMessage,
  1831.     DWORD *_pdwStubPhase);
  1832. HRESULT STDMETHODCALLTYPE IActiveIMMApp_DestroyContext_Proxy( 
  1833.     IActiveIMMApp * This,
  1834.     /* [in] */ HIMC hIME);
  1835. void __RPC_STUB IActiveIMMApp_DestroyContext_Stub(
  1836.     IRpcStubBuffer *This,
  1837.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1838.     PRPC_MESSAGE _pRpcMessage,
  1839.     DWORD *_pdwStubPhase);
  1840. HRESULT STDMETHODCALLTYPE IActiveIMMApp_EnumRegisterWordA_Proxy( 
  1841.     IActiveIMMApp * This,
  1842.     /* [in] */ HKL hKL,
  1843.     /* [in] */ LPSTR szReading,
  1844.     /* [in] */ DWORD dwStyle,
  1845.     /* [in] */ LPSTR szRegister,
  1846.     /* [in] */ LPVOID pData,
  1847.     /* [out] */ IEnumRegisterWordA **pEnum);
  1848. void __RPC_STUB IActiveIMMApp_EnumRegisterWordA_Stub(
  1849.     IRpcStubBuffer *This,
  1850.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1851.     PRPC_MESSAGE _pRpcMessage,
  1852.     DWORD *_pdwStubPhase);
  1853. HRESULT STDMETHODCALLTYPE IActiveIMMApp_EnumRegisterWordW_Proxy( 
  1854.     IActiveIMMApp * This,
  1855.     /* [in] */ HKL hKL,
  1856.     /* [in] */ LPWSTR szReading,
  1857.     /* [in] */ DWORD dwStyle,
  1858.     /* [in] */ LPWSTR szRegister,
  1859.     /* [in] */ LPVOID pData,
  1860.     /* [out] */ IEnumRegisterWordW **pEnum);
  1861. void __RPC_STUB IActiveIMMApp_EnumRegisterWordW_Stub(
  1862.     IRpcStubBuffer *This,
  1863.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1864.     PRPC_MESSAGE _pRpcMessage,
  1865.     DWORD *_pdwStubPhase);
  1866. HRESULT STDMETHODCALLTYPE IActiveIMMApp_EscapeA_Proxy( 
  1867.     IActiveIMMApp * This,
  1868.     /* [in] */ HKL hKL,
  1869.     /* [in] */ HIMC hIMC,
  1870.     /* [in] */ UINT uEscape,
  1871.     /* [out][in] */ LPVOID pData,
  1872.     /* [out] */ LRESULT *plResult);
  1873. void __RPC_STUB IActiveIMMApp_EscapeA_Stub(
  1874.     IRpcStubBuffer *This,
  1875.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1876.     PRPC_MESSAGE _pRpcMessage,
  1877.     DWORD *_pdwStubPhase);
  1878. HRESULT STDMETHODCALLTYPE IActiveIMMApp_EscapeW_Proxy( 
  1879.     IActiveIMMApp * This,
  1880.     /* [in] */ HKL hKL,
  1881.     /* [in] */ HIMC hIMC,
  1882.     /* [in] */ UINT uEscape,
  1883.     /* [out][in] */ LPVOID pData,
  1884.     /* [out] */ LRESULT *plResult);
  1885. void __RPC_STUB IActiveIMMApp_EscapeW_Stub(
  1886.     IRpcStubBuffer *This,
  1887.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1888.     PRPC_MESSAGE _pRpcMessage,
  1889.     DWORD *_pdwStubPhase);
  1890. HRESULT STDMETHODCALLTYPE IActiveIMMApp_GetCandidateListA_Proxy( 
  1891.     IActiveIMMApp * This,
  1892.     /* [in] */ HIMC hIMC,
  1893.     /* [in] */ DWORD dwIndex,
  1894.     /* [in] */ UINT uBufLen,
  1895.     /* [out] */ CANDIDATELIST *pCandList,
  1896.     /* [out] */ UINT *puCopied);
  1897. void __RPC_STUB IActiveIMMApp_GetCandidateListA_Stub(
  1898.     IRpcStubBuffer *This,
  1899.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1900.     PRPC_MESSAGE _pRpcMessage,
  1901.     DWORD *_pdwStubPhase);
  1902. HRESULT STDMETHODCALLTYPE IActiveIMMApp_GetCandidateListW_Proxy( 
  1903.     IActiveIMMApp * This,
  1904.     /* [in] */ HIMC hIMC,
  1905.     /* [in] */ DWORD dwIndex,
  1906.     /* [in] */ UINT uBufLen,
  1907.     /* [out] */ CANDIDATELIST *pCandList,
  1908.     /* [out] */ UINT *puCopied);
  1909. void __RPC_STUB IActiveIMMApp_GetCandidateListW_Stub(
  1910.     IRpcStubBuffer *This,
  1911.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1912.     PRPC_MESSAGE _pRpcMessage,
  1913.     DWORD *_pdwStubPhase);
  1914. HRESULT STDMETHODCALLTYPE IActiveIMMApp_GetCandidateListCountA_Proxy( 
  1915.     IActiveIMMApp * This,
  1916.     /* [in] */ HIMC hIMC,
  1917.     /* [out] */ DWORD *pdwListSize,
  1918.     /* [out] */ DWORD *pdwBufLen);
  1919. void __RPC_STUB IActiveIMMApp_GetCandidateListCountA_Stub(
  1920.     IRpcStubBuffer *This,
  1921.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1922.     PRPC_MESSAGE _pRpcMessage,
  1923.     DWORD *_pdwStubPhase);
  1924. HRESULT STDMETHODCALLTYPE IActiveIMMApp_GetCandidateListCountW_Proxy( 
  1925.     IActiveIMMApp * This,
  1926.     /* [in] */ HIMC hIMC,
  1927.     /* [out] */ DWORD *pdwListSize,
  1928.     /* [out] */ DWORD *pdwBufLen);
  1929. void __RPC_STUB IActiveIMMApp_GetCandidateListCountW_Stub(
  1930.     IRpcStubBuffer *This,
  1931.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1932.     PRPC_MESSAGE _pRpcMessage,
  1933.     DWORD *_pdwStubPhase);
  1934. HRESULT STDMETHODCALLTYPE IActiveIMMApp_GetCandidateWindow_Proxy( 
  1935.     IActiveIMMApp * This,
  1936.     /* [in] */ HIMC hIMC,
  1937.     /* [in] */ DWORD dwIndex,
  1938.     /* [out] */ CANDIDATEFORM *pCandidate);
  1939. void __RPC_STUB IActiveIMMApp_GetCandidateWindow_Stub(
  1940.     IRpcStubBuffer *This,
  1941.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1942.     PRPC_MESSAGE _pRpcMessage,
  1943.     DWORD *_pdwStubPhase);
  1944. HRESULT STDMETHODCALLTYPE IActiveIMMApp_GetCompositionFontA_Proxy( 
  1945.     IActiveIMMApp * This,
  1946.     /* [in] */ HIMC hIMC,
  1947.     /* [out] */ LOGFONTA *plf);
  1948. void __RPC_STUB IActiveIMMApp_GetCompositionFontA_Stub(
  1949.     IRpcStubBuffer *This,
  1950.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1951.     PRPC_MESSAGE _pRpcMessage,
  1952.     DWORD *_pdwStubPhase);
  1953. HRESULT STDMETHODCALLTYPE IActiveIMMApp_GetCompositionFontW_Proxy( 
  1954.     IActiveIMMApp * This,
  1955.     /* [in] */ HIMC hIMC,
  1956.     /* [out] */ LOGFONTW *plf);
  1957. void __RPC_STUB IActiveIMMApp_GetCompositionFontW_Stub(
  1958.     IRpcStubBuffer *This,
  1959.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1960.     PRPC_MESSAGE _pRpcMessage,
  1961.     DWORD *_pdwStubPhase);
  1962. HRESULT STDMETHODCALLTYPE IActiveIMMApp_GetCompositionStringA_Proxy( 
  1963.     IActiveIMMApp * This,
  1964.     /* [in] */ HIMC hIMC,
  1965.     /* [in] */ DWORD dwIndex,
  1966.     /* [in] */ DWORD dwBufLen,
  1967.     /* [out] */ LONG *plCopied,
  1968.     /* [out] */ LPVOID pBuf);
  1969. void __RPC_STUB IActiveIMMApp_GetCompositionStringA_Stub(
  1970.     IRpcStubBuffer *This,
  1971.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1972.     PRPC_MESSAGE _pRpcMessage,
  1973.     DWORD *_pdwStubPhase);
  1974. HRESULT STDMETHODCALLTYPE IActiveIMMApp_GetCompositionStringW_Proxy( 
  1975.     IActiveIMMApp * This,
  1976.     /* [in] */ HIMC hIMC,
  1977.     /* [in] */ DWORD dwIndex,
  1978.     /* [in] */ DWORD dwBufLen,
  1979.     /* [out] */ LONG *plCopied,
  1980.     /* [out] */ LPVOID pBuf);
  1981. void __RPC_STUB IActiveIMMApp_GetCompositionStringW_Stub(
  1982.     IRpcStubBuffer *This,
  1983.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1984.     PRPC_MESSAGE _pRpcMessage,
  1985.     DWORD *_pdwStubPhase);
  1986. HRESULT STDMETHODCALLTYPE IActiveIMMApp_GetCompositionWindow_Proxy( 
  1987.     IActiveIMMApp * This,
  1988.     /* [in] */ HIMC hIMC,
  1989.     /* [out] */ COMPOSITIONFORM *pCompForm);
  1990. void __RPC_STUB IActiveIMMApp_GetCompositionWindow_Stub(
  1991.     IRpcStubBuffer *This,
  1992.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1993.     PRPC_MESSAGE _pRpcMessage,
  1994.     DWORD *_pdwStubPhase);
  1995. HRESULT STDMETHODCALLTYPE IActiveIMMApp_GetContext_Proxy( 
  1996.     IActiveIMMApp * This,
  1997.     /* [in] */ HWND hWnd,
  1998.     /* [out] */ HIMC *phIMC);
  1999. void __RPC_STUB IActiveIMMApp_GetContext_Stub(
  2000.     IRpcStubBuffer *This,
  2001.     IRpcChannelBuffer *_pRpcChannelBuffer,
  2002.     PRPC_MESSAGE _pRpcMessage,
  2003.     DWORD *_pdwStubPhase);
  2004. HRESULT STDMETHODCALLTYPE IActiveIMMApp_GetConversionListA_Proxy( 
  2005.     IActiveIMMApp * This,
  2006.     /* [in] */ HKL hKL,
  2007.     /* [in] */ HIMC hIMC,
  2008.     /* [in] */ LPSTR pSrc,
  2009.     /* [in] */ UINT uBufLen,
  2010.     /* [in] */ UINT uFlag,
  2011.     /* [out] */ CANDIDATELIST *pDst,
  2012.     /* [out] */ UINT *puCopied);
  2013. void __RPC_STUB IActiveIMMApp_GetConversionListA_Stub(
  2014.     IRpcStubBuffer *This,
  2015.     IRpcChannelBuffer *_pRpcChannelBuffer,
  2016.     PRPC_MESSAGE _pRpcMessage,
  2017.     DWORD *_pdwStubPhase);
  2018. HRESULT STDMETHODCALLTYPE IActiveIMMApp_GetConversionListW_Proxy( 
  2019.     IActiveIMMApp * This,
  2020.     /* [in] */ HKL hKL,
  2021.     /* [in] */ HIMC hIMC,
  2022.     /* [in] */ LPWSTR pSrc,
  2023.     /* [in] */ UINT uBufLen,
  2024.     /* [in] */ UINT uFlag,
  2025.     /* [out] */ CANDIDATELIST *pDst,
  2026.     /* [out] */ UINT *puCopied);
  2027. void __RPC_STUB IActiveIMMApp_GetConversionListW_Stub(
  2028.     IRpcStubBuffer *This,
  2029.     IRpcChannelBuffer *_pRpcChannelBuffer,
  2030.     PRPC_MESSAGE _pRpcMessage,
  2031.     DWORD *_pdwStubPhase);
  2032. HRESULT STDMETHODCALLTYPE IActiveIMMApp_GetConversionStatus_Proxy( 
  2033.     IActiveIMMApp * This,
  2034.     /* [in] */ HIMC hIMC,
  2035.     /* [out] */ DWORD *pfdwConversion,
  2036.     /* [out] */ DWORD *pfdwSentence);
  2037. void __RPC_STUB IActiveIMMApp_GetConversionStatus_Stub(
  2038.     IRpcStubBuffer *This,
  2039.     IRpcChannelBuffer *_pRpcChannelBuffer,
  2040.     PRPC_MESSAGE _pRpcMessage,
  2041.     DWORD *_pdwStubPhase);
  2042. HRESULT STDMETHODCALLTYPE IActiveIMMApp_GetDefaultIMEWnd_Proxy( 
  2043.     IActiveIMMApp * This,
  2044.     /* [in] */ HWND hWnd,
  2045.     /* [out] */ HWND *phDefWnd);
  2046. void __RPC_STUB IActiveIMMApp_GetDefaultIMEWnd_Stub(
  2047.     IRpcStubBuffer *This,
  2048.     IRpcChannelBuffer *_pRpcChannelBuffer,
  2049.     PRPC_MESSAGE _pRpcMessage,
  2050.     DWORD *_pdwStubPhase);
  2051. HRESULT STDMETHODCALLTYPE IActiveIMMApp_GetDescriptionA_Proxy( 
  2052.     IActiveIMMApp * This,
  2053.     /* [in] */ HKL hKL,
  2054.     /* [in] */ UINT uBufLen,
  2055.     /* [out] */ LPSTR szDescription,
  2056.     /* [out] */ UINT *puCopied);
  2057. void __RPC_STUB IActiveIMMApp_GetDescriptionA_Stub(
  2058.     IRpcStubBuffer *This,
  2059.     IRpcChannelBuffer *_pRpcChannelBuffer,
  2060.     PRPC_MESSAGE _pRpcMessage,
  2061.     DWORD *_pdwStubPhase);
  2062. HRESULT STDMETHODCALLTYPE IActiveIMMApp_GetDescriptionW_Proxy( 
  2063.     IActiveIMMApp * This,
  2064.     /* [in] */ HKL hKL,
  2065.     /* [in] */ UINT uBufLen,
  2066.     /* [out] */ LPWSTR szDescription,
  2067.     /* [out] */ UINT *puCopied);
  2068. void __RPC_STUB IActiveIMMApp_GetDescriptionW_Stub(
  2069.     IRpcStubBuffer *This,
  2070.     IRpcChannelBuffer *_pRpcChannelBuffer,
  2071.     PRPC_MESSAGE _pRpcMessage,
  2072.     DWORD *_pdwStubPhase);
  2073. HRESULT STDMETHODCALLTYPE IActiveIMMApp_GetGuideLineA_Proxy( 
  2074.     IActiveIMMApp * This,
  2075.     /* [in] */ HIMC hIMC,
  2076.     /* [in] */ DWORD dwIndex,
  2077.     /* [in] */ DWORD dwBufLen,
  2078.     /* [out] */ LPSTR pBuf,
  2079.     /* [out] */ DWORD *pdwResult);
  2080. void __RPC_STUB IActiveIMMApp_GetGuideLineA_Stub(
  2081.     IRpcStubBuffer *This,
  2082.     IRpcChannelBuffer *_pRpcChannelBuffer,
  2083.     PRPC_MESSAGE _pRpcMessage,
  2084.     DWORD *_pdwStubPhase);
  2085. HRESULT STDMETHODCALLTYPE IActiveIMMApp_GetGuideLineW_Proxy( 
  2086.     IActiveIMMApp * This,
  2087.     /* [in] */ HIMC hIMC,
  2088.     /* [in] */ DWORD dwIndex,
  2089.     /* [in] */ DWORD dwBufLen,
  2090.     /* [out] */ LPWSTR pBuf,
  2091.     /* [out] */ DWORD *pdwResult);
  2092. void __RPC_STUB IActiveIMMApp_GetGuideLineW_Stub(
  2093.     IRpcStubBuffer *This,
  2094.     IRpcChannelBuffer *_pRpcChannelBuffer,
  2095.     PRPC_MESSAGE _pRpcMessage,
  2096.     DWORD *_pdwStubPhase);
  2097. HRESULT STDMETHODCALLTYPE IActiveIMMApp_GetIMEFileNameA_Proxy( 
  2098.     IActiveIMMApp * This,
  2099.     /* [in] */ HKL hKL,
  2100.     /* [in] */ UINT uBufLen,
  2101.     /* [out] */ LPSTR szFileName,
  2102.     /* [out] */ UINT *puCopied);
  2103. void __RPC_STUB IActiveIMMApp_GetIMEFileNameA_Stub(
  2104.     IRpcStubBuffer *This,
  2105.     IRpcChannelBuffer *_pRpcChannelBuffer,
  2106.     PRPC_MESSAGE _pRpcMessage,
  2107.     DWORD *_pdwStubPhase);
  2108. HRESULT STDMETHODCALLTYPE IActiveIMMApp_GetIMEFileNameW_Proxy( 
  2109.     IActiveIMMApp * This,
  2110.     /* [in] */ HKL hKL,
  2111.     /* [in] */ UINT uBufLen,
  2112.     /* [out] */ LPWSTR szFileName,
  2113.     /* [out] */ UINT *puCopied);
  2114. void __RPC_STUB IActiveIMMApp_GetIMEFileNameW_Stub(
  2115.     IRpcStubBuffer *This,
  2116.     IRpcChannelBuffer *_pRpcChannelBuffer,
  2117.     PRPC_MESSAGE _pRpcMessage,
  2118.     DWORD *_pdwStubPhase);
  2119. HRESULT STDMETHODCALLTYPE IActiveIMMApp_GetOpenStatus_Proxy( 
  2120.     IActiveIMMApp * This,
  2121.     /* [in] */ HIMC hIMC);
  2122. void __RPC_STUB IActiveIMMApp_GetOpenStatus_Stub(
  2123.     IRpcStubBuffer *This,
  2124.     IRpcChannelBuffer *_pRpcChannelBuffer,
  2125.     PRPC_MESSAGE _pRpcMessage,
  2126.     DWORD *_pdwStubPhase);
  2127. HRESULT STDMETHODCALLTYPE IActiveIMMApp_GetProperty_Proxy( 
  2128.     IActiveIMMApp * This,
  2129.     /* [in] */ HKL hKL,
  2130.     /* [in] */ DWORD fdwIndex,
  2131.     /* [out] */ DWORD *pdwProperty);
  2132. void __RPC_STUB IActiveIMMApp_GetProperty_Stub(
  2133.     IRpcStubBuffer *This,
  2134.     IRpcChannelBuffer *_pRpcChannelBuffer,
  2135.     PRPC_MESSAGE _pRpcMessage,
  2136.     DWORD *_pdwStubPhase);
  2137. HRESULT STDMETHODCALLTYPE IActiveIMMApp_GetRegisterWordStyleA_Proxy( 
  2138.     IActiveIMMApp * This,
  2139.     /* [in] */ HKL hKL,
  2140.     /* [in] */ UINT nItem,
  2141.     /* [out] */ STYLEBUFA *pStyleBuf,
  2142.     /* [out] */ UINT *puCopied);
  2143. void __RPC_STUB IActiveIMMApp_GetRegisterWordStyleA_Stub(
  2144.     IRpcStubBuffer *This,
  2145.     IRpcChannelBuffer *_pRpcChannelBuffer,
  2146.     PRPC_MESSAGE _pRpcMessage,
  2147.     DWORD *_pdwStubPhase);
  2148. HRESULT STDMETHODCALLTYPE IActiveIMMApp_GetRegisterWordStyleW_Proxy( 
  2149.     IActiveIMMApp * This,
  2150.     /* [in] */ HKL hKL,
  2151.     /* [in] */ UINT nItem,
  2152.     /* [out] */ STYLEBUFW *pStyleBuf,
  2153.     /* [out] */ UINT *puCopied);
  2154. void __RPC_STUB IActiveIMMApp_GetRegisterWordStyleW_Stub(
  2155.     IRpcStubBuffer *This,
  2156.     IRpcChannelBuffer *_pRpcChannelBuffer,
  2157.     PRPC_MESSAGE _pRpcMessage,
  2158.     DWORD *_pdwStubPhase);
  2159. HRESULT STDMETHODCALLTYPE IActiveIMMApp_GetStatusWindowPos_Proxy( 
  2160.     IActiveIMMApp * This,
  2161.     /* [in] */ HIMC hIMC,
  2162.     /* [out] */ POINT *pptPos);
  2163. void __RPC_STUB IActiveIMMApp_GetStatusWindowPos_Stub(
  2164.     IRpcStubBuffer *This,
  2165.     IRpcChannelBuffer *_pRpcChannelBuffer,
  2166.     PRPC_MESSAGE _pRpcMessage,
  2167.     DWORD *_pdwStubPhase);
  2168. HRESULT STDMETHODCALLTYPE IActiveIMMApp_GetVirtualKey_Proxy( 
  2169.     IActiveIMMApp * This,
  2170.     /* [in] */ HWND hWnd,
  2171.     /* [out] */ UINT *puVirtualKey);
  2172. void __RPC_STUB IActiveIMMApp_GetVirtualKey_Stub(
  2173.     IRpcStubBuffer *This,
  2174.     IRpcChannelBuffer *_pRpcChannelBuffer,
  2175.     PRPC_MESSAGE _pRpcMessage,
  2176.     DWORD *_pdwStubPhase);
  2177. HRESULT STDMETHODCALLTYPE IActiveIMMApp_InstallIMEA_Proxy( 
  2178.     IActiveIMMApp * This,
  2179.     /* [in] */ LPSTR szIMEFileName,
  2180.     /* [in] */ LPSTR szLayoutText,
  2181.     /* [out] */ HKL *phKL);
  2182. void __RPC_STUB IActiveIMMApp_InstallIMEA_Stub(
  2183.     IRpcStubBuffer *This,
  2184.     IRpcChannelBuffer *_pRpcChannelBuffer,
  2185.     PRPC_MESSAGE _pRpcMessage,
  2186.     DWORD *_pdwStubPhase);
  2187. HRESULT STDMETHODCALLTYPE IActiveIMMApp_InstallIMEW_Proxy( 
  2188.     IActiveIMMApp * This,
  2189.     /* [in] */ LPWSTR szIMEFileName,
  2190.     /* [in] */ LPWSTR szLayoutText,
  2191.     /* [out] */ HKL *phKL);
  2192. void __RPC_STUB IActiveIMMApp_InstallIMEW_Stub(
  2193.     IRpcStubBuffer *This,
  2194.     IRpcChannelBuffer *_pRpcChannelBuffer,
  2195.     PRPC_MESSAGE _pRpcMessage,
  2196.     DWORD *_pdwStubPhase);
  2197. HRESULT STDMETHODCALLTYPE IActiveIMMApp_IsIME_Proxy( 
  2198.     IActiveIMMApp * This,
  2199.     /* [in] */ HKL hKL);
  2200. void __RPC_STUB IActiveIMMApp_IsIME_Stub(
  2201.     IRpcStubBuffer *This,
  2202.     IRpcChannelBuffer *_pRpcChannelBuffer,
  2203.     PRPC_MESSAGE _pRpcMessage,
  2204.     DWORD *_pdwStubPhase);
  2205. HRESULT STDMETHODCALLTYPE IActiveIMMApp_IsUIMessageA_Proxy( 
  2206.     IActiveIMMApp * This,
  2207.     /* [in] */ HWND hWndIME,
  2208.     /* [in] */ UINT msg,
  2209.     /* [in] */ WPARAM wParam,
  2210.     /* [in] */ LPARAM lParam);
  2211. void __RPC_STUB IActiveIMMApp_IsUIMessageA_Stub(
  2212.     IRpcStubBuffer *This,
  2213.     IRpcChannelBuffer *_pRpcChannelBuffer,
  2214.     PRPC_MESSAGE _pRpcMessage,
  2215.     DWORD *_pdwStubPhase);
  2216. HRESULT STDMETHODCALLTYPE IActiveIMMApp_IsUIMessageW_Proxy( 
  2217.     IActiveIMMApp * This,
  2218.     /* [in] */ HWND hWndIME,
  2219.     /* [in] */ UINT msg,
  2220.     /* [in] */ WPARAM wParam,
  2221.     /* [in] */ LPARAM lParam);
  2222. void __RPC_STUB IActiveIMMApp_IsUIMessageW_Stub(
  2223.     IRpcStubBuffer *This,
  2224.     IRpcChannelBuffer *_pRpcChannelBuffer,
  2225.     PRPC_MESSAGE _pRpcMessage,
  2226.     DWORD *_pdwStubPhase);
  2227. HRESULT STDMETHODCALLTYPE IActiveIMMApp_NotifyIME_Proxy( 
  2228.     IActiveIMMApp * This,
  2229.     /* [in] */ HIMC hIMC,
  2230.     /* [in] */ DWORD dwAction,
  2231.     /* [in] */ DWORD dwIndex,
  2232.     /* [in] */ DWORD dwValue);
  2233. void __RPC_STUB IActiveIMMApp_NotifyIME_Stub(
  2234.     IRpcStubBuffer *This,
  2235.     IRpcChannelBuffer *_pRpcChannelBuffer,
  2236.     PRPC_MESSAGE _pRpcMessage,
  2237.     DWORD *_pdwStubPhase);
  2238. HRESULT STDMETHODCALLTYPE IActiveIMMApp_RegisterWordA_Proxy( 
  2239.     IActiveIMMApp * This,
  2240.     /* [in] */ HKL hKL,
  2241.     /* [in] */ LPSTR szReading,
  2242.     /* [in] */ DWORD dwStyle,
  2243.     /* [in] */ LPSTR szRegister);
  2244. void __RPC_STUB IActiveIMMApp_RegisterWordA_Stub(
  2245.     IRpcStubBuffer *This,
  2246.     IRpcChannelBuffer *_pRpcChannelBuffer,
  2247.     PRPC_MESSAGE _pRpcMessage,
  2248.     DWORD *_pdwStubPhase);
  2249. HRESULT STDMETHODCALLTYPE IActiveIMMApp_RegisterWordW_Proxy( 
  2250.     IActiveIMMApp * This,
  2251.     /* [in] */ HKL hKL,
  2252.     /* [in] */ LPWSTR szReading,
  2253.     /* [in] */ DWORD dwStyle,
  2254.     /* [in] */ LPWSTR szRegister);
  2255. void __RPC_STUB IActiveIMMApp_RegisterWordW_Stub(
  2256.     IRpcStubBuffer *This,
  2257.     IRpcChannelBuffer *_pRpcChannelBuffer,
  2258.     PRPC_MESSAGE _pRpcMessage,
  2259.     DWORD *_pdwStubPhase);
  2260. HRESULT STDMETHODCALLTYPE IActiveIMMApp_ReleaseContext_Proxy( 
  2261.     IActiveIMMApp * This,
  2262.     /* [in] */ HWND hWnd,
  2263.     /* [in] */ HIMC hIMC);
  2264. void __RPC_STUB IActiveIMMApp_ReleaseContext_Stub(
  2265.     IRpcStubBuffer *This,
  2266.     IRpcChannelBuffer *_pRpcChannelBuffer,
  2267.     PRPC_MESSAGE _pRpcMessage,
  2268.     DWORD *_pdwStubPhase);
  2269. HRESULT STDMETHODCALLTYPE IActiveIMMApp_SetCandidateWindow_Proxy( 
  2270.     IActiveIMMApp * This,
  2271.     /* [in] */ HIMC hIMC,
  2272.     /* [in] */ CANDIDATEFORM *pCandidate);
  2273. void __RPC_STUB IActiveIMMApp_SetCandidateWindow_Stub(
  2274.     IRpcStubBuffer *This,
  2275.     IRpcChannelBuffer *_pRpcChannelBuffer,
  2276.     PRPC_MESSAGE _pRpcMessage,
  2277.     DWORD *_pdwStubPhase);
  2278. HRESULT STDMETHODCALLTYPE IActiveIMMApp_SetCompositionFontA_Proxy( 
  2279.     IActiveIMMApp * This,
  2280.     /* [in] */ HIMC hIMC,
  2281.     /* [in] */ LOGFONTA *plf);
  2282. void __RPC_STUB IActiveIMMApp_SetCompositionFontA_Stub(
  2283.     IRpcStubBuffer *This,
  2284.     IRpcChannelBuffer *_pRpcChannelBuffer,
  2285.     PRPC_MESSAGE _pRpcMessage,
  2286.     DWORD *_pdwStubPhase);
  2287. HRESULT STDMETHODCALLTYPE IActiveIMMApp_SetCompositionFontW_Proxy( 
  2288.     IActiveIMMApp * This,
  2289.     /* [in] */ HIMC hIMC,
  2290.     /* [in] */ LOGFONTW *plf);
  2291. void __RPC_STUB IActiveIMMApp_SetCompositionFontW_Stub(
  2292.     IRpcStubBuffer *This,
  2293.     IRpcChannelBuffer *_pRpcChannelBuffer,
  2294.     PRPC_MESSAGE _pRpcMessage,
  2295.     DWORD *_pdwStubPhase);
  2296. HRESULT STDMETHODCALLTYPE IActiveIMMApp_SetCompositionStringA_Proxy( 
  2297.     IActiveIMMApp * This,
  2298.     /* [in] */ HIMC hIMC,
  2299.     /* [in] */ DWORD dwIndex,
  2300.     /* [in] */ LPVOID pComp,
  2301.     /* [in] */ DWORD dwCompLen,
  2302.     /* [in] */ LPVOID pRead,
  2303.     /* [in] */ DWORD dwReadLen);
  2304. void __RPC_STUB IActiveIMMApp_SetCompositionStringA_Stub(
  2305.     IRpcStubBuffer *This,
  2306.     IRpcChannelBuffer *_pRpcChannelBuffer,
  2307.     PRPC_MESSAGE _pRpcMessage,
  2308.     DWORD *_pdwStubPhase);
  2309. HRESULT STDMETHODCALLTYPE IActiveIMMApp_SetCompositionStringW_Proxy( 
  2310.     IActiveIMMApp * This,
  2311.     /* [in] */ HIMC hIMC,
  2312.     /* [in] */ DWORD dwIndex,
  2313.     /* [in] */ LPVOID pComp,
  2314.     /* [in] */ DWORD dwCompLen,
  2315.     /* [in] */ LPVOID pRead,
  2316.     /* [in] */ DWORD dwReadLen);
  2317. void __RPC_STUB IActiveIMMApp_SetCompositionStringW_Stub(
  2318.     IRpcStubBuffer *This,
  2319.     IRpcChannelBuffer *_pRpcChannelBuffer,
  2320.     PRPC_MESSAGE _pRpcMessage,
  2321.     DWORD *_pdwStubPhase);
  2322. HRESULT STDMETHODCALLTYPE IActiveIMMApp_SetCompositionWindow_Proxy( 
  2323.     IActiveIMMApp * This,
  2324.     /* [in] */ HIMC hIMC,
  2325.     /* [in] */ COMPOSITIONFORM *pCompForm);
  2326. void __RPC_STUB IActiveIMMApp_SetCompositionWindow_Stub(
  2327.     IRpcStubBuffer *This,
  2328.     IRpcChannelBuffer *_pRpcChannelBuffer,
  2329.     PRPC_MESSAGE _pRpcMessage,
  2330.     DWORD *_pdwStubPhase);
  2331. HRESULT STDMETHODCALLTYPE IActiveIMMApp_SetConversionStatus_Proxy( 
  2332.     IActiveIMMApp * This,
  2333.     /* [in] */ HIMC hIMC,
  2334.     /* [in] */ DWORD fdwConversion,
  2335.     /* [in] */ DWORD fdwSentence);
  2336. void __RPC_STUB IActiveIMMApp_SetConversionStatus_Stub(
  2337.     IRpcStubBuffer *This,
  2338.     IRpcChannelBuffer *_pRpcChannelBuffer,
  2339.     PRPC_MESSAGE _pRpcMessage,
  2340.     DWORD *_pdwStubPhase);
  2341. HRESULT STDMETHODCALLTYPE IActiveIMMApp_SetOpenStatus_Proxy( 
  2342.     IActiveIMMApp * This,
  2343.     /* [in] */ HIMC hIMC,
  2344.     /* [in] */ BOOL fOpen);
  2345. void __RPC_STUB IActiveIMMApp_SetOpenStatus_Stub(
  2346.     IRpcStubBuffer *This,
  2347.     IRpcChannelBuffer *_pRpcChannelBuffer,
  2348.     PRPC_MESSAGE _pRpcMessage,
  2349.     DWORD *_pdwStubPhase);
  2350. HRESULT STDMETHODCALLTYPE IActiveIMMApp_SetStatusWindowPos_Proxy( 
  2351.     IActiveIMMApp * This,
  2352.     /* [in] */ HIMC hIMC,
  2353.     /* [in] */ POINT *pptPos);
  2354. void __RPC_STUB IActiveIMMApp_SetStatusWindowPos_Stub(
  2355.     IRpcStubBuffer *This,
  2356.     IRpcChannelBuffer *_pRpcChannelBuffer,
  2357.     PRPC_MESSAGE _pRpcMessage,
  2358.     DWORD *_pdwStubPhase);
  2359. HRESULT STDMETHODCALLTYPE IActiveIMMApp_SimulateHotKey_Proxy( 
  2360.     IActiveIMMApp * This,
  2361.     /* [in] */ HWND hWnd,
  2362.     /* [in] */ DWORD dwHotKeyID);
  2363. void __RPC_STUB IActiveIMMApp_SimulateHotKey_Stub(
  2364.     IRpcStubBuffer *This,
  2365.     IRpcChannelBuffer *_pRpcChannelBuffer,
  2366.     PRPC_MESSAGE _pRpcMessage,
  2367.     DWORD *_pdwStubPhase);
  2368. HRESULT STDMETHODCALLTYPE IActiveIMMApp_UnregisterWordA_Proxy( 
  2369.     IActiveIMMApp * This,
  2370.     /* [in] */ HKL hKL,
  2371.     /* [in] */ LPSTR szReading,
  2372.     /* [in] */ DWORD dwStyle,
  2373.     /* [in] */ LPSTR szUnregister);
  2374. void __RPC_STUB IActiveIMMApp_UnregisterWordA_Stub(
  2375.     IRpcStubBuffer *This,
  2376.     IRpcChannelBuffer *_pRpcChannelBuffer,
  2377.     PRPC_MESSAGE _pRpcMessage,
  2378.     DWORD *_pdwStubPhase);
  2379. HRESULT STDMETHODCALLTYPE IActiveIMMApp_UnregisterWordW_Proxy( 
  2380.     IActiveIMMApp * This,
  2381.     /* [in] */ HKL hKL,
  2382.     /* [in] */ LPWSTR szReading,
  2383.     /* [in] */ DWORD dwStyle,
  2384.     /* [in] */ LPWSTR szUnregister);
  2385. void __RPC_STUB IActiveIMMApp_UnregisterWordW_Stub(
  2386.     IRpcStubBuffer *This,
  2387.     IRpcChannelBuffer *_pRpcChannelBuffer,
  2388.     PRPC_MESSAGE _pRpcMessage,
  2389.     DWORD *_pdwStubPhase);
  2390. HRESULT STDMETHODCALLTYPE IActiveIMMApp_Activate_Proxy( 
  2391.     IActiveIMMApp * This,
  2392.     /* [in] */ BOOL fRestoreLayout);
  2393. void __RPC_STUB IActiveIMMApp_Activate_Stub(
  2394.     IRpcStubBuffer *This,
  2395.     IRpcChannelBuffer *_pRpcChannelBuffer,
  2396.     PRPC_MESSAGE _pRpcMessage,
  2397.     DWORD *_pdwStubPhase);
  2398. HRESULT STDMETHODCALLTYPE IActiveIMMApp_Deactivate_Proxy( 
  2399.     IActiveIMMApp * This);
  2400. void __RPC_STUB IActiveIMMApp_Deactivate_Stub(
  2401.     IRpcStubBuffer *This,
  2402.     IRpcChannelBuffer *_pRpcChannelBuffer,
  2403.     PRPC_MESSAGE _pRpcMessage,
  2404.     DWORD *_pdwStubPhase);
  2405. HRESULT STDMETHODCALLTYPE IActiveIMMApp_OnDefWindowProc_Proxy( 
  2406.     IActiveIMMApp * This,
  2407.     /* [in] */ HWND hWnd,
  2408.     /* [in] */ UINT Msg,
  2409.     /* [in] */ WPARAM wParam,
  2410.     /* [in] */ LPARAM lParam,
  2411.     /* [out] */ LRESULT *plResult);
  2412. void __RPC_STUB IActiveIMMApp_OnDefWindowProc_Stub(
  2413.     IRpcStubBuffer *This,
  2414.     IRpcChannelBuffer *_pRpcChannelBuffer,
  2415.     PRPC_MESSAGE _pRpcMessage,
  2416.     DWORD *_pdwStubPhase);
  2417. HRESULT STDMETHODCALLTYPE IActiveIMMApp_FilterClientWindows_Proxy( 
  2418.     IActiveIMMApp * This,
  2419.     /* [in] */ ATOM *aaClassList,
  2420.     /* [in] */ UINT uSize);
  2421. void __RPC_STUB IActiveIMMApp_FilterClientWindows_Stub(
  2422.     IRpcStubBuffer *This,
  2423.     IRpcChannelBuffer *_pRpcChannelBuffer,
  2424.     PRPC_MESSAGE _pRpcMessage,
  2425.     DWORD *_pdwStubPhase);
  2426. HRESULT STDMETHODCALLTYPE IActiveIMMApp_GetCodePageA_Proxy( 
  2427.     IActiveIMMApp * This,
  2428.     /* [in] */ HKL hKL,
  2429.     /* [out] */ UINT *uCodePage);
  2430. void __RPC_STUB IActiveIMMApp_GetCodePageA_Stub(
  2431.     IRpcStubBuffer *This,
  2432.     IRpcChannelBuffer *_pRpcChannelBuffer,
  2433.     PRPC_MESSAGE _pRpcMessage,
  2434.     DWORD *_pdwStubPhase);
  2435. HRESULT STDMETHODCALLTYPE IActiveIMMApp_GetLangId_Proxy( 
  2436.     IActiveIMMApp * This,
  2437.     /* [in] */ HKL hKL,
  2438.     /* [out] */ LANGID *plid);
  2439. void __RPC_STUB IActiveIMMApp_GetLangId_Stub(
  2440.     IRpcStubBuffer *This,
  2441.     IRpcChannelBuffer *_pRpcChannelBuffer,
  2442.     PRPC_MESSAGE _pRpcMessage,
  2443.     DWORD *_pdwStubPhase);
  2444. HRESULT STDMETHODCALLTYPE IActiveIMMApp_AssociateContextEx_Proxy( 
  2445.     IActiveIMMApp * This,
  2446.     /* [in] */ HWND hWnd,
  2447.     /* [in] */ HIMC hIMC,
  2448.     /* [in] */ DWORD dwFlags);
  2449. void __RPC_STUB IActiveIMMApp_AssociateContextEx_Stub(
  2450.     IRpcStubBuffer *This,
  2451.     IRpcChannelBuffer *_pRpcChannelBuffer,
  2452.     PRPC_MESSAGE _pRpcMessage,
  2453.     DWORD *_pdwStubPhase);
  2454. HRESULT STDMETHODCALLTYPE IActiveIMMApp_DisableIME_Proxy( 
  2455.     IActiveIMMApp * This,
  2456.     /* [in] */ DWORD idThread);
  2457. void __RPC_STUB IActiveIMMApp_DisableIME_Stub(
  2458.     IRpcStubBuffer *This,
  2459.     IRpcChannelBuffer *_pRpcChannelBuffer,
  2460.     PRPC_MESSAGE _pRpcMessage,
  2461.     DWORD *_pdwStubPhase);
  2462. HRESULT STDMETHODCALLTYPE IActiveIMMApp_GetImeMenuItemsA_Proxy( 
  2463.     IActiveIMMApp * This,
  2464.     /* [in] */ HIMC hIMC,
  2465.     /* [in] */ DWORD dwFlags,
  2466.     /* [in] */ DWORD dwType,
  2467.     /* [in] */ IMEMENUITEMINFOA *pImeParentMenu,
  2468.     /* [out] */ IMEMENUITEMINFOA *pImeMenu,
  2469.     /* [in] */ DWORD dwSize,
  2470.     /* [out] */ DWORD *pdwResult);
  2471. void __RPC_STUB IActiveIMMApp_GetImeMenuItemsA_Stub(
  2472.     IRpcStubBuffer *This,
  2473.     IRpcChannelBuffer *_pRpcChannelBuffer,
  2474.     PRPC_MESSAGE _pRpcMessage,
  2475.     DWORD *_pdwStubPhase);
  2476. HRESULT STDMETHODCALLTYPE IActiveIMMApp_GetImeMenuItemsW_Proxy( 
  2477.     IActiveIMMApp * This,
  2478.     /* [in] */ HIMC hIMC,
  2479.     /* [in] */ DWORD dwFlags,
  2480.     /* [in] */ DWORD dwType,
  2481.     /* [in] */ IMEMENUITEMINFOW *pImeParentMenu,
  2482.     /* [out] */ IMEMENUITEMINFOW *pImeMenu,
  2483.     /* [in] */ DWORD dwSize,
  2484.     /* [out] */ DWORD *pdwResult);
  2485. void __RPC_STUB IActiveIMMApp_GetImeMenuItemsW_Stub(
  2486.     IRpcStubBuffer *This,
  2487.     IRpcChannelBuffer *_pRpcChannelBuffer,
  2488.     PRPC_MESSAGE _pRpcMessage,
  2489.     DWORD *_pdwStubPhase);
  2490. HRESULT STDMETHODCALLTYPE IActiveIMMApp_EnumInputContext_Proxy( 
  2491.     IActiveIMMApp * This,
  2492.     /* [in] */ DWORD idThread,
  2493.     /* [out] */ IEnumInputContext **ppEnum);
  2494. void __RPC_STUB IActiveIMMApp_EnumInputContext_Stub(
  2495.     IRpcStubBuffer *This,
  2496.     IRpcChannelBuffer *_pRpcChannelBuffer,
  2497.     PRPC_MESSAGE _pRpcMessage,
  2498.     DWORD *_pdwStubPhase);
  2499. #endif  /* __IActiveIMMApp_INTERFACE_DEFINED__ */
  2500. #ifndef __IActiveIMMIME_INTERFACE_DEFINED__
  2501. #define __IActiveIMMIME_INTERFACE_DEFINED__
  2502. /* interface IActiveIMMIME */
  2503. /* [unique][uuid][object] */ 
  2504. EXTERN_C const IID IID_IActiveIMMIME;
  2505. #if defined(__cplusplus) && !defined(CINTERFACE)
  2506.     
  2507.     MIDL_INTERFACE("08C03411-F96B-11d0-A475-00AA006BCC59")
  2508.     IActiveIMMIME : public IUnknown
  2509.     {
  2510.     public:
  2511.         virtual HRESULT STDMETHODCALLTYPE AssociateContext( 
  2512.             /* [in] */ HWND hWnd,
  2513.             /* [in] */ HIMC hIME,
  2514.             /* [out] */ HIMC *phPrev) = 0;
  2515.         
  2516.         virtual HRESULT STDMETHODCALLTYPE ConfigureIMEA( 
  2517.             /* [in] */ HKL hKL,
  2518.             /* [in] */ HWND hWnd,
  2519.             /* [in] */ DWORD dwMode,
  2520.             /* [in] */ REGISTERWORDA *pData) = 0;
  2521.         
  2522.         virtual HRESULT STDMETHODCALLTYPE ConfigureIMEW( 
  2523.             /* [in] */ HKL hKL,
  2524.             /* [in] */ HWND hWnd,
  2525.             /* [in] */ DWORD dwMode,
  2526.             /* [in] */ REGISTERWORDW *pData) = 0;
  2527.         
  2528.         virtual HRESULT STDMETHODCALLTYPE CreateContext( 
  2529.             /* [out] */ HIMC *phIMC) = 0;
  2530.         
  2531.         virtual HRESULT STDMETHODCALLTYPE DestroyContext( 
  2532.             /* [in] */ HIMC hIME) = 0;
  2533.         
  2534.         virtual HRESULT STDMETHODCALLTYPE EnumRegisterWordA( 
  2535.             /* [in] */ HKL hKL,
  2536.             /* [in] */ LPSTR szReading,
  2537.             /* [in] */ DWORD dwStyle,
  2538.             /* [in] */ LPSTR szRegister,
  2539.             /* [in] */ LPVOID pData,
  2540.             /* [out] */ IEnumRegisterWordA **pEnum) = 0;
  2541.         
  2542.         virtual HRESULT STDMETHODCALLTYPE EnumRegisterWordW( 
  2543.             /* [in] */ HKL hKL,
  2544.             /* [in] */ LPWSTR szReading,
  2545.             /* [in] */ DWORD dwStyle,
  2546.             /* [in] */ LPWSTR szRegister,
  2547.             /* [in] */ LPVOID pData,
  2548.             /* [out] */ IEnumRegisterWordW **pEnum) = 0;
  2549.         
  2550.         virtual HRESULT STDMETHODCALLTYPE EscapeA( 
  2551.             /* [in] */ HKL hKL,
  2552.             /* [in] */ HIMC hIMC,
  2553.             /* [in] */ UINT uEscape,
  2554.             /* [out][in] */ LPVOID pData,
  2555.             /* [out] */ LRESULT *plResult) = 0;
  2556.         
  2557.         virtual HRESULT STDMETHODCALLTYPE EscapeW( 
  2558.             /* [in] */ HKL hKL,
  2559.             /* [in] */ HIMC hIMC,
  2560.             /* [in] */ UINT uEscape,
  2561.             /* [out][in] */ LPVOID pData,
  2562.             /* [out] */ LRESULT *plResult) = 0;
  2563.         
  2564.         virtual HRESULT STDMETHODCALLTYPE GetCandidateListA( 
  2565.             /* [in] */ HIMC hIMC,
  2566.             /* [in] */ DWORD dwIndex,
  2567.             /* [in] */ UINT uBufLen,
  2568.             /* [out] */ CANDIDATELIST *pCandList,
  2569.             /* [out] */ UINT *puCopied) = 0;
  2570.         
  2571.         virtual HRESULT STDMETHODCALLTYPE GetCandidateListW( 
  2572.             /* [in] */ HIMC hIMC,
  2573.             /* [in] */ DWORD dwIndex,
  2574.             /* [in] */ UINT uBufLen,
  2575.             /* [out] */ CANDIDATELIST *pCandList,
  2576.             /* [out] */ UINT *puCopied) = 0;
  2577.         
  2578.         virtual HRESULT STDMETHODCALLTYPE GetCandidateListCountA( 
  2579.             /* [in] */ HIMC hIMC,
  2580.             /* [out] */ DWORD *pdwListSize,
  2581.             /* [out] */ DWORD *pdwBufLen) = 0;
  2582.         
  2583.         virtual HRESULT STDMETHODCALLTYPE GetCandidateListCountW( 
  2584.             /* [in] */ HIMC hIMC,
  2585.             /* [out] */ DWORD *pdwListSize,
  2586.             /* [out] */ DWORD *pdwBufLen) = 0;
  2587.         
  2588.         virtual HRESULT STDMETHODCALLTYPE GetCandidateWindow( 
  2589.             /* [in] */ HIMC hIMC,
  2590.             /* [in] */ DWORD dwIndex,
  2591.             /* [out] */ CANDIDATEFORM *pCandidate) = 0;
  2592.         
  2593.         virtual HRESULT STDMETHODCALLTYPE GetCompositionFontA( 
  2594.             /* [in] */ HIMC hIMC,
  2595.             /* [out] */ LOGFONTA *plf) = 0;
  2596.         
  2597.         virtual HRESULT STDMETHODCALLTYPE GetCompositionFontW( 
  2598.             /* [in] */ HIMC hIMC,
  2599.             /* [out] */ LOGFONTW *plf) = 0;
  2600.         
  2601.         virtual HRESULT STDMETHODCALLTYPE GetCompositionStringA( 
  2602.             /* [in] */ HIMC hIMC,
  2603.             /* [in] */ DWORD dwIndex,
  2604.             /* [in] */ DWORD dwBufLen,
  2605.             /* [out] */ LONG *plCopied,
  2606.             /* [out] */ LPVOID pBuf) = 0;
  2607.         
  2608.         virtual HRESULT STDMETHODCALLTYPE GetCompositionStringW( 
  2609.             /* [in] */ HIMC hIMC,
  2610.             /* [in] */ DWORD dwIndex,
  2611.             /* [in] */ DWORD dwBufLen,
  2612.             /* [out] */ LONG *plCopied,
  2613.             /* [out] */ LPVOID pBuf) = 0;
  2614.         
  2615.         virtual HRESULT STDMETHODCALLTYPE GetCompositionWindow( 
  2616.             /* [in] */ HIMC hIMC,
  2617.             /* [out] */ COMPOSITIONFORM *pCompForm) = 0;
  2618.         
  2619.         virtual HRESULT STDMETHODCALLTYPE GetContext( 
  2620.             /* [in] */ HWND hWnd,
  2621.             /* [out] */ HIMC *phIMC) = 0;
  2622.         
  2623.         virtual HRESULT STDMETHODCALLTYPE GetConversionListA( 
  2624.             /* [in] */ HKL hKL,
  2625.             /* [in] */ HIMC hIMC,
  2626.             /* [in] */ LPSTR pSrc,
  2627.             /* [in] */ UINT uBufLen,
  2628.             /* [in] */ UINT uFlag,
  2629.             /* [out] */ CANDIDATELIST *pDst,
  2630.             /* [out] */ UINT *puCopied) = 0;
  2631.         
  2632.         virtual HRESULT STDMETHODCALLTYPE GetConversionListW( 
  2633.             /* [in] */ HKL hKL,
  2634.             /* [in] */ HIMC hIMC,
  2635.             /* [in] */ LPWSTR pSrc,
  2636.             /* [in] */ UINT uBufLen,
  2637.             /* [in] */ UINT uFlag,
  2638.             /* [out] */ CANDIDATELIST *pDst,
  2639.             /* [out] */ UINT *puCopied) = 0;
  2640.         
  2641.         virtual HRESULT STDMETHODCALLTYPE GetConversionStatus( 
  2642.             /* [in] */ HIMC hIMC,
  2643.             /* [out] */ DWORD *pfdwConversion,
  2644.             /* [out] */ DWORD *pfdwSentence) = 0;
  2645.         
  2646.         virtual HRESULT STDMETHODCALLTYPE GetDefaultIMEWnd( 
  2647.             /* [in] */ HWND hWnd,
  2648.             /* [out] */ HWND *phDefWnd) = 0;
  2649.         
  2650.         virtual HRESULT STDMETHODCALLTYPE GetDescriptionA( 
  2651.             /* [in] */ HKL hKL,
  2652.             /* [in] */ UINT uBufLen,
  2653.             /* [out] */ LPSTR szDescription,