Home | History | Annotate | Download | only in include
      1 /*** Autogenerated by WIDL 1.6 from include/dimm.idl - Do not edit ***/
      2 
      3 #ifndef __REQUIRED_RPCNDR_H_VERSION__
      4 #define __REQUIRED_RPCNDR_H_VERSION__ 475
      5 #endif
      6 
      7 #include <rpc.h>
      8 #include <rpcndr.h>
      9 
     10 #ifndef COM_NO_WINDOWS_H
     11 #include <windows.h>
     12 #include <ole2.h>
     13 #endif
     14 
     15 #ifndef __dimm_h__
     16 #define __dimm_h__
     17 
     18 /* Forward declarations */
     19 
     20 #ifndef __IEnumInputContext_FWD_DEFINED__
     21 #define __IEnumInputContext_FWD_DEFINED__
     22 typedef interface IEnumInputContext IEnumInputContext;
     23 #endif
     24 
     25 #ifndef __IActiveIMMRegistrar_FWD_DEFINED__
     26 #define __IActiveIMMRegistrar_FWD_DEFINED__
     27 typedef interface IActiveIMMRegistrar IActiveIMMRegistrar;
     28 #endif
     29 
     30 #ifndef __IActiveIMMMessagePumpOwner_FWD_DEFINED__
     31 #define __IActiveIMMMessagePumpOwner_FWD_DEFINED__
     32 typedef interface IActiveIMMMessagePumpOwner IActiveIMMMessagePumpOwner;
     33 #endif
     34 
     35 #ifndef __IActiveIMMApp_FWD_DEFINED__
     36 #define __IActiveIMMApp_FWD_DEFINED__
     37 typedef interface IActiveIMMApp IActiveIMMApp;
     38 #endif
     39 
     40 #ifndef __IActiveIMMIME_FWD_DEFINED__
     41 #define __IActiveIMMIME_FWD_DEFINED__
     42 typedef interface IActiveIMMIME IActiveIMMIME;
     43 #endif
     44 
     45 #ifndef __IActiveIME_FWD_DEFINED__
     46 #define __IActiveIME_FWD_DEFINED__
     47 typedef interface IActiveIME IActiveIME;
     48 #endif
     49 
     50 #ifndef __IActiveIME2_FWD_DEFINED__
     51 #define __IActiveIME2_FWD_DEFINED__
     52 typedef interface IActiveIME2 IActiveIME2;
     53 #endif
     54 
     55 #ifndef __IEnumRegisterWordA_FWD_DEFINED__
     56 #define __IEnumRegisterWordA_FWD_DEFINED__
     57 typedef interface IEnumRegisterWordA IEnumRegisterWordA;
     58 #endif
     59 
     60 #ifndef __IEnumRegisterWordW_FWD_DEFINED__
     61 #define __IEnumRegisterWordW_FWD_DEFINED__
     62 typedef interface IEnumRegisterWordW IEnumRegisterWordW;
     63 #endif
     64 
     65 #ifndef __CActiveIMM_FWD_DEFINED__
     66 #define __CActiveIMM_FWD_DEFINED__
     67 #ifdef __cplusplus
     68 typedef class CActiveIMM CActiveIMM;
     69 #else
     70 typedef struct CActiveIMM CActiveIMM;
     71 #endif /* defined __cplusplus */
     72 #endif /* defined __CActiveIMM_FWD_DEFINED__ */
     73 
     74 /* Headers for imported files */
     75 
     76 #include <unknwn.h>
     77 
     78 #ifdef __cplusplus
     79 extern "C" {
     80 #endif
     81 
     82 /**
     83  * This file is part of the mingw-w64 runtime package.
     84  * No warranty is given; refer to the file DISCLAIMER within this package.
     85  */
     86 
     87 #ifndef __IEnumRegisterWordA_FWD_DEFINED__
     88 #define __IEnumRegisterWordA_FWD_DEFINED__
     89 typedef interface IEnumRegisterWordA IEnumRegisterWordA;
     90 #endif
     91 
     92 #ifndef __IEnumRegisterWordW_FWD_DEFINED__
     93 #define __IEnumRegisterWordW_FWD_DEFINED__
     94 typedef interface IEnumRegisterWordW IEnumRegisterWordW;
     95 #endif
     96 
     97 #include <winapifamily.h>
     98 
     99 #if WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_DESKTOP)
    100 
    101 DEFINE_GUID(LIBID_ActiveIMM, 0x4955dd30, 0xb159, 0x11d0, 0x8f,0xcf, 0x00,0xaa,0x00,0x6b,0xcc,0x59);
    102 
    103 #include <imm.h>
    104 #if 0
    105 typedef WORD LANGID;
    106 typedef struct __WIDL_dimm_generated_name_00000002 {
    107     LPSTR lpReading;
    108     LPSTR lpWord;
    109 } REGISTERWORDA;
    110 typedef struct __WIDL_dimm_generated_name_00000003 {
    111     LPWSTR lpReading;
    112     LPWSTR lpWord;
    113 } REGISTERWORDW;
    114 typedef struct __WIDL_dimm_generated_name_00000004 {
    115     LONG lfHeight;
    116     LONG lfWidth;
    117     LONG lfEscapement;
    118     LONG lfOrientation;
    119     LONG lfWeight;
    120     BYTE lfItalic;
    121     BYTE lfUnderline;
    122     BYTE lfStrikeOut;
    123     BYTE lfCharSet;
    124     BYTE lfOutPrecision;
    125     BYTE lfClipPrecision;
    126     BYTE lfQuality;
    127     BYTE lfPitchAndFamily;
    128     CHAR lfFaceName[32];
    129 } LOGFONTA;
    130 typedef struct __WIDL_dimm_generated_name_00000005 {
    131     LONG lfHeight;
    132     LONG lfWidth;
    133     LONG lfEscapement;
    134     LONG lfOrientation;
    135     LONG lfWeight;
    136     BYTE lfItalic;
    137     BYTE lfUnderline;
    138     BYTE lfStrikeOut;
    139     BYTE lfCharSet;
    140     BYTE lfOutPrecision;
    141     BYTE lfClipPrecision;
    142     BYTE lfQuality;
    143     BYTE lfPitchAndFamily;
    144     WCHAR lfFaceName[32];
    145 } LOGFONTW;
    146 typedef DWORD HIMC;
    147 typedef DWORD HIMCC;
    148 typedef struct __WIDL_dimm_generated_name_00000006 {
    149     DWORD dwIndex;
    150     DWORD dwStyle;
    151     POINT ptCurrentPos;
    152     RECT rcArea;
    153 } CANDIDATEFORM;
    154 typedef struct __WIDL_dimm_generated_name_00000007 {
    155     DWORD dwStyle;
    156     POINT ptCurrentPos;
    157     RECT rcArea;
    158 } COMPOSITIONFORM;
    159 typedef struct __WIDL_dimm_generated_name_00000008 {
    160     DWORD dwSize;
    161     DWORD dwStyle;
    162     DWORD dwCount;
    163     DWORD dwSelection;
    164     DWORD dwPageStart;
    165     DWORD dwPageSize;
    166     DWORD dwOffset[1];
    167 } CANDIDATELIST;
    168 typedef struct __WIDL_dimm_generated_name_00000009 {
    169     DWORD dwStyle;
    170     CHAR szDescription[32];
    171 } STYLEBUFA;
    172 typedef struct __WIDL_dimm_generated_name_0000000A {
    173     DWORD dwStyle;
    174     WCHAR szDescription[32];
    175 } STYLEBUFW;
    176 typedef WORD ATOM;
    177 typedef struct __WIDL_dimm_generated_name_0000000B {
    178     UINT cbSize;
    179     UINT fType;
    180     UINT fState;
    181     UINT wID;
    182     HBITMAP hbmpChecked;
    183     HBITMAP hbmpUnchecked;
    184     DWORD dwItemData;
    185     CHAR szString[80];
    186     HBITMAP hbmpItem;
    187 } IMEMENUITEMINFOA;
    188 typedef struct __WIDL_dimm_generated_name_0000000C {
    189     UINT cbSize;
    190     UINT fType;
    191     UINT fState;
    192     UINT wID;
    193     HBITMAP hbmpChecked;
    194     HBITMAP hbmpUnchecked;
    195     DWORD dwItemData;
    196     WCHAR szString[80];
    197     HBITMAP hbmpItem;
    198 } IMEMENUITEMINFOW;
    199 #endif
    200 #ifndef _DDKIMM_H_
    201 typedef struct __WIDL_dimm_generated_name_0000000D {
    202     HWND hWnd;
    203     WINBOOL fOpen;
    204     POINT ptStatusWndPos;
    205     POINT ptSoftKbdPos;
    206     DWORD fdwConversion;
    207     DWORD fdwSentence;
    208     union {
    209         LOGFONTA A;
    210         LOGFONTW W;
    211     } lfFont;
    212     COMPOSITIONFORM cfCompForm;
    213     CANDIDATEFORM cfCandForm[4];
    214     HIMCC hCompStr;
    215     HIMCC hCandInfo;
    216     HIMCC hGuideLine;
    217     HIMCC hPrivate;
    218     DWORD dwNumMsgBuf;
    219     HIMCC hMsgBuf;
    220     DWORD fdwInit;
    221     DWORD dwReserve[3];
    222 } INPUTCONTEXT;
    223 typedef struct __WIDL_dimm_generated_name_0000000E {
    224     DWORD dwPrivateDataSize;
    225     DWORD fdwProperty;
    226     DWORD fdwConversionCaps;
    227     DWORD fdwSentenceCaps;
    228     DWORD fdwUICaps;
    229     DWORD fdwSCSCaps;
    230     DWORD fdwSelectCaps;
    231 } IMEINFO;
    232 #endif
    233 /*****************************************************************************
    234  * IEnumInputContext interface
    235  */
    236 #ifndef __IEnumInputContext_INTERFACE_DEFINED__
    237 #define __IEnumInputContext_INTERFACE_DEFINED__
    238 
    239 DEFINE_GUID(IID_IEnumInputContext, 0x09b5eab0, 0xf997, 0x11d1, 0x93,0xd4, 0x00,0x60,0xb0,0x67,0xb8,0x6e);
    240 #if defined(__cplusplus) && !defined(CINTERFACE)
    241 MIDL_INTERFACE("09b5eab0-f997-11d1-93d4-0060b067b86e")
    242 IEnumInputContext : public IUnknown
    243 {
    244     virtual HRESULT STDMETHODCALLTYPE Clone(
    245         IEnumInputContext **ppEnum) = 0;
    246 
    247     virtual HRESULT STDMETHODCALLTYPE Next(
    248         ULONG ulCount,
    249         HIMC *rgInputContext,
    250         ULONG *pcFetched) = 0;
    251 
    252     virtual HRESULT STDMETHODCALLTYPE Reset(
    253         ) = 0;
    254 
    255     virtual HRESULT STDMETHODCALLTYPE Skip(
    256         ULONG ulCount) = 0;
    257 
    258 };
    259 #ifdef __CRT_UUID_DECL
    260 __CRT_UUID_DECL(IEnumInputContext, 0x09b5eab0, 0xf997, 0x11d1, 0x93,0xd4, 0x00,0x60,0xb0,0x67,0xb8,0x6e)
    261 #endif
    262 #else
    263 typedef struct IEnumInputContextVtbl {
    264     BEGIN_INTERFACE
    265 
    266     /*** IUnknown methods ***/
    267     HRESULT (STDMETHODCALLTYPE *QueryInterface)(
    268         IEnumInputContext* This,
    269         REFIID riid,
    270         void **ppvObject);
    271 
    272     ULONG (STDMETHODCALLTYPE *AddRef)(
    273         IEnumInputContext* This);
    274 
    275     ULONG (STDMETHODCALLTYPE *Release)(
    276         IEnumInputContext* This);
    277 
    278     /*** IEnumInputContext methods ***/
    279     HRESULT (STDMETHODCALLTYPE *Clone)(
    280         IEnumInputContext* This,
    281         IEnumInputContext **ppEnum);
    282 
    283     HRESULT (STDMETHODCALLTYPE *Next)(
    284         IEnumInputContext* This,
    285         ULONG ulCount,
    286         HIMC *rgInputContext,
    287         ULONG *pcFetched);
    288 
    289     HRESULT (STDMETHODCALLTYPE *Reset)(
    290         IEnumInputContext* This);
    291 
    292     HRESULT (STDMETHODCALLTYPE *Skip)(
    293         IEnumInputContext* This,
    294         ULONG ulCount);
    295 
    296     END_INTERFACE
    297 } IEnumInputContextVtbl;
    298 interface IEnumInputContext {
    299     CONST_VTBL IEnumInputContextVtbl* lpVtbl;
    300 };
    301 
    302 #ifdef COBJMACROS
    303 #ifndef WIDL_C_INLINE_WRAPPERS
    304 /*** IUnknown methods ***/
    305 #define IEnumInputContext_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
    306 #define IEnumInputContext_AddRef(This) (This)->lpVtbl->AddRef(This)
    307 #define IEnumInputContext_Release(This) (This)->lpVtbl->Release(This)
    308 /*** IEnumInputContext methods ***/
    309 #define IEnumInputContext_Clone(This,ppEnum) (This)->lpVtbl->Clone(This,ppEnum)
    310 #define IEnumInputContext_Next(This,ulCount,rgInputContext,pcFetched) (This)->lpVtbl->Next(This,ulCount,rgInputContext,pcFetched)
    311 #define IEnumInputContext_Reset(This) (This)->lpVtbl->Reset(This)
    312 #define IEnumInputContext_Skip(This,ulCount) (This)->lpVtbl->Skip(This,ulCount)
    313 #else
    314 /*** IUnknown methods ***/
    315 static FORCEINLINE HRESULT IEnumInputContext_QueryInterface(IEnumInputContext* This,REFIID riid,void **ppvObject) {
    316     return This->lpVtbl->QueryInterface(This,riid,ppvObject);
    317 }
    318 static FORCEINLINE ULONG IEnumInputContext_AddRef(IEnumInputContext* This) {
    319     return This->lpVtbl->AddRef(This);
    320 }
    321 static FORCEINLINE ULONG IEnumInputContext_Release(IEnumInputContext* This) {
    322     return This->lpVtbl->Release(This);
    323 }
    324 /*** IEnumInputContext methods ***/
    325 static FORCEINLINE HRESULT IEnumInputContext_Clone(IEnumInputContext* This,IEnumInputContext **ppEnum) {
    326     return This->lpVtbl->Clone(This,ppEnum);
    327 }
    328 static FORCEINLINE HRESULT IEnumInputContext_Next(IEnumInputContext* This,ULONG ulCount,HIMC *rgInputContext,ULONG *pcFetched) {
    329     return This->lpVtbl->Next(This,ulCount,rgInputContext,pcFetched);
    330 }
    331 static FORCEINLINE HRESULT IEnumInputContext_Reset(IEnumInputContext* This) {
    332     return This->lpVtbl->Reset(This);
    333 }
    334 static FORCEINLINE HRESULT IEnumInputContext_Skip(IEnumInputContext* This,ULONG ulCount) {
    335     return This->lpVtbl->Skip(This,ulCount);
    336 }
    337 #endif
    338 #endif
    339 
    340 #endif
    341 
    342 HRESULT STDMETHODCALLTYPE IEnumInputContext_Clone_Proxy(
    343     IEnumInputContext* This,
    344     IEnumInputContext **ppEnum);
    345 void __RPC_STUB IEnumInputContext_Clone_Stub(
    346     IRpcStubBuffer* This,
    347     IRpcChannelBuffer* pRpcChannelBuffer,
    348     PRPC_MESSAGE pRpcMessage,
    349     DWORD* pdwStubPhase);
    350 HRESULT STDMETHODCALLTYPE IEnumInputContext_Next_Proxy(
    351     IEnumInputContext* This,
    352     ULONG ulCount,
    353     HIMC *rgInputContext,
    354     ULONG *pcFetched);
    355 void __RPC_STUB IEnumInputContext_Next_Stub(
    356     IRpcStubBuffer* This,
    357     IRpcChannelBuffer* pRpcChannelBuffer,
    358     PRPC_MESSAGE pRpcMessage,
    359     DWORD* pdwStubPhase);
    360 HRESULT STDMETHODCALLTYPE IEnumInputContext_Reset_Proxy(
    361     IEnumInputContext* This);
    362 void __RPC_STUB IEnumInputContext_Reset_Stub(
    363     IRpcStubBuffer* This,
    364     IRpcChannelBuffer* pRpcChannelBuffer,
    365     PRPC_MESSAGE pRpcMessage,
    366     DWORD* pdwStubPhase);
    367 HRESULT STDMETHODCALLTYPE IEnumInputContext_Skip_Proxy(
    368     IEnumInputContext* This,
    369     ULONG ulCount);
    370 void __RPC_STUB IEnumInputContext_Skip_Stub(
    371     IRpcStubBuffer* This,
    372     IRpcChannelBuffer* pRpcChannelBuffer,
    373     PRPC_MESSAGE pRpcMessage,
    374     DWORD* pdwStubPhase);
    375 
    376 #endif  /* __IEnumInputContext_INTERFACE_DEFINED__ */
    377 
    378 /*****************************************************************************
    379  * IActiveIMMRegistrar interface
    380  */
    381 #ifndef __IActiveIMMRegistrar_INTERFACE_DEFINED__
    382 #define __IActiveIMMRegistrar_INTERFACE_DEFINED__
    383 
    384 DEFINE_GUID(IID_IActiveIMMRegistrar, 0xb3458082, 0xbd00, 0x11d1, 0x93,0x9b, 0x00,0x60,0xb0,0x67,0xb8,0x6e);
    385 #if defined(__cplusplus) && !defined(CINTERFACE)
    386 MIDL_INTERFACE("b3458082-bd00-11d1-939b-0060b067b86e")
    387 IActiveIMMRegistrar : public IUnknown
    388 {
    389     virtual HRESULT STDMETHODCALLTYPE RegisterIME(
    390         REFCLSID rclsid,
    391         LANGID lgid,
    392         LPCWSTR pszIconFile,
    393         LPCWSTR pszDesc) = 0;
    394 
    395     virtual HRESULT STDMETHODCALLTYPE UnregisterIME(
    396         REFCLSID rclsid) = 0;
    397 
    398 };
    399 #ifdef __CRT_UUID_DECL
    400 __CRT_UUID_DECL(IActiveIMMRegistrar, 0xb3458082, 0xbd00, 0x11d1, 0x93,0x9b, 0x00,0x60,0xb0,0x67,0xb8,0x6e)
    401 #endif
    402 #else
    403 typedef struct IActiveIMMRegistrarVtbl {
    404     BEGIN_INTERFACE
    405 
    406     /*** IUnknown methods ***/
    407     HRESULT (STDMETHODCALLTYPE *QueryInterface)(
    408         IActiveIMMRegistrar* This,
    409         REFIID riid,
    410         void **ppvObject);
    411 
    412     ULONG (STDMETHODCALLTYPE *AddRef)(
    413         IActiveIMMRegistrar* This);
    414 
    415     ULONG (STDMETHODCALLTYPE *Release)(
    416         IActiveIMMRegistrar* This);
    417 
    418     /*** IActiveIMMRegistrar methods ***/
    419     HRESULT (STDMETHODCALLTYPE *RegisterIME)(
    420         IActiveIMMRegistrar* This,
    421         REFCLSID rclsid,
    422         LANGID lgid,
    423         LPCWSTR pszIconFile,
    424         LPCWSTR pszDesc);
    425 
    426     HRESULT (STDMETHODCALLTYPE *UnregisterIME)(
    427         IActiveIMMRegistrar* This,
    428         REFCLSID rclsid);
    429 
    430     END_INTERFACE
    431 } IActiveIMMRegistrarVtbl;
    432 interface IActiveIMMRegistrar {
    433     CONST_VTBL IActiveIMMRegistrarVtbl* lpVtbl;
    434 };
    435 
    436 #ifdef COBJMACROS
    437 #ifndef WIDL_C_INLINE_WRAPPERS
    438 /*** IUnknown methods ***/
    439 #define IActiveIMMRegistrar_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
    440 #define IActiveIMMRegistrar_AddRef(This) (This)->lpVtbl->AddRef(This)
    441 #define IActiveIMMRegistrar_Release(This) (This)->lpVtbl->Release(This)
    442 /*** IActiveIMMRegistrar methods ***/
    443 #define IActiveIMMRegistrar_RegisterIME(This,rclsid,lgid,pszIconFile,pszDesc) (This)->lpVtbl->RegisterIME(This,rclsid,lgid,pszIconFile,pszDesc)
    444 #define IActiveIMMRegistrar_UnregisterIME(This,rclsid) (This)->lpVtbl->UnregisterIME(This,rclsid)
    445 #else
    446 /*** IUnknown methods ***/
    447 static FORCEINLINE HRESULT IActiveIMMRegistrar_QueryInterface(IActiveIMMRegistrar* This,REFIID riid,void **ppvObject) {
    448     return This->lpVtbl->QueryInterface(This,riid,ppvObject);
    449 }
    450 static FORCEINLINE ULONG IActiveIMMRegistrar_AddRef(IActiveIMMRegistrar* This) {
    451     return This->lpVtbl->AddRef(This);
    452 }
    453 static FORCEINLINE ULONG IActiveIMMRegistrar_Release(IActiveIMMRegistrar* This) {
    454     return This->lpVtbl->Release(This);
    455 }
    456 /*** IActiveIMMRegistrar methods ***/
    457 static FORCEINLINE HRESULT IActiveIMMRegistrar_RegisterIME(IActiveIMMRegistrar* This,REFCLSID rclsid,LANGID lgid,LPCWSTR pszIconFile,LPCWSTR pszDesc) {
    458     return This->lpVtbl->RegisterIME(This,rclsid,lgid,pszIconFile,pszDesc);
    459 }
    460 static FORCEINLINE HRESULT IActiveIMMRegistrar_UnregisterIME(IActiveIMMRegistrar* This,REFCLSID rclsid) {
    461     return This->lpVtbl->UnregisterIME(This,rclsid);
    462 }
    463 #endif
    464 #endif
    465 
    466 #endif
    467 
    468 HRESULT STDMETHODCALLTYPE IActiveIMMRegistrar_RegisterIME_Proxy(
    469     IActiveIMMRegistrar* This,
    470     REFCLSID rclsid,
    471     LANGID lgid,
    472     LPCWSTR pszIconFile,
    473     LPCWSTR pszDesc);
    474 void __RPC_STUB IActiveIMMRegistrar_RegisterIME_Stub(
    475     IRpcStubBuffer* This,
    476     IRpcChannelBuffer* pRpcChannelBuffer,
    477     PRPC_MESSAGE pRpcMessage,
    478     DWORD* pdwStubPhase);
    479 HRESULT STDMETHODCALLTYPE IActiveIMMRegistrar_UnregisterIME_Proxy(
    480     IActiveIMMRegistrar* This,
    481     REFCLSID rclsid);
    482 void __RPC_STUB IActiveIMMRegistrar_UnregisterIME_Stub(
    483     IRpcStubBuffer* This,
    484     IRpcChannelBuffer* pRpcChannelBuffer,
    485     PRPC_MESSAGE pRpcMessage,
    486     DWORD* pdwStubPhase);
    487 
    488 #endif  /* __IActiveIMMRegistrar_INTERFACE_DEFINED__ */
    489 
    490 /*****************************************************************************
    491  * IActiveIMMMessagePumpOwner interface
    492  */
    493 #ifndef __IActiveIMMMessagePumpOwner_INTERFACE_DEFINED__
    494 #define __IActiveIMMMessagePumpOwner_INTERFACE_DEFINED__
    495 
    496 DEFINE_GUID(IID_IActiveIMMMessagePumpOwner, 0xb5cf2cfa, 0x8aeb, 0x11d1, 0x93,0x64, 0x00,0x60,0xb0,0x67,0xb8,0x6e);
    497 #if defined(__cplusplus) && !defined(CINTERFACE)
    498 MIDL_INTERFACE("b5cf2cfa-8aeb-11d1-9364-0060b067b86e")
    499 IActiveIMMMessagePumpOwner : public IUnknown
    500 {
    501     virtual HRESULT STDMETHODCALLTYPE Start(
    502         ) = 0;
    503 
    504     virtual HRESULT STDMETHODCALLTYPE End(
    505         ) = 0;
    506 
    507     virtual HRESULT STDMETHODCALLTYPE OnTranslateMessage(
    508         const MSG *pMsg) = 0;
    509 
    510     virtual HRESULT STDMETHODCALLTYPE Pause(
    511         DWORD *pdwCookie) = 0;
    512 
    513     virtual HRESULT STDMETHODCALLTYPE Resume(
    514         DWORD dwCookie) = 0;
    515 
    516 };
    517 #ifdef __CRT_UUID_DECL
    518 __CRT_UUID_DECL(IActiveIMMMessagePumpOwner, 0xb5cf2cfa, 0x8aeb, 0x11d1, 0x93,0x64, 0x00,0x60,0xb0,0x67,0xb8,0x6e)
    519 #endif
    520 #else
    521 typedef struct IActiveIMMMessagePumpOwnerVtbl {
    522     BEGIN_INTERFACE
    523 
    524     /*** IUnknown methods ***/
    525     HRESULT (STDMETHODCALLTYPE *QueryInterface)(
    526         IActiveIMMMessagePumpOwner* This,
    527         REFIID riid,
    528         void **ppvObject);
    529 
    530     ULONG (STDMETHODCALLTYPE *AddRef)(
    531         IActiveIMMMessagePumpOwner* This);
    532 
    533     ULONG (STDMETHODCALLTYPE *Release)(
    534         IActiveIMMMessagePumpOwner* This);
    535 
    536     /*** IActiveIMMMessagePumpOwner methods ***/
    537     HRESULT (STDMETHODCALLTYPE *Start)(
    538         IActiveIMMMessagePumpOwner* This);
    539 
    540     HRESULT (STDMETHODCALLTYPE *End)(
    541         IActiveIMMMessagePumpOwner* This);
    542 
    543     HRESULT (STDMETHODCALLTYPE *OnTranslateMessage)(
    544         IActiveIMMMessagePumpOwner* This,
    545         const MSG *pMsg);
    546 
    547     HRESULT (STDMETHODCALLTYPE *Pause)(
    548         IActiveIMMMessagePumpOwner* This,
    549         DWORD *pdwCookie);
    550 
    551     HRESULT (STDMETHODCALLTYPE *Resume)(
    552         IActiveIMMMessagePumpOwner* This,
    553         DWORD dwCookie);
    554 
    555     END_INTERFACE
    556 } IActiveIMMMessagePumpOwnerVtbl;
    557 interface IActiveIMMMessagePumpOwner {
    558     CONST_VTBL IActiveIMMMessagePumpOwnerVtbl* lpVtbl;
    559 };
    560 
    561 #ifdef COBJMACROS
    562 #ifndef WIDL_C_INLINE_WRAPPERS
    563 /*** IUnknown methods ***/
    564 #define IActiveIMMMessagePumpOwner_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
    565 #define IActiveIMMMessagePumpOwner_AddRef(This) (This)->lpVtbl->AddRef(This)
    566 #define IActiveIMMMessagePumpOwner_Release(This) (This)->lpVtbl->Release(This)
    567 /*** IActiveIMMMessagePumpOwner methods ***/
    568 #define IActiveIMMMessagePumpOwner_Start(This) (This)->lpVtbl->Start(This)
    569 #define IActiveIMMMessagePumpOwner_End(This) (This)->lpVtbl->End(This)
    570 #define IActiveIMMMessagePumpOwner_OnTranslateMessage(This,pMsg) (This)->lpVtbl->OnTranslateMessage(This,pMsg)
    571 #define IActiveIMMMessagePumpOwner_Pause(This,pdwCookie) (This)->lpVtbl->Pause(This,pdwCookie)
    572 #define IActiveIMMMessagePumpOwner_Resume(This,dwCookie) (This)->lpVtbl->Resume(This,dwCookie)
    573 #else
    574 /*** IUnknown methods ***/
    575 static FORCEINLINE HRESULT IActiveIMMMessagePumpOwner_QueryInterface(IActiveIMMMessagePumpOwner* This,REFIID riid,void **ppvObject) {
    576     return This->lpVtbl->QueryInterface(This,riid,ppvObject);
    577 }
    578 static FORCEINLINE ULONG IActiveIMMMessagePumpOwner_AddRef(IActiveIMMMessagePumpOwner* This) {
    579     return This->lpVtbl->AddRef(This);
    580 }
    581 static FORCEINLINE ULONG IActiveIMMMessagePumpOwner_Release(IActiveIMMMessagePumpOwner* This) {
    582     return This->lpVtbl->Release(This);
    583 }
    584 /*** IActiveIMMMessagePumpOwner methods ***/
    585 static FORCEINLINE HRESULT IActiveIMMMessagePumpOwner_Start(IActiveIMMMessagePumpOwner* This) {
    586     return This->lpVtbl->Start(This);
    587 }
    588 static FORCEINLINE HRESULT IActiveIMMMessagePumpOwner_End(IActiveIMMMessagePumpOwner* This) {
    589     return This->lpVtbl->End(This);
    590 }
    591 static FORCEINLINE HRESULT IActiveIMMMessagePumpOwner_OnTranslateMessage(IActiveIMMMessagePumpOwner* This,const MSG *pMsg) {
    592     return This->lpVtbl->OnTranslateMessage(This,pMsg);
    593 }
    594 static FORCEINLINE HRESULT IActiveIMMMessagePumpOwner_Pause(IActiveIMMMessagePumpOwner* This,DWORD *pdwCookie) {
    595     return This->lpVtbl->Pause(This,pdwCookie);
    596 }
    597 static FORCEINLINE HRESULT IActiveIMMMessagePumpOwner_Resume(IActiveIMMMessagePumpOwner* This,DWORD dwCookie) {
    598     return This->lpVtbl->Resume(This,dwCookie);
    599 }
    600 #endif
    601 #endif
    602 
    603 #endif
    604 
    605 HRESULT STDMETHODCALLTYPE IActiveIMMMessagePumpOwner_Start_Proxy(
    606     IActiveIMMMessagePumpOwner* This);
    607 void __RPC_STUB IActiveIMMMessagePumpOwner_Start_Stub(
    608     IRpcStubBuffer* This,
    609     IRpcChannelBuffer* pRpcChannelBuffer,
    610     PRPC_MESSAGE pRpcMessage,
    611     DWORD* pdwStubPhase);
    612 HRESULT STDMETHODCALLTYPE IActiveIMMMessagePumpOwner_End_Proxy(
    613     IActiveIMMMessagePumpOwner* This);
    614 void __RPC_STUB IActiveIMMMessagePumpOwner_End_Stub(
    615     IRpcStubBuffer* This,
    616     IRpcChannelBuffer* pRpcChannelBuffer,
    617     PRPC_MESSAGE pRpcMessage,
    618     DWORD* pdwStubPhase);
    619 HRESULT STDMETHODCALLTYPE IActiveIMMMessagePumpOwner_OnTranslateMessage_Proxy(
    620     IActiveIMMMessagePumpOwner* This,
    621     const MSG *pMsg);
    622 void __RPC_STUB IActiveIMMMessagePumpOwner_OnTranslateMessage_Stub(
    623     IRpcStubBuffer* This,
    624     IRpcChannelBuffer* pRpcChannelBuffer,
    625     PRPC_MESSAGE pRpcMessage,
    626     DWORD* pdwStubPhase);
    627 HRESULT STDMETHODCALLTYPE IActiveIMMMessagePumpOwner_Pause_Proxy(
    628     IActiveIMMMessagePumpOwner* This,
    629     DWORD *pdwCookie);
    630 void __RPC_STUB IActiveIMMMessagePumpOwner_Pause_Stub(
    631     IRpcStubBuffer* This,
    632     IRpcChannelBuffer* pRpcChannelBuffer,
    633     PRPC_MESSAGE pRpcMessage,
    634     DWORD* pdwStubPhase);
    635 HRESULT STDMETHODCALLTYPE IActiveIMMMessagePumpOwner_Resume_Proxy(
    636     IActiveIMMMessagePumpOwner* This,
    637     DWORD dwCookie);
    638 void __RPC_STUB IActiveIMMMessagePumpOwner_Resume_Stub(
    639     IRpcStubBuffer* This,
    640     IRpcChannelBuffer* pRpcChannelBuffer,
    641     PRPC_MESSAGE pRpcMessage,
    642     DWORD* pdwStubPhase);
    643 
    644 #endif  /* __IActiveIMMMessagePumpOwner_INTERFACE_DEFINED__ */
    645 
    646 /*****************************************************************************
    647  * IActiveIMMApp interface
    648  */
    649 #ifndef __IActiveIMMApp_INTERFACE_DEFINED__
    650 #define __IActiveIMMApp_INTERFACE_DEFINED__
    651 
    652 DEFINE_GUID(IID_IActiveIMMApp, 0x08c0e040, 0x62d1, 0x11d1, 0x93,0x26, 0x00,0x60,0xb0,0x67,0xb8,0x6e);
    653 #if defined(__cplusplus) && !defined(CINTERFACE)
    654 MIDL_INTERFACE("08c0e040-62d1-11d1-9326-0060b067b86e")
    655 IActiveIMMApp : public IUnknown
    656 {
    657     virtual HRESULT STDMETHODCALLTYPE AssociateContext(
    658         HWND hWnd,
    659         HIMC hIME,
    660         HIMC *phPrev) = 0;
    661 
    662     virtual HRESULT STDMETHODCALLTYPE ConfigureIMEA(
    663         HKL hKL,
    664         HWND hWnd,
    665         DWORD dwMode,
    666         REGISTERWORDA *pData) = 0;
    667 
    668     virtual HRESULT STDMETHODCALLTYPE ConfigureIMEW(
    669         HKL hKL,
    670         HWND hWnd,
    671         DWORD dwMode,
    672         REGISTERWORDW *pData) = 0;
    673 
    674     virtual HRESULT STDMETHODCALLTYPE CreateContext(
    675         HIMC *phIMC) = 0;
    676 
    677     virtual HRESULT STDMETHODCALLTYPE DestroyContext(
    678         HIMC hIME) = 0;
    679 
    680     virtual HRESULT STDMETHODCALLTYPE EnumRegisterWordA(
    681         HKL hKL,
    682         LPSTR szReading,
    683         DWORD dwStyle,
    684         LPSTR szRegister,
    685         LPVOID pData,
    686         IEnumRegisterWordA **pEnum) = 0;
    687 
    688     virtual HRESULT STDMETHODCALLTYPE EnumRegisterWordW(
    689         HKL hKL,
    690         LPWSTR szReading,
    691         DWORD dwStyle,
    692         LPWSTR szRegister,
    693         LPVOID pData,
    694         IEnumRegisterWordW **pEnum) = 0;
    695 
    696     virtual HRESULT STDMETHODCALLTYPE EscapeA(
    697         HKL hKL,
    698         HIMC hIMC,
    699         UINT uEscape,
    700         LPVOID pData,
    701         LRESULT *plResult) = 0;
    702 
    703     virtual HRESULT STDMETHODCALLTYPE EscapeW(
    704         HKL hKL,
    705         HIMC hIMC,
    706         UINT uEscape,
    707         LPVOID pData,
    708         LRESULT *plResult) = 0;
    709 
    710     virtual HRESULT STDMETHODCALLTYPE GetCandidateListA(
    711         HIMC hIMC,
    712         DWORD dwIndex,
    713         UINT uBufLen,
    714         CANDIDATELIST *pCandList,
    715         UINT *puCopied) = 0;
    716 
    717     virtual HRESULT STDMETHODCALLTYPE GetCandidateListW(
    718         HIMC hIMC,
    719         DWORD dwIndex,
    720         UINT uBufLen,
    721         CANDIDATELIST *pCandList,
    722         UINT *puCopied) = 0;
    723 
    724     virtual HRESULT STDMETHODCALLTYPE GetCandidateListCountA(
    725         HIMC hIMC,
    726         DWORD *pdwListSize,
    727         DWORD *pdwBufLen) = 0;
    728 
    729     virtual HRESULT STDMETHODCALLTYPE GetCandidateListCountW(
    730         HIMC hIMC,
    731         DWORD *pdwListSize,
    732         DWORD *pdwBufLen) = 0;
    733 
    734     virtual HRESULT STDMETHODCALLTYPE GetCandidateWindow(
    735         HIMC hIMC,
    736         DWORD dwIndex,
    737         CANDIDATEFORM *pCandidate) = 0;
    738 
    739     virtual HRESULT STDMETHODCALLTYPE GetCompositionFontA(
    740         HIMC hIMC,
    741         LOGFONTA *plf) = 0;
    742 
    743     virtual HRESULT STDMETHODCALLTYPE GetCompositionFontW(
    744         HIMC hIMC,
    745         LOGFONTW *plf) = 0;
    746 
    747     virtual HRESULT STDMETHODCALLTYPE GetCompositionStringA(
    748         HIMC hIMC,
    749         DWORD dwIndex,
    750         DWORD dwBufLen,
    751         LONG *plCopied,
    752         LPVOID pBuf) = 0;
    753 
    754     virtual HRESULT STDMETHODCALLTYPE GetCompositionStringW(
    755         HIMC hIMC,
    756         DWORD dwIndex,
    757         DWORD dwBufLen,
    758         LONG *plCopied,
    759         LPVOID pBuf) = 0;
    760 
    761     virtual HRESULT STDMETHODCALLTYPE GetCompositionWindow(
    762         HIMC hIMC,
    763         COMPOSITIONFORM *pCompForm) = 0;
    764 
    765     virtual HRESULT STDMETHODCALLTYPE GetContext(
    766         HWND hWnd,
    767         HIMC *phIMC) = 0;
    768 
    769     virtual HRESULT STDMETHODCALLTYPE GetConversionListA(
    770         HKL hKL,
    771         HIMC hIMC,
    772         LPSTR pSrc,
    773         UINT uBufLen,
    774         UINT uFlag,
    775         CANDIDATELIST *pDst,
    776         UINT *puCopied) = 0;
    777 
    778     virtual HRESULT STDMETHODCALLTYPE GetConversionListW(
    779         HKL hKL,
    780         HIMC hIMC,
    781         LPWSTR pSrc,
    782         UINT uBufLen,
    783         UINT uFlag,
    784         CANDIDATELIST *pDst,
    785         UINT *puCopied) = 0;
    786 
    787     virtual HRESULT STDMETHODCALLTYPE GetConversionStatus(
    788         HIMC hIMC,
    789         DWORD *pfdwConversion,
    790         DWORD *pfdwSentence) = 0;
    791 
    792     virtual HRESULT STDMETHODCALLTYPE GetDefaultIMEWnd(
    793         HWND hWnd,
    794         HWND *phDefWnd) = 0;
    795 
    796     virtual HRESULT STDMETHODCALLTYPE GetDescriptionA(
    797         HKL hKL,
    798         UINT uBufLen,
    799         LPSTR szDescription,
    800         UINT *puCopied) = 0;
    801 
    802     virtual HRESULT STDMETHODCALLTYPE GetDescriptionW(
    803         HKL hKL,
    804         UINT uBufLen,
    805         LPWSTR szDescription,
    806         UINT *puCopied) = 0;
    807 
    808     virtual HRESULT STDMETHODCALLTYPE GetGuideLineA(
    809         HIMC hIMC,
    810         DWORD dwIndex,
    811         DWORD dwBufLen,
    812         LPSTR pBuf,
    813         DWORD *pdwResult) = 0;
    814 
    815     virtual HRESULT STDMETHODCALLTYPE GetGuideLineW(
    816         HIMC hIMC,
    817         DWORD dwIndex,
    818         DWORD dwBufLen,
    819         LPWSTR pBuf,
    820         DWORD *pdwResult) = 0;
    821 
    822     virtual HRESULT STDMETHODCALLTYPE GetIMEFileNameA(
    823         HKL hKL,
    824         UINT uBufLen,
    825         LPSTR szFileName,
    826         UINT *puCopied) = 0;
    827 
    828     virtual HRESULT STDMETHODCALLTYPE GetIMEFileNameW(
    829         HKL hKL,
    830         UINT uBufLen,
    831         LPWSTR szFileName,
    832         UINT *puCopied) = 0;
    833 
    834     virtual HRESULT STDMETHODCALLTYPE GetOpenStatus(
    835         HIMC hIMC) = 0;
    836 
    837     virtual HRESULT STDMETHODCALLTYPE GetProperty(
    838         HKL hKL,
    839         DWORD fdwIndex,
    840         DWORD *pdwProperty) = 0;
    841 
    842     virtual HRESULT STDMETHODCALLTYPE GetRegisterWordStyleA(
    843         HKL hKL,
    844         UINT nItem,
    845         STYLEBUFA *pStyleBuf,
    846         UINT *puCopied) = 0;
    847 
    848     virtual HRESULT STDMETHODCALLTYPE GetRegisterWordStyleW(
    849         HKL hKL,
    850         UINT nItem,
    851         STYLEBUFW *pStyleBuf,
    852         UINT *puCopied) = 0;
    853 
    854     virtual HRESULT STDMETHODCALLTYPE GetStatusWindowPos(
    855         HIMC hIMC,
    856         POINT *pptPos) = 0;
    857 
    858     virtual HRESULT STDMETHODCALLTYPE GetVirtualKey(
    859         HWND hWnd,
    860         UINT *puVirtualKey) = 0;
    861 
    862     virtual HRESULT STDMETHODCALLTYPE InstallIMEA(
    863         LPSTR szIMEFileName,
    864         LPSTR szLayoutText,
    865         HKL *phKL) = 0;
    866 
    867     virtual HRESULT STDMETHODCALLTYPE InstallIMEW(
    868         LPWSTR szIMEFileName,
    869         LPWSTR szLayoutText,
    870         HKL *phKL) = 0;
    871 
    872     virtual HRESULT STDMETHODCALLTYPE IsIME(
    873         HKL hKL) = 0;
    874 
    875     virtual HRESULT STDMETHODCALLTYPE IsUIMessageA(
    876         HWND hWndIME,
    877         UINT msg,
    878         WPARAM wParam,
    879         LPARAM lParam) = 0;
    880 
    881     virtual HRESULT STDMETHODCALLTYPE IsUIMessageW(
    882         HWND hWndIME,
    883         UINT msg,
    884         WPARAM wParam,
    885         LPARAM lParam) = 0;
    886 
    887     virtual HRESULT STDMETHODCALLTYPE NotifyIME(
    888         HIMC hIMC,
    889         DWORD dwAction,
    890         DWORD dwIndex,
    891         DWORD dwValue) = 0;
    892 
    893     virtual HRESULT STDMETHODCALLTYPE RegisterWordA(
    894         HKL hKL,
    895         LPSTR szReading,
    896         DWORD dwStyle,
    897         LPSTR szRegister) = 0;
    898 
    899     virtual HRESULT STDMETHODCALLTYPE RegisterWordW(
    900         HKL hKL,
    901         LPWSTR szReading,
    902         DWORD dwStyle,
    903         LPWSTR szRegister) = 0;
    904 
    905     virtual HRESULT STDMETHODCALLTYPE ReleaseContext(
    906         HWND hWnd,
    907         HIMC hIMC) = 0;
    908 
    909     virtual HRESULT STDMETHODCALLTYPE SetCandidateWindow(
    910         HIMC hIMC,
    911         CANDIDATEFORM *pCandidate) = 0;
    912 
    913     virtual HRESULT STDMETHODCALLTYPE SetCompositionFontA(
    914         HIMC hIMC,
    915         LOGFONTA *plf) = 0;
    916 
    917     virtual HRESULT STDMETHODCALLTYPE SetCompositionFontW(
    918         HIMC hIMC,
    919         LOGFONTW *plf) = 0;
    920 
    921     virtual HRESULT STDMETHODCALLTYPE SetCompositionStringA(
    922         HIMC hIMC,
    923         DWORD dwIndex,
    924         LPVOID pComp,
    925         DWORD dwCompLen,
    926         LPVOID pRead,
    927         DWORD dwReadLen) = 0;
    928 
    929     virtual HRESULT STDMETHODCALLTYPE SetCompositionStringW(
    930         HIMC hIMC,
    931         DWORD dwIndex,
    932         LPVOID pComp,
    933         DWORD dwCompLen,
    934         LPVOID pRead,
    935         DWORD dwReadLen) = 0;
    936 
    937     virtual HRESULT STDMETHODCALLTYPE SetCompositionWindow(
    938         HIMC hIMC,
    939         COMPOSITIONFORM *pCompForm) = 0;
    940 
    941     virtual HRESULT STDMETHODCALLTYPE SetConversionStatus(
    942         HIMC hIMC,
    943         DWORD fdwConversion,
    944         DWORD fdwSentence) = 0;
    945 
    946     virtual HRESULT STDMETHODCALLTYPE SetOpenStatus(
    947         HIMC hIMC,
    948         WINBOOL fOpen) = 0;
    949 
    950     virtual HRESULT STDMETHODCALLTYPE SetStatusWindowPos(
    951         HIMC hIMC,
    952         POINT *pptPos) = 0;
    953 
    954     virtual HRESULT STDMETHODCALLTYPE SimulateHotKey(
    955         HWND hWnd,
    956         DWORD dwHotKeyID) = 0;
    957 
    958     virtual HRESULT STDMETHODCALLTYPE UnregisterWordA(
    959         HKL hKL,
    960         LPSTR szReading,
    961         DWORD dwStyle,
    962         LPSTR szUnregister) = 0;
    963 
    964     virtual HRESULT STDMETHODCALLTYPE UnregisterWordW(
    965         HKL hKL,
    966         LPWSTR szReading,
    967         DWORD dwStyle,
    968         LPWSTR szUnregister) = 0;
    969 
    970     virtual HRESULT STDMETHODCALLTYPE Activate(
    971         WINBOOL fRestoreLayout) = 0;
    972 
    973     virtual HRESULT STDMETHODCALLTYPE Deactivate(
    974         ) = 0;
    975 
    976     virtual HRESULT STDMETHODCALLTYPE OnDefWindowProc(
    977         HWND hWnd,
    978         UINT Msg,
    979         WPARAM wParam,
    980         LPARAM lParam,
    981         LRESULT *plResult) = 0;
    982 
    983     virtual HRESULT STDMETHODCALLTYPE FilterClientWindows(
    984         ATOM *aaClassList,
    985         UINT uSize) = 0;
    986 
    987     virtual HRESULT STDMETHODCALLTYPE GetCodePageA(
    988         HKL hKL,
    989         UINT *uCodePage) = 0;
    990 
    991     virtual HRESULT STDMETHODCALLTYPE GetLangId(
    992         HKL hKL,
    993         LANGID *plid) = 0;
    994 
    995     virtual HRESULT STDMETHODCALLTYPE AssociateContextEx(
    996         HWND hWnd,
    997         HIMC hIMC,
    998         DWORD dwFlags) = 0;
    999 
   1000     virtual HRESULT STDMETHODCALLTYPE DisableIME(
   1001         DWORD idThread) = 0;
   1002 
   1003     virtual HRESULT STDMETHODCALLTYPE GetImeMenuItemsA(
   1004         HIMC hIMC,
   1005         DWORD dwFlags,
   1006         DWORD dwType,
   1007         IMEMENUITEMINFOA *pImeParentMenu,
   1008         IMEMENUITEMINFOA *pImeMenu,
   1009         DWORD dwSize,
   1010         DWORD *pdwResult) = 0;
   1011 
   1012     virtual HRESULT STDMETHODCALLTYPE GetImeMenuItemsW(
   1013         HIMC hIMC,
   1014         DWORD dwFlags,
   1015         DWORD dwType,
   1016         IMEMENUITEMINFOW *pImeParentMenu,
   1017         IMEMENUITEMINFOW *pImeMenu,
   1018         DWORD dwSize,
   1019         DWORD *pdwResult) = 0;
   1020 
   1021     virtual HRESULT STDMETHODCALLTYPE EnumInputContext(
   1022         DWORD idThread,
   1023         IEnumInputContext **ppEnum) = 0;
   1024 
   1025 };
   1026 #ifdef __CRT_UUID_DECL
   1027 __CRT_UUID_DECL(IActiveIMMApp, 0x08c0e040, 0x62d1, 0x11d1, 0x93,0x26, 0x00,0x60,0xb0,0x67,0xb8,0x6e)
   1028 #endif
   1029 #else
   1030 typedef struct IActiveIMMAppVtbl {
   1031     BEGIN_INTERFACE
   1032 
   1033     /*** IUnknown methods ***/
   1034     HRESULT (STDMETHODCALLTYPE *QueryInterface)(
   1035         IActiveIMMApp* This,
   1036         REFIID riid,
   1037         void **ppvObject);
   1038 
   1039     ULONG (STDMETHODCALLTYPE *AddRef)(
   1040         IActiveIMMApp* This);
   1041 
   1042     ULONG (STDMETHODCALLTYPE *Release)(
   1043         IActiveIMMApp* This);
   1044 
   1045     /*** IActiveIMMApp methods ***/
   1046     HRESULT (STDMETHODCALLTYPE *AssociateContext)(
   1047         IActiveIMMApp* This,
   1048         HWND hWnd,
   1049         HIMC hIME,
   1050         HIMC *phPrev);
   1051 
   1052     HRESULT (STDMETHODCALLTYPE *ConfigureIMEA)(
   1053         IActiveIMMApp* This,
   1054         HKL hKL,
   1055         HWND hWnd,
   1056         DWORD dwMode,
   1057         REGISTERWORDA *pData);
   1058 
   1059     HRESULT (STDMETHODCALLTYPE *ConfigureIMEW)(
   1060         IActiveIMMApp* This,
   1061         HKL hKL,
   1062         HWND hWnd,
   1063         DWORD dwMode,
   1064         REGISTERWORDW *pData);
   1065 
   1066     HRESULT (STDMETHODCALLTYPE *CreateContext)(
   1067         IActiveIMMApp* This,
   1068         HIMC *phIMC);
   1069 
   1070     HRESULT (STDMETHODCALLTYPE *DestroyContext)(
   1071         IActiveIMMApp* This,
   1072         HIMC hIME);
   1073 
   1074     HRESULT (STDMETHODCALLTYPE *EnumRegisterWordA)(
   1075         IActiveIMMApp* This,
   1076         HKL hKL,
   1077         LPSTR szReading,
   1078         DWORD dwStyle,
   1079         LPSTR szRegister,
   1080         LPVOID pData,
   1081         IEnumRegisterWordA **pEnum);
   1082 
   1083     HRESULT (STDMETHODCALLTYPE *EnumRegisterWordW)(
   1084         IActiveIMMApp* This,
   1085         HKL hKL,
   1086         LPWSTR szReading,
   1087         DWORD dwStyle,
   1088         LPWSTR szRegister,
   1089         LPVOID pData,
   1090         IEnumRegisterWordW **pEnum);
   1091 
   1092     HRESULT (STDMETHODCALLTYPE *EscapeA)(
   1093         IActiveIMMApp* This,
   1094         HKL hKL,
   1095         HIMC hIMC,
   1096         UINT uEscape,
   1097         LPVOID pData,
   1098         LRESULT *plResult);
   1099 
   1100     HRESULT (STDMETHODCALLTYPE *EscapeW)(
   1101         IActiveIMMApp* This,
   1102         HKL hKL,
   1103         HIMC hIMC,
   1104         UINT uEscape,
   1105         LPVOID pData,
   1106         LRESULT *plResult);
   1107 
   1108     HRESULT (STDMETHODCALLTYPE *GetCandidateListA)(
   1109         IActiveIMMApp* This,
   1110         HIMC hIMC,
   1111         DWORD dwIndex,
   1112         UINT uBufLen,
   1113         CANDIDATELIST *pCandList,
   1114         UINT *puCopied);
   1115 
   1116     HRESULT (STDMETHODCALLTYPE *GetCandidateListW)(
   1117         IActiveIMMApp* This,
   1118         HIMC hIMC,
   1119         DWORD dwIndex,
   1120         UINT uBufLen,
   1121         CANDIDATELIST *pCandList,
   1122         UINT *puCopied);
   1123 
   1124     HRESULT (STDMETHODCALLTYPE *GetCandidateListCountA)(
   1125         IActiveIMMApp* This,
   1126         HIMC hIMC,
   1127         DWORD *pdwListSize,
   1128         DWORD *pdwBufLen);
   1129 
   1130     HRESULT (STDMETHODCALLTYPE *GetCandidateListCountW)(
   1131         IActiveIMMApp* This,
   1132         HIMC hIMC,
   1133         DWORD *pdwListSize,
   1134         DWORD *pdwBufLen);
   1135 
   1136     HRESULT (STDMETHODCALLTYPE *GetCandidateWindow)(
   1137         IActiveIMMApp* This,
   1138         HIMC hIMC,
   1139         DWORD dwIndex,
   1140         CANDIDATEFORM *pCandidate);
   1141 
   1142     HRESULT (STDMETHODCALLTYPE *GetCompositionFontA)(
   1143         IActiveIMMApp* This,
   1144         HIMC hIMC,
   1145         LOGFONTA *plf);
   1146 
   1147     HRESULT (STDMETHODCALLTYPE *GetCompositionFontW)(
   1148         IActiveIMMApp* This,
   1149         HIMC hIMC,
   1150         LOGFONTW *plf);
   1151 
   1152     HRESULT (STDMETHODCALLTYPE *GetCompositionStringA)(
   1153         IActiveIMMApp* This,
   1154         HIMC hIMC,
   1155         DWORD dwIndex,
   1156         DWORD dwBufLen,
   1157         LONG *plCopied,
   1158         LPVOID pBuf);
   1159 
   1160     HRESULT (STDMETHODCALLTYPE *GetCompositionStringW)(
   1161         IActiveIMMApp* This,
   1162         HIMC hIMC,
   1163         DWORD dwIndex,
   1164         DWORD dwBufLen,
   1165         LONG *plCopied,
   1166         LPVOID pBuf);
   1167 
   1168     HRESULT (STDMETHODCALLTYPE *GetCompositionWindow)(
   1169         IActiveIMMApp* This,
   1170         HIMC hIMC,
   1171         COMPOSITIONFORM *pCompForm);
   1172 
   1173     HRESULT (STDMETHODCALLTYPE *GetContext)(
   1174         IActiveIMMApp* This,
   1175         HWND hWnd,
   1176         HIMC *phIMC);
   1177 
   1178     HRESULT (STDMETHODCALLTYPE *GetConversionListA)(
   1179         IActiveIMMApp* This,
   1180         HKL hKL,
   1181         HIMC hIMC,
   1182         LPSTR pSrc,
   1183         UINT uBufLen,
   1184         UINT uFlag,
   1185         CANDIDATELIST *pDst,
   1186         UINT *puCopied);
   1187 
   1188     HRESULT (STDMETHODCALLTYPE *GetConversionListW)(
   1189         IActiveIMMApp* This,
   1190         HKL hKL,
   1191         HIMC hIMC,
   1192         LPWSTR pSrc,
   1193         UINT uBufLen,
   1194         UINT uFlag,
   1195         CANDIDATELIST *pDst,
   1196         UINT *puCopied);
   1197 
   1198     HRESULT (STDMETHODCALLTYPE *GetConversionStatus)(
   1199         IActiveIMMApp* This,
   1200         HIMC hIMC,
   1201         DWORD *pfdwConversion,
   1202         DWORD *pfdwSentence);
   1203 
   1204     HRESULT (STDMETHODCALLTYPE *GetDefaultIMEWnd)(
   1205         IActiveIMMApp* This,
   1206         HWND hWnd,
   1207         HWND *phDefWnd);
   1208 
   1209     HRESULT (STDMETHODCALLTYPE *GetDescriptionA)(
   1210         IActiveIMMApp* This,
   1211         HKL hKL,
   1212         UINT uBufLen,
   1213         LPSTR szDescription,
   1214         UINT *puCopied);
   1215 
   1216     HRESULT (STDMETHODCALLTYPE *GetDescriptionW)(
   1217         IActiveIMMApp* This,
   1218         HKL hKL,
   1219         UINT uBufLen,
   1220         LPWSTR szDescription,
   1221         UINT *puCopied);
   1222 
   1223     HRESULT (STDMETHODCALLTYPE *GetGuideLineA)(
   1224         IActiveIMMApp* This,
   1225         HIMC hIMC,
   1226         DWORD dwIndex,
   1227         DWORD dwBufLen,
   1228         LPSTR pBuf,
   1229         DWORD *pdwResult);
   1230 
   1231     HRESULT (STDMETHODCALLTYPE *GetGuideLineW)(
   1232         IActiveIMMApp* This,
   1233         HIMC hIMC,
   1234         DWORD dwIndex,
   1235         DWORD dwBufLen,
   1236         LPWSTR pBuf,
   1237         DWORD *pdwResult);
   1238 
   1239     HRESULT (STDMETHODCALLTYPE *GetIMEFileNameA)(
   1240         IActiveIMMApp* This,
   1241         HKL hKL,
   1242         UINT uBufLen,
   1243         LPSTR szFileName,
   1244         UINT *puCopied);
   1245 
   1246     HRESULT (STDMETHODCALLTYPE *GetIMEFileNameW)(
   1247         IActiveIMMApp* This,
   1248         HKL hKL,
   1249         UINT uBufLen,
   1250         LPWSTR szFileName,
   1251         UINT *puCopied);
   1252 
   1253     HRESULT (STDMETHODCALLTYPE *GetOpenStatus)(
   1254         IActiveIMMApp* This,
   1255         HIMC hIMC);
   1256 
   1257     HRESULT (STDMETHODCALLTYPE *GetProperty)(
   1258         IActiveIMMApp* This,
   1259         HKL hKL,
   1260         DWORD fdwIndex,
   1261         DWORD *pdwProperty);
   1262 
   1263     HRESULT (STDMETHODCALLTYPE *GetRegisterWordStyleA)(
   1264         IActiveIMMApp* This,
   1265         HKL hKL,
   1266         UINT nItem,
   1267         STYLEBUFA *pStyleBuf,
   1268         UINT *puCopied);
   1269 
   1270     HRESULT (STDMETHODCALLTYPE *GetRegisterWordStyleW)(
   1271         IActiveIMMApp* This,
   1272         HKL hKL,
   1273         UINT nItem,
   1274         STYLEBUFW *pStyleBuf,
   1275         UINT *puCopied);
   1276 
   1277     HRESULT (STDMETHODCALLTYPE *GetStatusWindowPos)(
   1278         IActiveIMMApp* This,
   1279         HIMC hIMC,
   1280         POINT *pptPos);
   1281 
   1282     HRESULT (STDMETHODCALLTYPE *GetVirtualKey)(
   1283         IActiveIMMApp* This,
   1284         HWND hWnd,
   1285         UINT *puVirtualKey);
   1286 
   1287     HRESULT (STDMETHODCALLTYPE *InstallIMEA)(
   1288         IActiveIMMApp* This,
   1289         LPSTR szIMEFileName,
   1290         LPSTR szLayoutText,
   1291         HKL *phKL);
   1292 
   1293     HRESULT (STDMETHODCALLTYPE *InstallIMEW)(
   1294         IActiveIMMApp* This,
   1295         LPWSTR szIMEFileName,
   1296         LPWSTR szLayoutText,
   1297         HKL *phKL);
   1298 
   1299     HRESULT (STDMETHODCALLTYPE *IsIME)(
   1300         IActiveIMMApp* This,
   1301         HKL hKL);
   1302 
   1303     HRESULT (STDMETHODCALLTYPE *IsUIMessageA)(
   1304         IActiveIMMApp* This,
   1305         HWND hWndIME,
   1306         UINT msg,
   1307         WPARAM wParam,
   1308         LPARAM lParam);
   1309 
   1310     HRESULT (STDMETHODCALLTYPE *IsUIMessageW)(
   1311         IActiveIMMApp* This,
   1312         HWND hWndIME,
   1313         UINT msg,
   1314         WPARAM wParam,
   1315         LPARAM lParam);
   1316 
   1317     HRESULT (STDMETHODCALLTYPE *NotifyIME)(
   1318         IActiveIMMApp* This,
   1319         HIMC hIMC,
   1320         DWORD dwAction,
   1321         DWORD dwIndex,
   1322         DWORD dwValue);
   1323 
   1324     HRESULT (STDMETHODCALLTYPE *RegisterWordA)(
   1325         IActiveIMMApp* This,
   1326         HKL hKL,
   1327         LPSTR szReading,
   1328         DWORD dwStyle,
   1329         LPSTR szRegister);
   1330 
   1331     HRESULT (STDMETHODCALLTYPE *RegisterWordW)(
   1332         IActiveIMMApp* This,
   1333         HKL hKL,
   1334         LPWSTR szReading,
   1335         DWORD dwStyle,
   1336         LPWSTR szRegister);
   1337 
   1338     HRESULT (STDMETHODCALLTYPE *ReleaseContext)(
   1339         IActiveIMMApp* This,
   1340         HWND hWnd,
   1341         HIMC hIMC);
   1342 
   1343     HRESULT (STDMETHODCALLTYPE *SetCandidateWindow)(
   1344         IActiveIMMApp* This,
   1345         HIMC hIMC,
   1346         CANDIDATEFORM *pCandidate);
   1347 
   1348     HRESULT (STDMETHODCALLTYPE *SetCompositionFontA)(
   1349         IActiveIMMApp* This,
   1350         HIMC hIMC,
   1351         LOGFONTA *plf);
   1352 
   1353     HRESULT (STDMETHODCALLTYPE *SetCompositionFontW)(
   1354         IActiveIMMApp* This,
   1355         HIMC hIMC,
   1356         LOGFONTW *plf);
   1357 
   1358     HRESULT (STDMETHODCALLTYPE *SetCompositionStringA)(
   1359         IActiveIMMApp* This,
   1360         HIMC hIMC,
   1361         DWORD dwIndex,
   1362         LPVOID pComp,
   1363         DWORD dwCompLen,
   1364         LPVOID pRead,
   1365         DWORD dwReadLen);
   1366 
   1367     HRESULT (STDMETHODCALLTYPE *SetCompositionStringW)(
   1368         IActiveIMMApp* This,
   1369         HIMC hIMC,
   1370         DWORD dwIndex,
   1371         LPVOID pComp,
   1372         DWORD dwCompLen,
   1373         LPVOID pRead,
   1374         DWORD dwReadLen);
   1375 
   1376     HRESULT (STDMETHODCALLTYPE *SetCompositionWindow)(
   1377         IActiveIMMApp* This,
   1378         HIMC hIMC,
   1379         COMPOSITIONFORM *pCompForm);
   1380 
   1381     HRESULT (STDMETHODCALLTYPE *SetConversionStatus)(
   1382         IActiveIMMApp* This,
   1383         HIMC hIMC,
   1384         DWORD fdwConversion,
   1385         DWORD fdwSentence);
   1386 
   1387     HRESULT (STDMETHODCALLTYPE *SetOpenStatus)(
   1388         IActiveIMMApp* This,
   1389         HIMC hIMC,
   1390         WINBOOL fOpen);
   1391 
   1392     HRESULT (STDMETHODCALLTYPE *SetStatusWindowPos)(
   1393         IActiveIMMApp* This,
   1394         HIMC hIMC,
   1395         POINT *pptPos);
   1396 
   1397     HRESULT (STDMETHODCALLTYPE *SimulateHotKey)(
   1398         IActiveIMMApp* This,
   1399         HWND hWnd,
   1400         DWORD dwHotKeyID);
   1401 
   1402     HRESULT (STDMETHODCALLTYPE *UnregisterWordA)(
   1403         IActiveIMMApp* This,
   1404         HKL hKL,
   1405         LPSTR szReading,
   1406         DWORD dwStyle,
   1407         LPSTR szUnregister);
   1408 
   1409     HRESULT (STDMETHODCALLTYPE *UnregisterWordW)(
   1410         IActiveIMMApp* This,
   1411         HKL hKL,
   1412         LPWSTR szReading,
   1413         DWORD dwStyle,
   1414         LPWSTR szUnregister);
   1415 
   1416     HRESULT (STDMETHODCALLTYPE *Activate)(
   1417         IActiveIMMApp* This,
   1418         WINBOOL fRestoreLayout);
   1419 
   1420     HRESULT (STDMETHODCALLTYPE *Deactivate)(
   1421         IActiveIMMApp* This);
   1422 
   1423     HRESULT (STDMETHODCALLTYPE *OnDefWindowProc)(
   1424         IActiveIMMApp* This,
   1425         HWND hWnd,
   1426         UINT Msg,
   1427         WPARAM wParam,
   1428         LPARAM lParam,
   1429         LRESULT *plResult);
   1430 
   1431     HRESULT (STDMETHODCALLTYPE *FilterClientWindows)(
   1432         IActiveIMMApp* This,
   1433         ATOM *aaClassList,
   1434         UINT uSize);
   1435 
   1436     HRESULT (STDMETHODCALLTYPE *GetCodePageA)(
   1437         IActiveIMMApp* This,
   1438         HKL hKL,
   1439         UINT *uCodePage);
   1440 
   1441     HRESULT (STDMETHODCALLTYPE *GetLangId)(
   1442         IActiveIMMApp* This,
   1443         HKL hKL,
   1444         LANGID *plid);
   1445 
   1446     HRESULT (STDMETHODCALLTYPE *AssociateContextEx)(
   1447         IActiveIMMApp* This,
   1448         HWND hWnd,
   1449         HIMC hIMC,
   1450         DWORD dwFlags);
   1451 
   1452     HRESULT (STDMETHODCALLTYPE *DisableIME)(
   1453         IActiveIMMApp* This,
   1454         DWORD idThread);
   1455 
   1456     HRESULT (STDMETHODCALLTYPE *GetImeMenuItemsA)(
   1457         IActiveIMMApp* This,
   1458         HIMC hIMC,
   1459         DWORD dwFlags,
   1460         DWORD dwType,
   1461         IMEMENUITEMINFOA *pImeParentMenu,
   1462         IMEMENUITEMINFOA *pImeMenu,
   1463         DWORD dwSize,
   1464         DWORD *pdwResult);
   1465 
   1466     HRESULT (STDMETHODCALLTYPE *GetImeMenuItemsW)(
   1467         IActiveIMMApp* This,
   1468         HIMC hIMC,
   1469         DWORD dwFlags,
   1470         DWORD dwType,
   1471         IMEMENUITEMINFOW *pImeParentMenu,
   1472         IMEMENUITEMINFOW *pImeMenu,
   1473         DWORD dwSize,
   1474         DWORD *pdwResult);
   1475 
   1476     HRESULT (STDMETHODCALLTYPE *EnumInputContext)(
   1477         IActiveIMMApp* This,
   1478         DWORD idThread,
   1479         IEnumInputContext **ppEnum);
   1480 
   1481     END_INTERFACE
   1482 } IActiveIMMAppVtbl;
   1483 interface IActiveIMMApp {
   1484     CONST_VTBL IActiveIMMAppVtbl* lpVtbl;
   1485 };
   1486 
   1487 #ifdef COBJMACROS
   1488 #ifndef WIDL_C_INLINE_WRAPPERS
   1489 /*** IUnknown methods ***/
   1490 #define IActiveIMMApp_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
   1491 #define IActiveIMMApp_AddRef(This) (This)->lpVtbl->AddRef(This)
   1492 #define IActiveIMMApp_Release(This) (This)->lpVtbl->Release(This)
   1493 /*** IActiveIMMApp methods ***/
   1494 #define IActiveIMMApp_AssociateContext(This,hWnd,hIME,phPrev) (This)->lpVtbl->AssociateContext(This,hWnd,hIME,phPrev)
   1495 #define IActiveIMMApp_ConfigureIMEA(This,hKL,hWnd,dwMode,pData) (This)->lpVtbl->ConfigureIMEA(This,hKL,hWnd,dwMode,pData)
   1496 #define IActiveIMMApp_ConfigureIMEW(This,hKL,hWnd,dwMode,pData) (This)->lpVtbl->ConfigureIMEW(This,hKL,hWnd,dwMode,pData)
   1497 #define IActiveIMMApp_CreateContext(This,phIMC) (This)->lpVtbl->CreateContext(This,phIMC)
   1498 #define IActiveIMMApp_DestroyContext(This,hIME) (This)->lpVtbl->DestroyContext(This,hIME)
   1499 #define IActiveIMMApp_EnumRegisterWordA(This,hKL,szReading,dwStyle,szRegister,pData,pEnum) (This)->lpVtbl->EnumRegisterWordA(This,hKL,szReading,dwStyle,szRegister,pData,pEnum)
   1500 #define IActiveIMMApp_EnumRegisterWordW(This,hKL,szReading,dwStyle,szRegister,pData,pEnum) (This)->lpVtbl->EnumRegisterWordW(This,hKL,szReading,dwStyle,szRegister,pData,pEnum)
   1501 #define IActiveIMMApp_EscapeA(This,hKL,hIMC,uEscape,pData,plResult) (This)->lpVtbl->EscapeA(This,hKL,hIMC,uEscape,pData,plResult)
   1502 #define IActiveIMMApp_EscapeW(This,hKL,hIMC,uEscape,pData,plResult) (This)->lpVtbl->EscapeW(This,hKL,hIMC,uEscape,pData,plResult)
   1503 #define IActiveIMMApp_GetCandidateListA(This,hIMC,dwIndex,uBufLen,pCandList,puCopied) (This)->lpVtbl->GetCandidateListA(This,hIMC,dwIndex,uBufLen,pCandList,puCopied)
   1504 #define IActiveIMMApp_GetCandidateListW(This,hIMC,dwIndex,uBufLen,pCandList,puCopied) (This)->lpVtbl->GetCandidateListW(This,hIMC,dwIndex,uBufLen,pCandList,puCopied)
   1505 #define IActiveIMMApp_GetCandidateListCountA(This,hIMC,pdwListSize,pdwBufLen) (This)->lpVtbl->GetCandidateListCountA(This,hIMC,pdwListSize,pdwBufLen)
   1506 #define IActiveIMMApp_GetCandidateListCountW(This,hIMC,pdwListSize,pdwBufLen) (This)->lpVtbl->GetCandidateListCountW(This,hIMC,pdwListSize,pdwBufLen)
   1507 #define IActiveIMMApp_GetCandidateWindow(This,hIMC,dwIndex,pCandidate) (This)->lpVtbl->GetCandidateWindow(This,hIMC,dwIndex,pCandidate)
   1508 #define IActiveIMMApp_GetCompositionFontA(This,hIMC,plf) (This)->lpVtbl->GetCompositionFontA(This,hIMC,plf)
   1509 #define IActiveIMMApp_GetCompositionFontW(This,hIMC,plf) (This)->lpVtbl->GetCompositionFontW(This,hIMC,plf)
   1510 #define IActiveIMMApp_GetCompositionStringA(This,hIMC,dwIndex,dwBufLen,plCopied,pBuf) (This)->lpVtbl->GetCompositionStringA(This,hIMC,dwIndex,dwBufLen,plCopied,pBuf)
   1511 #define IActiveIMMApp_GetCompositionStringW(This,hIMC,dwIndex,dwBufLen,plCopied,pBuf) (This)->lpVtbl->GetCompositionStringW(This,hIMC,dwIndex,dwBufLen,plCopied,pBuf)
   1512 #define IActiveIMMApp_GetCompositionWindow(This,hIMC,pCompForm) (This)->lpVtbl->GetCompositionWindow(This,hIMC,pCompForm)
   1513 #define IActiveIMMApp_GetContext(This,hWnd,phIMC) (This)->lpVtbl->GetContext(This,hWnd,phIMC)
   1514 #define IActiveIMMApp_GetConversionListA(This,hKL,hIMC,pSrc,uBufLen,uFlag,pDst,puCopied) (This)->lpVtbl->GetConversionListA(This,hKL,hIMC,pSrc,uBufLen,uFlag,pDst,puCopied)
   1515 #define IActiveIMMApp_GetConversionListW(This,hKL,hIMC,pSrc,uBufLen,uFlag,pDst,puCopied) (This)->lpVtbl->GetConversionListW(This,hKL,hIMC,pSrc,uBufLen,uFlag,pDst,puCopied)
   1516 #define IActiveIMMApp_GetConversionStatus(This,hIMC,pfdwConversion,pfdwSentence) (This)->lpVtbl->GetConversionStatus(This,hIMC,pfdwConversion,pfdwSentence)
   1517 #define IActiveIMMApp_GetDefaultIMEWnd(This,hWnd,phDefWnd) (This)->lpVtbl->GetDefaultIMEWnd(This,hWnd,phDefWnd)
   1518 #define IActiveIMMApp_GetDescriptionA(This,hKL,uBufLen,szDescription,puCopied) (This)->lpVtbl->GetDescriptionA(This,hKL,uBufLen,szDescription,puCopied)
   1519 #define IActiveIMMApp_GetDescriptionW(This,hKL,uBufLen,szDescription,puCopied) (This)->lpVtbl->GetDescriptionW(This,hKL,uBufLen,szDescription,puCopied)
   1520 #define IActiveIMMApp_GetGuideLineA(This,hIMC,dwIndex,dwBufLen,pBuf,pdwResult) (This)->lpVtbl->GetGuideLineA(This,hIMC,dwIndex,dwBufLen,pBuf,pdwResult)
   1521 #define IActiveIMMApp_GetGuideLineW(This,hIMC,dwIndex,dwBufLen,pBuf,pdwResult) (This)->lpVtbl->GetGuideLineW(This,hIMC,dwIndex,dwBufLen,pBuf,pdwResult)
   1522 #define IActiveIMMApp_GetIMEFileNameA(This,hKL,uBufLen,szFileName,puCopied) (This)->lpVtbl->GetIMEFileNameA(This,hKL,uBufLen,szFileName,puCopied)
   1523 #define IActiveIMMApp_GetIMEFileNameW(This,hKL,uBufLen,szFileName,puCopied) (This)->lpVtbl->GetIMEFileNameW(This,hKL,uBufLen,szFileName,puCopied)
   1524 #define IActiveIMMApp_GetOpenStatus(This,hIMC) (This)->lpVtbl->GetOpenStatus(This,hIMC)
   1525 #define IActiveIMMApp_GetProperty(This,hKL,fdwIndex,pdwProperty) (This)->lpVtbl->GetProperty(This,hKL,fdwIndex,pdwProperty)
   1526 #define IActiveIMMApp_GetRegisterWordStyleA(This,hKL,nItem,pStyleBuf,puCopied) (This)->lpVtbl->GetRegisterWordStyleA(This,hKL,nItem,pStyleBuf,puCopied)
   1527 #define IActiveIMMApp_GetRegisterWordStyleW(This,hKL,nItem,pStyleBuf,puCopied) (This)->lpVtbl->GetRegisterWordStyleW(This,hKL,nItem,pStyleBuf,puCopied)
   1528 #define IActiveIMMApp_GetStatusWindowPos(This,hIMC,pptPos) (This)->lpVtbl->GetStatusWindowPos(This,hIMC,pptPos)
   1529 #define IActiveIMMApp_GetVirtualKey(This,hWnd,puVirtualKey) (This)->lpVtbl->GetVirtualKey(This,hWnd,puVirtualKey)
   1530 #define IActiveIMMApp_InstallIMEA(This,szIMEFileName,szLayoutText,phKL) (This)->lpVtbl->InstallIMEA(This,szIMEFileName,szLayoutText,phKL)
   1531 #define IActiveIMMApp_InstallIMEW(This,szIMEFileName,szLayoutText,phKL) (This)->lpVtbl->InstallIMEW(This,szIMEFileName,szLayoutText,phKL)
   1532 #define IActiveIMMApp_IsIME(This,hKL) (This)->lpVtbl->IsIME(This,hKL)
   1533 #define IActiveIMMApp_IsUIMessageA(This,hWndIME,msg,wParam,lParam) (This)->lpVtbl->IsUIMessageA(This,hWndIME,msg,wParam,lParam)
   1534 #define IActiveIMMApp_IsUIMessageW(This,hWndIME,msg,wParam,lParam) (This)->lpVtbl->IsUIMessageW(This,hWndIME,msg,wParam,lParam)
   1535 #define IActiveIMMApp_NotifyIME(This,hIMC,dwAction,dwIndex,dwValue) (This)->lpVtbl->NotifyIME(This,hIMC,dwAction,dwIndex,dwValue)
   1536 #define IActiveIMMApp_RegisterWordA(This,hKL,szReading,dwStyle,szRegister) (This)->lpVtbl->RegisterWordA(This,hKL,szReading,dwStyle,szRegister)
   1537 #define IActiveIMMApp_RegisterWordW(This,hKL,szReading,dwStyle,szRegister) (This)->lpVtbl->RegisterWordW(This,hKL,szReading,dwStyle,szRegister)
   1538 #define IActiveIMMApp_ReleaseContext(This,hWnd,hIMC) (This)->lpVtbl->ReleaseContext(This,hWnd,hIMC)
   1539 #define IActiveIMMApp_SetCandidateWindow(This,hIMC,pCandidate) (This)->lpVtbl->SetCandidateWindow(This,hIMC,pCandidate)
   1540 #define IActiveIMMApp_SetCompositionFontA(This,hIMC,plf) (This)->lpVtbl->SetCompositionFontA(This,hIMC,plf)
   1541 #define IActiveIMMApp_SetCompositionFontW(This,hIMC,plf) (This)->lpVtbl->SetCompositionFontW(This,hIMC,plf)
   1542 #define IActiveIMMApp_SetCompositionStringA(This,hIMC,dwIndex,pComp,dwCompLen,pRead,dwReadLen) (This)->lpVtbl->SetCompositionStringA(This,hIMC,dwIndex,pComp,dwCompLen,pRead,dwReadLen)
   1543 #define IActiveIMMApp_SetCompositionStringW(This,hIMC,dwIndex,pComp,dwCompLen,pRead,dwReadLen) (This)->lpVtbl->SetCompositionStringW(This,hIMC,dwIndex,pComp,dwCompLen,pRead,dwReadLen)
   1544 #define IActiveIMMApp_SetCompositionWindow(This,hIMC,pCompForm) (This)->lpVtbl->SetCompositionWindow(This,hIMC,pCompForm)
   1545 #define IActiveIMMApp_SetConversionStatus(This,hIMC,fdwConversion,fdwSentence) (This)->lpVtbl->SetConversionStatus(This,hIMC,fdwConversion,fdwSentence)
   1546 #define IActiveIMMApp_SetOpenStatus(This,hIMC,fOpen) (This)->lpVtbl->SetOpenStatus(This,hIMC,fOpen)
   1547 #define IActiveIMMApp_SetStatusWindowPos(This,hIMC,pptPos) (This)->lpVtbl->SetStatusWindowPos(This,hIMC,pptPos)
   1548 #define IActiveIMMApp_SimulateHotKey(This,hWnd,dwHotKeyID) (This)->lpVtbl->SimulateHotKey(This,hWnd,dwHotKeyID)
   1549 #define IActiveIMMApp_UnregisterWordA(This,hKL,szReading,dwStyle,szUnregister) (This)->lpVtbl->UnregisterWordA(This,hKL,szReading,dwStyle,szUnregister)
   1550 #define IActiveIMMApp_UnregisterWordW(This,hKL,szReading,dwStyle,szUnregister) (This)->lpVtbl->UnregisterWordW(This,hKL,szReading,dwStyle,szUnregister)
   1551 #define IActiveIMMApp_Activate(This,fRestoreLayout) (This)->lpVtbl->Activate(This,fRestoreLayout)
   1552 #define IActiveIMMApp_Deactivate(This) (This)->lpVtbl->Deactivate(This)
   1553 #define IActiveIMMApp_OnDefWindowProc(This,hWnd,Msg,wParam,lParam,plResult) (This)->lpVtbl->OnDefWindowProc(This,hWnd,Msg,wParam,lParam,plResult)
   1554 #define IActiveIMMApp_FilterClientWindows(This,aaClassList,uSize) (This)->lpVtbl->FilterClientWindows(This,aaClassList,uSize)
   1555 #define IActiveIMMApp_GetCodePageA(This,hKL,uCodePage) (This)->lpVtbl->GetCodePageA(This,hKL,uCodePage)
   1556 #define IActiveIMMApp_GetLangId(This,hKL,plid) (This)->lpVtbl->GetLangId(This,hKL,plid)
   1557 #define IActiveIMMApp_AssociateContextEx(This,hWnd,hIMC,dwFlags) (This)->lpVtbl->AssociateContextEx(This,hWnd,hIMC,dwFlags)
   1558 #define IActiveIMMApp_DisableIME(This,idThread) (This)->lpVtbl->DisableIME(This,idThread)
   1559 #define IActiveIMMApp_GetImeMenuItemsA(This,hIMC,dwFlags,dwType,pImeParentMenu,pImeMenu,dwSize,pdwResult) (This)->lpVtbl->GetImeMenuItemsA(This,hIMC,dwFlags,dwType,pImeParentMenu,pImeMenu,dwSize,pdwResult)
   1560 #define IActiveIMMApp_GetImeMenuItemsW(This,hIMC,dwFlags,dwType,pImeParentMenu,pImeMenu,dwSize,pdwResult) (This)->lpVtbl->GetImeMenuItemsW(This,hIMC,dwFlags,dwType,pImeParentMenu,pImeMenu,dwSize,pdwResult)
   1561 #define IActiveIMMApp_EnumInputContext(This,idThread,ppEnum) (This)->lpVtbl->EnumInputContext(This,idThread,ppEnum)
   1562 #else
   1563 /*** IUnknown methods ***/
   1564 static FORCEINLINE HRESULT IActiveIMMApp_QueryInterface(IActiveIMMApp* This,REFIID riid,void **ppvObject) {
   1565     return This->lpVtbl->QueryInterface(This,riid,ppvObject);
   1566 }
   1567 static FORCEINLINE ULONG IActiveIMMApp_AddRef(IActiveIMMApp* This) {
   1568     return This->lpVtbl->AddRef(This);
   1569 }
   1570 static FORCEINLINE ULONG IActiveIMMApp_Release(IActiveIMMApp* This) {
   1571     return This->lpVtbl->Release(This);
   1572 }
   1573 /*** IActiveIMMApp methods ***/
   1574 static FORCEINLINE HRESULT IActiveIMMApp_AssociateContext(IActiveIMMApp* This,HWND hWnd,HIMC hIME,HIMC *phPrev) {
   1575     return This->lpVtbl->AssociateContext(This,hWnd,hIME,phPrev);
   1576 }
   1577 static FORCEINLINE HRESULT IActiveIMMApp_ConfigureIMEA(IActiveIMMApp* This,HKL hKL,HWND hWnd,DWORD dwMode,REGISTERWORDA *pData) {
   1578     return This->lpVtbl->ConfigureIMEA(This,hKL,hWnd,dwMode,pData);
   1579 }
   1580 static FORCEINLINE HRESULT IActiveIMMApp_ConfigureIMEW(IActiveIMMApp* This,HKL hKL,HWND hWnd,DWORD dwMode,REGISTERWORDW *pData) {
   1581     return This->lpVtbl->ConfigureIMEW(This,hKL,hWnd,dwMode,pData);
   1582 }
   1583 static FORCEINLINE HRESULT IActiveIMMApp_CreateContext(IActiveIMMApp* This,HIMC *phIMC) {
   1584     return This->lpVtbl->CreateContext(This,phIMC);
   1585 }
   1586 static FORCEINLINE HRESULT IActiveIMMApp_DestroyContext(IActiveIMMApp* This,HIMC hIME) {
   1587     return This->lpVtbl->DestroyContext(This,hIME);
   1588 }
   1589 static FORCEINLINE HRESULT IActiveIMMApp_EnumRegisterWordA(IActiveIMMApp* This,HKL hKL,LPSTR szReading,DWORD dwStyle,LPSTR szRegister,LPVOID pData,IEnumRegisterWordA **pEnum) {
   1590     return This->lpVtbl->EnumRegisterWordA(This,hKL,szReading,dwStyle,szRegister,pData,pEnum);
   1591 }
   1592 static FORCEINLINE HRESULT IActiveIMMApp_EnumRegisterWordW(IActiveIMMApp* This,HKL hKL,LPWSTR szReading,DWORD dwStyle,LPWSTR szRegister,LPVOID pData,IEnumRegisterWordW **pEnum) {
   1593     return This->lpVtbl->EnumRegisterWordW(This,hKL,szReading,dwStyle,szRegister,pData,pEnum);
   1594 }
   1595 static FORCEINLINE HRESULT IActiveIMMApp_EscapeA(IActiveIMMApp* This,HKL hKL,HIMC hIMC,UINT uEscape,LPVOID pData,LRESULT *plResult) {
   1596     return This->lpVtbl->EscapeA(This,hKL,hIMC,uEscape,pData,plResult);
   1597 }
   1598 static FORCEINLINE HRESULT IActiveIMMApp_EscapeW(IActiveIMMApp* This,HKL hKL,HIMC hIMC,UINT uEscape,LPVOID pData,LRESULT *plResult) {
   1599     return This->lpVtbl->EscapeW(This,hKL,hIMC,uEscape,pData,plResult);
   1600 }
   1601 static FORCEINLINE HRESULT IActiveIMMApp_GetCandidateListA(IActiveIMMApp* This,HIMC hIMC,DWORD dwIndex,UINT uBufLen,CANDIDATELIST *pCandList,UINT *puCopied) {
   1602     return This->lpVtbl->GetCandidateListA(This,hIMC,dwIndex,uBufLen,pCandList,puCopied);
   1603 }
   1604 static FORCEINLINE HRESULT IActiveIMMApp_GetCandidateListW(IActiveIMMApp* This,HIMC hIMC,DWORD dwIndex,UINT uBufLen,CANDIDATELIST *pCandList,UINT *puCopied) {
   1605     return This->lpVtbl->GetCandidateListW(This,hIMC,dwIndex,uBufLen,pCandList,puCopied);
   1606 }
   1607 static FORCEINLINE HRESULT IActiveIMMApp_GetCandidateListCountA(IActiveIMMApp* This,HIMC hIMC,DWORD *pdwListSize,DWORD *pdwBufLen) {
   1608     return This->lpVtbl->GetCandidateListCountA(This,hIMC,pdwListSize,pdwBufLen);
   1609 }
   1610 static FORCEINLINE HRESULT IActiveIMMApp_GetCandidateListCountW(IActiveIMMApp* This,HIMC hIMC,DWORD *pdwListSize,DWORD *pdwBufLen) {
   1611     return This->lpVtbl->GetCandidateListCountW(This,hIMC,pdwListSize,pdwBufLen);
   1612 }
   1613 static FORCEINLINE HRESULT IActiveIMMApp_GetCandidateWindow(IActiveIMMApp* This,HIMC hIMC,DWORD dwIndex,CANDIDATEFORM *pCandidate) {
   1614     return This->lpVtbl->GetCandidateWindow(This,hIMC,dwIndex,pCandidate);
   1615 }
   1616 static FORCEINLINE HRESULT IActiveIMMApp_GetCompositionFontA(IActiveIMMApp* This,HIMC hIMC,LOGFONTA *plf) {
   1617     return This->lpVtbl->GetCompositionFontA(This,hIMC,plf);
   1618 }
   1619 static FORCEINLINE HRESULT IActiveIMMApp_GetCompositionFontW(IActiveIMMApp* This,HIMC hIMC,LOGFONTW *plf) {
   1620     return This->lpVtbl->GetCompositionFontW(This,hIMC,plf);
   1621 }
   1622 static FORCEINLINE HRESULT IActiveIMMApp_GetCompositionStringA(IActiveIMMApp* This,HIMC hIMC,DWORD dwIndex,DWORD dwBufLen,LONG *plCopied,LPVOID pBuf) {
   1623     return This->lpVtbl->GetCompositionStringA(This,hIMC,dwIndex,dwBufLen,plCopied,pBuf);
   1624 }
   1625 static FORCEINLINE HRESULT IActiveIMMApp_GetCompositionStringW(IActiveIMMApp* This,HIMC hIMC,DWORD dwIndex,DWORD dwBufLen,LONG *plCopied,LPVOID pBuf) {
   1626     return This->lpVtbl->GetCompositionStringW(This,hIMC,dwIndex,dwBufLen,plCopied,pBuf);
   1627 }
   1628 static FORCEINLINE HRESULT IActiveIMMApp_GetCompositionWindow(IActiveIMMApp* This,HIMC hIMC,COMPOSITIONFORM *pCompForm) {
   1629     return This->lpVtbl->GetCompositionWindow(This,hIMC,pCompForm);
   1630 }
   1631 static FORCEINLINE HRESULT IActiveIMMApp_GetContext(IActiveIMMApp* This,HWND hWnd,HIMC *phIMC) {
   1632     return This->lpVtbl->GetContext(This,hWnd,phIMC);
   1633 }
   1634 static FORCEINLINE HRESULT IActiveIMMApp_GetConversionListA(IActiveIMMApp* This,HKL hKL,HIMC hIMC,LPSTR pSrc,UINT uBufLen,UINT uFlag,CANDIDATELIST *pDst,UINT *puCopied) {
   1635     return This->lpVtbl->GetConversionListA(This,hKL,hIMC,pSrc,uBufLen,uFlag,pDst,puCopied);
   1636 }
   1637 static FORCEINLINE HRESULT IActiveIMMApp_GetConversionListW(IActiveIMMApp* This,HKL hKL,HIMC hIMC,LPWSTR pSrc,UINT uBufLen,UINT uFlag,CANDIDATELIST *pDst,UINT *puCopied) {
   1638     return This->lpVtbl->GetConversionListW(This,hKL,hIMC,pSrc,uBufLen,uFlag,pDst,puCopied);
   1639 }
   1640 static FORCEINLINE HRESULT IActiveIMMApp_GetConversionStatus(IActiveIMMApp* This,HIMC hIMC,DWORD *pfdwConversion,DWORD *pfdwSentence) {
   1641     return This->lpVtbl->GetConversionStatus(This,hIMC,pfdwConversion,pfdwSentence);
   1642 }
   1643 static FORCEINLINE HRESULT IActiveIMMApp_GetDefaultIMEWnd(IActiveIMMApp* This,HWND hWnd,HWND *phDefWnd) {
   1644     return This->lpVtbl->GetDefaultIMEWnd(This,hWnd,phDefWnd);
   1645 }
   1646 static FORCEINLINE HRESULT IActiveIMMApp_GetDescriptionA(IActiveIMMApp* This,HKL hKL,UINT uBufLen,LPSTR szDescription,UINT *puCopied) {
   1647     return This->lpVtbl->GetDescriptionA(This,hKL,uBufLen,szDescription,puCopied);
   1648 }
   1649 static FORCEINLINE HRESULT IActiveIMMApp_GetDescriptionW(IActiveIMMApp* This,HKL hKL,UINT uBufLen,LPWSTR szDescription,UINT *puCopied) {
   1650     return This->lpVtbl->GetDescriptionW(This,hKL,uBufLen,szDescription,puCopied);
   1651 }
   1652 static FORCEINLINE HRESULT IActiveIMMApp_GetGuideLineA(IActiveIMMApp* This,HIMC hIMC,DWORD dwIndex,DWORD dwBufLen,LPSTR pBuf,DWORD *pdwResult) {
   1653     return This->lpVtbl->GetGuideLineA(This,hIMC,dwIndex,dwBufLen,pBuf,pdwResult);
   1654 }
   1655 static FORCEINLINE HRESULT IActiveIMMApp_GetGuideLineW(IActiveIMMApp* This,HIMC hIMC,DWORD dwIndex,DWORD dwBufLen,LPWSTR pBuf,DWORD *pdwResult) {
   1656     return This->lpVtbl->GetGuideLineW(This,hIMC,dwIndex,dwBufLen,pBuf,pdwResult);
   1657 }
   1658 static FORCEINLINE HRESULT IActiveIMMApp_GetIMEFileNameA(IActiveIMMApp* This,HKL hKL,UINT uBufLen,LPSTR szFileName,UINT *puCopied) {
   1659     return This->lpVtbl->GetIMEFileNameA(This,hKL,uBufLen,szFileName,puCopied);
   1660 }
   1661 static FORCEINLINE HRESULT IActiveIMMApp_GetIMEFileNameW(IActiveIMMApp* This,HKL hKL,UINT uBufLen,LPWSTR szFileName,UINT *puCopied) {
   1662     return This->lpVtbl->GetIMEFileNameW(This,hKL,uBufLen,szFileName,puCopied);
   1663 }
   1664 static FORCEINLINE HRESULT IActiveIMMApp_GetOpenStatus(IActiveIMMApp* This,HIMC hIMC) {
   1665     return This->lpVtbl->GetOpenStatus(This,hIMC);
   1666 }
   1667 static FORCEINLINE HRESULT IActiveIMMApp_GetProperty(IActiveIMMApp* This,HKL hKL,DWORD fdwIndex,DWORD *pdwProperty) {
   1668     return This->lpVtbl->GetProperty(This,hKL,fdwIndex,pdwProperty);
   1669 }
   1670 static FORCEINLINE HRESULT IActiveIMMApp_GetRegisterWordStyleA(IActiveIMMApp* This,HKL hKL,UINT nItem,STYLEBUFA *pStyleBuf,UINT *puCopied) {
   1671     return This->lpVtbl->GetRegisterWordStyleA(This,hKL,nItem,pStyleBuf,puCopied);
   1672 }
   1673 static FORCEINLINE HRESULT IActiveIMMApp_GetRegisterWordStyleW(IActiveIMMApp* This,HKL hKL,UINT nItem,STYLEBUFW *pStyleBuf,UINT *puCopied) {
   1674     return This->lpVtbl->GetRegisterWordStyleW(This,hKL,nItem,pStyleBuf,puCopied);
   1675 }
   1676 static FORCEINLINE HRESULT IActiveIMMApp_GetStatusWindowPos(IActiveIMMApp* This,HIMC hIMC,POINT *pptPos) {
   1677     return This->lpVtbl->GetStatusWindowPos(This,hIMC,pptPos);
   1678 }
   1679 static FORCEINLINE HRESULT IActiveIMMApp_GetVirtualKey(IActiveIMMApp* This,HWND hWnd,UINT *puVirtualKey) {
   1680     return This->lpVtbl->GetVirtualKey(This,hWnd,puVirtualKey);
   1681 }
   1682 static FORCEINLINE HRESULT IActiveIMMApp_InstallIMEA(IActiveIMMApp* This,LPSTR szIMEFileName,LPSTR szLayoutText,HKL *phKL) {
   1683     return This->lpVtbl->InstallIMEA(This,szIMEFileName,szLayoutText,phKL);
   1684 }
   1685 static FORCEINLINE HRESULT IActiveIMMApp_InstallIMEW(IActiveIMMApp* This,LPWSTR szIMEFileName,LPWSTR szLayoutText,HKL *phKL) {
   1686     return This->lpVtbl->InstallIMEW(This,szIMEFileName,szLayoutText,phKL);
   1687 }
   1688 static FORCEINLINE HRESULT IActiveIMMApp_IsIME(IActiveIMMApp* This,HKL hKL) {
   1689     return This->lpVtbl->IsIME(This,hKL);
   1690 }
   1691 static FORCEINLINE HRESULT IActiveIMMApp_IsUIMessageA(IActiveIMMApp* This,HWND hWndIME,UINT msg,WPARAM wParam,LPARAM lParam) {
   1692     return This->lpVtbl->IsUIMessageA(This,hWndIME,msg,wParam,lParam);
   1693 }
   1694 static FORCEINLINE HRESULT IActiveIMMApp_IsUIMessageW(IActiveIMMApp* This,HWND hWndIME,UINT msg,WPARAM wParam,LPARAM lParam) {
   1695     return This->lpVtbl->IsUIMessageW(This,hWndIME,msg,wParam,lParam);
   1696 }
   1697 static FORCEINLINE HRESULT IActiveIMMApp_NotifyIME(IActiveIMMApp* This,HIMC hIMC,DWORD dwAction,DWORD dwIndex,DWORD dwValue) {
   1698     return This->lpVtbl->NotifyIME(This,hIMC,dwAction,dwIndex,dwValue);
   1699 }
   1700 static FORCEINLINE HRESULT IActiveIMMApp_RegisterWordA(IActiveIMMApp* This,HKL hKL,LPSTR szReading,DWORD dwStyle,LPSTR szRegister) {
   1701     return This->lpVtbl->RegisterWordA(This,hKL,szReading,dwStyle,szRegister);
   1702 }
   1703 static FORCEINLINE HRESULT IActiveIMMApp_RegisterWordW(IActiveIMMApp* This,HKL hKL,LPWSTR szReading,DWORD dwStyle,LPWSTR szRegister) {
   1704     return This->lpVtbl->RegisterWordW(This,hKL,szReading,dwStyle,szRegister);
   1705 }
   1706 static FORCEINLINE HRESULT IActiveIMMApp_ReleaseContext(IActiveIMMApp* This,HWND hWnd,HIMC hIMC) {
   1707     return This->lpVtbl->ReleaseContext(This,hWnd,hIMC);
   1708 }
   1709 static FORCEINLINE HRESULT IActiveIMMApp_SetCandidateWindow(IActiveIMMApp* This,HIMC hIMC,CANDIDATEFORM *pCandidate) {
   1710     return This->lpVtbl->SetCandidateWindow(This,hIMC,pCandidate);
   1711 }
   1712 static FORCEINLINE HRESULT IActiveIMMApp_SetCompositionFontA(IActiveIMMApp* This,HIMC hIMC,LOGFONTA *plf) {
   1713     return This->lpVtbl->SetCompositionFontA(This,hIMC,plf);
   1714 }
   1715 static FORCEINLINE HRESULT IActiveIMMApp_SetCompositionFontW(IActiveIMMApp* This,HIMC hIMC,LOGFONTW *plf) {
   1716     return This->lpVtbl->SetCompositionFontW(This,hIMC,plf);
   1717 }
   1718 static FORCEINLINE HRESULT IActiveIMMApp_SetCompositionStringA(IActiveIMMApp* This,HIMC hIMC,DWORD dwIndex,LPVOID pComp,DWORD dwCompLen,LPVOID pRead,DWORD dwReadLen) {
   1719     return This->lpVtbl->SetCompositionStringA(This,hIMC,dwIndex,pComp,dwCompLen,pRead,dwReadLen);
   1720 }
   1721 static FORCEINLINE HRESULT IActiveIMMApp_SetCompositionStringW(IActiveIMMApp* This,HIMC hIMC,DWORD dwIndex,LPVOID pComp,DWORD dwCompLen,LPVOID pRead,DWORD dwReadLen) {
   1722     return This->lpVtbl->SetCompositionStringW(This,hIMC,dwIndex,pComp,dwCompLen,pRead,dwReadLen);
   1723 }
   1724 static FORCEINLINE HRESULT IActiveIMMApp_SetCompositionWindow(IActiveIMMApp* This,HIMC hIMC,COMPOSITIONFORM *pCompForm) {
   1725     return This->lpVtbl->SetCompositionWindow(This,hIMC,pCompForm);
   1726 }
   1727 static FORCEINLINE HRESULT IActiveIMMApp_SetConversionStatus(IActiveIMMApp* This,HIMC hIMC,DWORD fdwConversion,DWORD fdwSentence) {
   1728     return This->lpVtbl->SetConversionStatus(This,hIMC,fdwConversion,fdwSentence);
   1729 }
   1730 static FORCEINLINE HRESULT IActiveIMMApp_SetOpenStatus(IActiveIMMApp* This,HIMC hIMC,WINBOOL fOpen) {
   1731     return This->lpVtbl->SetOpenStatus(This,hIMC,fOpen);
   1732 }
   1733 static FORCEINLINE HRESULT IActiveIMMApp_SetStatusWindowPos(IActiveIMMApp* This,HIMC hIMC,POINT *pptPos) {
   1734     return This->lpVtbl->SetStatusWindowPos(This,hIMC,pptPos);
   1735 }
   1736 static FORCEINLINE HRESULT IActiveIMMApp_SimulateHotKey(IActiveIMMApp* This,HWND hWnd,DWORD dwHotKeyID) {
   1737     return This->lpVtbl->SimulateHotKey(This,hWnd,dwHotKeyID);
   1738 }
   1739 static FORCEINLINE HRESULT IActiveIMMApp_UnregisterWordA(IActiveIMMApp* This,HKL hKL,LPSTR szReading,DWORD dwStyle,LPSTR szUnregister) {
   1740     return This->lpVtbl->UnregisterWordA(This,hKL,szReading,dwStyle,szUnregister);
   1741 }
   1742 static FORCEINLINE HRESULT IActiveIMMApp_UnregisterWordW(IActiveIMMApp* This,HKL hKL,LPWSTR szReading,DWORD dwStyle,LPWSTR szUnregister) {
   1743     return This->lpVtbl->UnregisterWordW(This,hKL,szReading,dwStyle,szUnregister);
   1744 }
   1745 static FORCEINLINE HRESULT IActiveIMMApp_Activate(IActiveIMMApp* This,WINBOOL fRestoreLayout) {
   1746     return This->lpVtbl->Activate(This,fRestoreLayout);
   1747 }
   1748 static FORCEINLINE HRESULT IActiveIMMApp_Deactivate(IActiveIMMApp* This) {
   1749     return This->lpVtbl->Deactivate(This);
   1750 }
   1751 static FORCEINLINE HRESULT IActiveIMMApp_OnDefWindowProc(IActiveIMMApp* This,HWND hWnd,UINT Msg,WPARAM wParam,LPARAM lParam,LRESULT *plResult) {
   1752     return This->lpVtbl->OnDefWindowProc(This,hWnd,Msg,wParam,lParam,plResult);
   1753 }
   1754 static FORCEINLINE HRESULT IActiveIMMApp_FilterClientWindows(IActiveIMMApp* This,ATOM *aaClassList,UINT uSize) {
   1755     return This->lpVtbl->FilterClientWindows(This,aaClassList,uSize);
   1756 }
   1757 static FORCEINLINE HRESULT IActiveIMMApp_GetCodePageA(IActiveIMMApp* This,HKL hKL,UINT *uCodePage) {
   1758     return This->lpVtbl->GetCodePageA(This,hKL,uCodePage);
   1759 }
   1760 static FORCEINLINE HRESULT IActiveIMMApp_GetLangId(IActiveIMMApp* This,HKL hKL,LANGID *plid) {
   1761     return This->lpVtbl->GetLangId(This,hKL,plid);
   1762 }
   1763 static FORCEINLINE HRESULT IActiveIMMApp_AssociateContextEx(IActiveIMMApp* This,HWND hWnd,HIMC hIMC,DWORD dwFlags) {
   1764     return This->lpVtbl->AssociateContextEx(This,hWnd,hIMC,dwFlags);
   1765 }
   1766 static FORCEINLINE HRESULT IActiveIMMApp_DisableIME(IActiveIMMApp* This,DWORD idThread) {
   1767     return This->lpVtbl->DisableIME(This,idThread);
   1768 }
   1769 static FORCEINLINE HRESULT IActiveIMMApp_GetImeMenuItemsA(IActiveIMMApp* This,HIMC hIMC,DWORD dwFlags,DWORD dwType,IMEMENUITEMINFOA *pImeParentMenu,IMEMENUITEMINFOA *pImeMenu,DWORD dwSize,DWORD *pdwResult) {
   1770     return This->lpVtbl->GetImeMenuItemsA(This,hIMC,dwFlags,dwType,pImeParentMenu,pImeMenu,dwSize,pdwResult);
   1771 }
   1772 static FORCEINLINE HRESULT IActiveIMMApp_GetImeMenuItemsW(IActiveIMMApp* This,HIMC hIMC,DWORD dwFlags,DWORD dwType,IMEMENUITEMINFOW *pImeParentMenu,IMEMENUITEMINFOW *pImeMenu,DWORD dwSize,DWORD *pdwResult) {
   1773     return This->lpVtbl->GetImeMenuItemsW(This,hIMC,dwFlags,dwType,pImeParentMenu,pImeMenu,dwSize,pdwResult);
   1774 }
   1775 static FORCEINLINE HRESULT IActiveIMMApp_EnumInputContext(IActiveIMMApp* This,DWORD idThread,IEnumInputContext **ppEnum) {
   1776     return This->lpVtbl->EnumInputContext(This,idThread,ppEnum);
   1777 }
   1778 #endif
   1779 #endif
   1780 
   1781 #endif
   1782 
   1783 HRESULT STDMETHODCALLTYPE IActiveIMMApp_AssociateContext_Proxy(
   1784     IActiveIMMApp* This,
   1785     HWND hWnd,
   1786     HIMC hIME,
   1787     HIMC *phPrev);
   1788 void __RPC_STUB IActiveIMMApp_AssociateContext_Stub(
   1789     IRpcStubBuffer* This,
   1790     IRpcChannelBuffer* pRpcChannelBuffer,
   1791     PRPC_MESSAGE pRpcMessage,
   1792     DWORD* pdwStubPhase);
   1793 HRESULT STDMETHODCALLTYPE IActiveIMMApp_ConfigureIMEA_Proxy(
   1794     IActiveIMMApp* This,
   1795     HKL hKL,
   1796     HWND hWnd,
   1797     DWORD dwMode,
   1798     REGISTERWORDA *pData);
   1799 void __RPC_STUB IActiveIMMApp_ConfigureIMEA_Stub(
   1800     IRpcStubBuffer* This,
   1801     IRpcChannelBuffer* pRpcChannelBuffer,
   1802     PRPC_MESSAGE pRpcMessage,
   1803     DWORD* pdwStubPhase);
   1804 HRESULT STDMETHODCALLTYPE IActiveIMMApp_ConfigureIMEW_Proxy(
   1805     IActiveIMMApp* This,
   1806     HKL hKL,
   1807     HWND hWnd,
   1808     DWORD dwMode,
   1809     REGISTERWORDW *pData);
   1810 void __RPC_STUB IActiveIMMApp_ConfigureIMEW_Stub(
   1811     IRpcStubBuffer* This,
   1812     IRpcChannelBuffer* pRpcChannelBuffer,
   1813     PRPC_MESSAGE pRpcMessage,
   1814     DWORD* pdwStubPhase);
   1815 HRESULT STDMETHODCALLTYPE IActiveIMMApp_CreateContext_Proxy(
   1816     IActiveIMMApp* This,
   1817     HIMC *phIMC);
   1818 void __RPC_STUB IActiveIMMApp_CreateContext_Stub(
   1819     IRpcStubBuffer* This,
   1820     IRpcChannelBuffer* pRpcChannelBuffer,
   1821     PRPC_MESSAGE pRpcMessage,
   1822     DWORD* pdwStubPhase);
   1823 HRESULT STDMETHODCALLTYPE IActiveIMMApp_DestroyContext_Proxy(
   1824     IActiveIMMApp* This,
   1825     HIMC hIME);
   1826 void __RPC_STUB IActiveIMMApp_DestroyContext_Stub(
   1827     IRpcStubBuffer* This,
   1828     IRpcChannelBuffer* pRpcChannelBuffer,
   1829     PRPC_MESSAGE pRpcMessage,
   1830     DWORD* pdwStubPhase);
   1831 HRESULT STDMETHODCALLTYPE IActiveIMMApp_EnumRegisterWordA_Proxy(
   1832     IActiveIMMApp* This,
   1833     HKL hKL,
   1834     LPSTR szReading,
   1835     DWORD dwStyle,
   1836     LPSTR szRegister,
   1837     LPVOID pData,
   1838     IEnumRegisterWordA **pEnum);
   1839 void __RPC_STUB IActiveIMMApp_EnumRegisterWordA_Stub(
   1840     IRpcStubBuffer* This,
   1841     IRpcChannelBuffer* pRpcChannelBuffer,
   1842     PRPC_MESSAGE pRpcMessage,
   1843     DWORD* pdwStubPhase);
   1844 HRESULT STDMETHODCALLTYPE IActiveIMMApp_EnumRegisterWordW_Proxy(
   1845     IActiveIMMApp* This,
   1846     HKL hKL,
   1847     LPWSTR szReading,
   1848     DWORD dwStyle,
   1849     LPWSTR szRegister,
   1850     LPVOID pData,
   1851     IEnumRegisterWordW **pEnum);
   1852 void __RPC_STUB IActiveIMMApp_EnumRegisterWordW_Stub(
   1853     IRpcStubBuffer* This,
   1854     IRpcChannelBuffer* pRpcChannelBuffer,
   1855     PRPC_MESSAGE pRpcMessage,
   1856     DWORD* pdwStubPhase);
   1857 HRESULT STDMETHODCALLTYPE IActiveIMMApp_EscapeA_Proxy(
   1858     IActiveIMMApp* This,
   1859     HKL hKL,
   1860     HIMC hIMC,
   1861     UINT uEscape,
   1862     LPVOID pData,
   1863     LRESULT *plResult);
   1864 void __RPC_STUB IActiveIMMApp_EscapeA_Stub(
   1865     IRpcStubBuffer* This,
   1866     IRpcChannelBuffer* pRpcChannelBuffer,
   1867     PRPC_MESSAGE pRpcMessage,
   1868     DWORD* pdwStubPhase);
   1869 HRESULT STDMETHODCALLTYPE IActiveIMMApp_EscapeW_Proxy(
   1870     IActiveIMMApp* This,
   1871     HKL hKL,
   1872     HIMC hIMC,
   1873     UINT uEscape,
   1874     LPVOID pData,
   1875     LRESULT *plResult);
   1876 void __RPC_STUB IActiveIMMApp_EscapeW_Stub(
   1877     IRpcStubBuffer* This,
   1878     IRpcChannelBuffer* pRpcChannelBuffer,
   1879     PRPC_MESSAGE pRpcMessage,
   1880     DWORD* pdwStubPhase);
   1881 HRESULT STDMETHODCALLTYPE IActiveIMMApp_GetCandidateListA_Proxy(
   1882     IActiveIMMApp* This,
   1883     HIMC hIMC,
   1884     DWORD dwIndex,
   1885     UINT uBufLen,
   1886     CANDIDATELIST *pCandList,
   1887     UINT *puCopied);
   1888 void __RPC_STUB IActiveIMMApp_GetCandidateListA_Stub(
   1889     IRpcStubBuffer* This,
   1890     IRpcChannelBuffer* pRpcChannelBuffer,
   1891     PRPC_MESSAGE pRpcMessage,
   1892     DWORD* pdwStubPhase);
   1893 HRESULT STDMETHODCALLTYPE IActiveIMMApp_GetCandidateListW_Proxy(
   1894     IActiveIMMApp* This,
   1895     HIMC hIMC,
   1896     DWORD dwIndex,
   1897     UINT uBufLen,
   1898     CANDIDATELIST *pCandList,
   1899     UINT *puCopied);
   1900 void __RPC_STUB IActiveIMMApp_GetCandidateListW_Stub(
   1901     IRpcStubBuffer* This,
   1902     IRpcChannelBuffer* pRpcChannelBuffer,
   1903     PRPC_MESSAGE pRpcMessage,
   1904     DWORD* pdwStubPhase);
   1905 HRESULT STDMETHODCALLTYPE IActiveIMMApp_GetCandidateListCountA_Proxy(
   1906     IActiveIMMApp* This,
   1907     HIMC hIMC,
   1908     DWORD *pdwListSize,
   1909     DWORD *pdwBufLen);
   1910 void __RPC_STUB IActiveIMMApp_GetCandidateListCountA_Stub(
   1911     IRpcStubBuffer* This,
   1912     IRpcChannelBuffer* pRpcChannelBuffer,
   1913     PRPC_MESSAGE pRpcMessage,
   1914     DWORD* pdwStubPhase);
   1915 HRESULT STDMETHODCALLTYPE IActiveIMMApp_GetCandidateListCountW_Proxy(
   1916     IActiveIMMApp* This,
   1917     HIMC hIMC,
   1918     DWORD *pdwListSize,
   1919     DWORD *pdwBufLen);
   1920 void __RPC_STUB IActiveIMMApp_GetCandidateListCountW_Stub(
   1921     IRpcStubBuffer* This,
   1922     IRpcChannelBuffer* pRpcChannelBuffer,
   1923     PRPC_MESSAGE pRpcMessage,
   1924     DWORD* pdwStubPhase);
   1925 HRESULT STDMETHODCALLTYPE IActiveIMMApp_GetCandidateWindow_Proxy(
   1926     IActiveIMMApp* This,
   1927     HIMC hIMC,
   1928     DWORD dwIndex,
   1929     CANDIDATEFORM *pCandidate);
   1930 void __RPC_STUB IActiveIMMApp_GetCandidateWindow_Stub(
   1931     IRpcStubBuffer* This,
   1932     IRpcChannelBuffer* pRpcChannelBuffer,
   1933     PRPC_MESSAGE pRpcMessage,
   1934     DWORD* pdwStubPhase);
   1935 HRESULT STDMETHODCALLTYPE IActiveIMMApp_GetCompositionFontA_Proxy(
   1936     IActiveIMMApp* This,
   1937     HIMC hIMC,
   1938     LOGFONTA *plf);
   1939 void __RPC_STUB IActiveIMMApp_GetCompositionFontA_Stub(
   1940     IRpcStubBuffer* This,
   1941     IRpcChannelBuffer* pRpcChannelBuffer,
   1942     PRPC_MESSAGE pRpcMessage,
   1943     DWORD* pdwStubPhase);
   1944 HRESULT STDMETHODCALLTYPE IActiveIMMApp_GetCompositionFontW_Proxy(
   1945     IActiveIMMApp* This,
   1946     HIMC hIMC,
   1947     LOGFONTW *plf);
   1948 void __RPC_STUB IActiveIMMApp_GetCompositionFontW_Stub(
   1949     IRpcStubBuffer* This,
   1950     IRpcChannelBuffer* pRpcChannelBuffer,
   1951     PRPC_MESSAGE pRpcMessage,
   1952     DWORD* pdwStubPhase);
   1953 HRESULT STDMETHODCALLTYPE IActiveIMMApp_GetCompositionStringA_Proxy(
   1954     IActiveIMMApp* This,
   1955     HIMC hIMC,
   1956     DWORD dwIndex,
   1957     DWORD dwBufLen,
   1958     LONG *plCopied,
   1959     LPVOID pBuf);
   1960 void __RPC_STUB IActiveIMMApp_GetCompositionStringA_Stub(
   1961     IRpcStubBuffer* This,
   1962     IRpcChannelBuffer* pRpcChannelBuffer,
   1963     PRPC_MESSAGE pRpcMessage,
   1964     DWORD* pdwStubPhase);
   1965 HRESULT STDMETHODCALLTYPE IActiveIMMApp_GetCompositionStringW_Proxy(
   1966     IActiveIMMApp* This,
   1967     HIMC hIMC,
   1968     DWORD dwIndex,
   1969     DWORD dwBufLen,
   1970     LONG *plCopied,
   1971     LPVOID pBuf);
   1972 void __RPC_STUB IActiveIMMApp_GetCompositionStringW_Stub(
   1973     IRpcStubBuffer* This,
   1974     IRpcChannelBuffer* pRpcChannelBuffer,
   1975     PRPC_MESSAGE pRpcMessage,
   1976     DWORD* pdwStubPhase);
   1977 HRESULT STDMETHODCALLTYPE IActiveIMMApp_GetCompositionWindow_Proxy(
   1978     IActiveIMMApp* This,
   1979     HIMC hIMC,
   1980     COMPOSITIONFORM *pCompForm);
   1981 void __RPC_STUB IActiveIMMApp_GetCompositionWindow_Stub(
   1982     IRpcStubBuffer* This,
   1983     IRpcChannelBuffer* pRpcChannelBuffer,
   1984     PRPC_MESSAGE pRpcMessage,
   1985     DWORD* pdwStubPhase);
   1986 HRESULT STDMETHODCALLTYPE IActiveIMMApp_GetContext_Proxy(
   1987     IActiveIMMApp* This,
   1988     HWND hWnd,
   1989     HIMC *phIMC);
   1990 void __RPC_STUB IActiveIMMApp_GetContext_Stub(
   1991     IRpcStubBuffer* This,
   1992     IRpcChannelBuffer* pRpcChannelBuffer,
   1993     PRPC_MESSAGE pRpcMessage,
   1994     DWORD* pdwStubPhase);
   1995 HRESULT STDMETHODCALLTYPE IActiveIMMApp_GetConversionListA_Proxy(
   1996     IActiveIMMApp* This,
   1997     HKL hKL,
   1998     HIMC hIMC,
   1999     LPSTR pSrc,
   2000     UINT uBufLen,
   2001     UINT uFlag,
   2002     CANDIDATELIST *pDst,
   2003     UINT *puCopied);
   2004 void __RPC_STUB IActiveIMMApp_GetConversionListA_Stub(
   2005     IRpcStubBuffer* This,
   2006     IRpcChannelBuffer* pRpcChannelBuffer,
   2007     PRPC_MESSAGE pRpcMessage,
   2008     DWORD* pdwStubPhase);
   2009 HRESULT STDMETHODCALLTYPE IActiveIMMApp_GetConversionListW_Proxy(
   2010     IActiveIMMApp* This,
   2011     HKL hKL,
   2012     HIMC hIMC,
   2013     LPWSTR pSrc,
   2014     UINT uBufLen,
   2015     UINT uFlag,
   2016     CANDIDATELIST *pDst,
   2017     UINT *puCopied);
   2018 void __RPC_STUB IActiveIMMApp_GetConversionListW_Stub(
   2019     IRpcStubBuffer* This,
   2020     IRpcChannelBuffer* pRpcChannelBuffer,
   2021     PRPC_MESSAGE pRpcMessage,
   2022     DWORD* pdwStubPhase);
   2023 HRESULT STDMETHODCALLTYPE IActiveIMMApp_GetConversionStatus_Proxy(
   2024     IActiveIMMApp* This,
   2025     HIMC hIMC,
   2026     DWORD *pfdwConversion,
   2027     DWORD *pfdwSentence);
   2028 void __RPC_STUB IActiveIMMApp_GetConversionStatus_Stub(
   2029     IRpcStubBuffer* This,
   2030     IRpcChannelBuffer* pRpcChannelBuffer,
   2031     PRPC_MESSAGE pRpcMessage,
   2032     DWORD* pdwStubPhase);
   2033 HRESULT STDMETHODCALLTYPE IActiveIMMApp_GetDefaultIMEWnd_Proxy(
   2034     IActiveIMMApp* This,
   2035     HWND hWnd,
   2036     HWND *phDefWnd);
   2037 void __RPC_STUB IActiveIMMApp_GetDefaultIMEWnd_Stub(
   2038     IRpcStubBuffer* This,
   2039     IRpcChannelBuffer* pRpcChannelBuffer,
   2040     PRPC_MESSAGE pRpcMessage,
   2041     DWORD* pdwStubPhase);
   2042 HRESULT STDMETHODCALLTYPE IActiveIMMApp_GetDescriptionA_Proxy(
   2043     IActiveIMMApp* This,
   2044     HKL hKL,
   2045     UINT uBufLen,
   2046     LPSTR szDescription,
   2047     UINT *puCopied);
   2048 void __RPC_STUB IActiveIMMApp_GetDescriptionA_Stub(
   2049     IRpcStubBuffer* This,
   2050     IRpcChannelBuffer* pRpcChannelBuffer,
   2051     PRPC_MESSAGE pRpcMessage,
   2052     DWORD* pdwStubPhase);
   2053 HRESULT STDMETHODCALLTYPE IActiveIMMApp_GetDescriptionW_Proxy(
   2054     IActiveIMMApp* This,
   2055     HKL hKL,
   2056     UINT uBufLen,
   2057     LPWSTR szDescription,
   2058     UINT *puCopied);
   2059 void __RPC_STUB IActiveIMMApp_GetDescriptionW_Stub(
   2060     IRpcStubBuffer* This,
   2061     IRpcChannelBuffer* pRpcChannelBuffer,
   2062     PRPC_MESSAGE pRpcMessage,
   2063     DWORD* pdwStubPhase);
   2064 HRESULT STDMETHODCALLTYPE IActiveIMMApp_GetGuideLineA_Proxy(
   2065     IActiveIMMApp* This,
   2066     HIMC hIMC,
   2067     DWORD dwIndex,
   2068     DWORD dwBufLen,
   2069     LPSTR pBuf,
   2070     DWORD *pdwResult);
   2071 void __RPC_STUB IActiveIMMApp_GetGuideLineA_Stub(
   2072     IRpcStubBuffer* This,
   2073     IRpcChannelBuffer* pRpcChannelBuffer,
   2074     PRPC_MESSAGE pRpcMessage,
   2075     DWORD* pdwStubPhase);
   2076 HRESULT STDMETHODCALLTYPE IActiveIMMApp_GetGuideLineW_Proxy(
   2077     IActiveIMMApp* This,
   2078     HIMC hIMC,
   2079     DWORD dwIndex,
   2080     DWORD dwBufLen,
   2081     LPWSTR pBuf,
   2082     DWORD *pdwResult);
   2083 void __RPC_STUB IActiveIMMApp_GetGuideLineW_Stub(
   2084     IRpcStubBuffer* This,
   2085     IRpcChannelBuffer* pRpcChannelBuffer,
   2086     PRPC_MESSAGE pRpcMessage,
   2087     DWORD* pdwStubPhase);
   2088 HRESULT STDMETHODCALLTYPE IActiveIMMApp_GetIMEFileNameA_Proxy(
   2089     IActiveIMMApp* This,
   2090     HKL hKL,
   2091     UINT uBufLen,
   2092     LPSTR szFileName,
   2093     UINT *puCopied);
   2094 void __RPC_STUB IActiveIMMApp_GetIMEFileNameA_Stub(
   2095     IRpcStubBuffer* This,
   2096     IRpcChannelBuffer* pRpcChannelBuffer,
   2097     PRPC_MESSAGE pRpcMessage,
   2098     DWORD* pdwStubPhase);
   2099 HRESULT STDMETHODCALLTYPE IActiveIMMApp_GetIMEFileNameW_Proxy(
   2100     IActiveIMMApp* This,
   2101     HKL hKL,
   2102     UINT uBufLen,
   2103     LPWSTR szFileName,
   2104     UINT *puCopied);
   2105 void __RPC_STUB IActiveIMMApp_GetIMEFileNameW_Stub(
   2106     IRpcStubBuffer* This,
   2107     IRpcChannelBuffer* pRpcChannelBuffer,
   2108     PRPC_MESSAGE pRpcMessage,
   2109     DWORD* pdwStubPhase);
   2110 HRESULT STDMETHODCALLTYPE IActiveIMMApp_GetOpenStatus_Proxy(
   2111     IActiveIMMApp* This,
   2112     HIMC hIMC);
   2113 void __RPC_STUB IActiveIMMApp_GetOpenStatus_Stub(
   2114     IRpcStubBuffer* This,
   2115     IRpcChannelBuffer* pRpcChannelBuffer,
   2116     PRPC_MESSAGE pRpcMessage,
   2117     DWORD* pdwStubPhase);
   2118 HRESULT STDMETHODCALLTYPE IActiveIMMApp_GetProperty_Proxy(
   2119     IActiveIMMApp* This,
   2120     HKL hKL,
   2121     DWORD fdwIndex,
   2122     DWORD *pdwProperty);
   2123 void __RPC_STUB IActiveIMMApp_GetProperty_Stub(
   2124     IRpcStubBuffer* This,
   2125     IRpcChannelBuffer* pRpcChannelBuffer,
   2126     PRPC_MESSAGE pRpcMessage,
   2127     DWORD* pdwStubPhase);
   2128 HRESULT STDMETHODCALLTYPE IActiveIMMApp_GetRegisterWordStyleA_Proxy(
   2129     IActiveIMMApp* This,
   2130     HKL hKL,
   2131     UINT nItem,
   2132     STYLEBUFA *pStyleBuf,
   2133     UINT *puCopied);
   2134 void __RPC_STUB IActiveIMMApp_GetRegisterWordStyleA_Stub(
   2135     IRpcStubBuffer* This,
   2136     IRpcChannelBuffer* pRpcChannelBuffer,
   2137     PRPC_MESSAGE pRpcMessage,
   2138     DWORD* pdwStubPhase);
   2139 HRESULT STDMETHODCALLTYPE IActiveIMMApp_GetRegisterWordStyleW_Proxy(
   2140     IActiveIMMApp* This,
   2141     HKL hKL,
   2142     UINT nItem,
   2143     STYLEBUFW *pStyleBuf,
   2144     UINT *puCopied);
   2145 void __RPC_STUB IActiveIMMApp_GetRegisterWordStyleW_Stub(
   2146     IRpcStubBuffer* This,
   2147     IRpcChannelBuffer* pRpcChannelBuffer,
   2148     PRPC_MESSAGE pRpcMessage,
   2149     DWORD* pdwStubPhase);
   2150 HRESULT STDMETHODCALLTYPE IActiveIMMApp_GetStatusWindowPos_Proxy(
   2151     IActiveIMMApp* This,
   2152     HIMC hIMC,
   2153     POINT *pptPos);
   2154 void __RPC_STUB IActiveIMMApp_GetStatusWindowPos_Stub(
   2155     IRpcStubBuffer* This,
   2156     IRpcChannelBuffer* pRpcChannelBuffer,
   2157     PRPC_MESSAGE pRpcMessage,
   2158     DWORD* pdwStubPhase);
   2159 HRESULT STDMETHODCALLTYPE IActiveIMMApp_GetVirtualKey_Proxy(
   2160     IActiveIMMApp* This,
   2161     HWND hWnd,
   2162     UINT *puVirtualKey);
   2163 void __RPC_STUB IActiveIMMApp_GetVirtualKey_Stub(
   2164     IRpcStubBuffer* This,
   2165     IRpcChannelBuffer* pRpcChannelBuffer,
   2166     PRPC_MESSAGE pRpcMessage,
   2167     DWORD* pdwStubPhase);
   2168 HRESULT STDMETHODCALLTYPE IActiveIMMApp_InstallIMEA_Proxy(
   2169     IActiveIMMApp* This,
   2170     LPSTR szIMEFileName,
   2171     LPSTR szLayoutText,
   2172     HKL *phKL);
   2173 void __RPC_STUB IActiveIMMApp_InstallIMEA_Stub(
   2174     IRpcStubBuffer* This,
   2175     IRpcChannelBuffer* pRpcChannelBuffer,
   2176     PRPC_MESSAGE pRpcMessage,
   2177     DWORD* pdwStubPhase);
   2178 HRESULT STDMETHODCALLTYPE IActiveIMMApp_InstallIMEW_Proxy(
   2179     IActiveIMMApp* This,
   2180     LPWSTR szIMEFileName,
   2181     LPWSTR szLayoutText,
   2182     HKL *phKL);
   2183 void __RPC_STUB IActiveIMMApp_InstallIMEW_Stub(
   2184     IRpcStubBuffer* This,
   2185     IRpcChannelBuffer* pRpcChannelBuffer,
   2186     PRPC_MESSAGE pRpcMessage,
   2187     DWORD* pdwStubPhase);
   2188 HRESULT STDMETHODCALLTYPE IActiveIMMApp_IsIME_Proxy(
   2189     IActiveIMMApp* This,
   2190     HKL hKL);
   2191 void __RPC_STUB IActiveIMMApp_IsIME_Stub(
   2192     IRpcStubBuffer* This,
   2193     IRpcChannelBuffer* pRpcChannelBuffer,
   2194     PRPC_MESSAGE pRpcMessage,
   2195     DWORD* pdwStubPhase);
   2196 HRESULT STDMETHODCALLTYPE IActiveIMMApp_IsUIMessageA_Proxy(
   2197     IActiveIMMApp* This,
   2198     HWND hWndIME,
   2199     UINT msg,
   2200     WPARAM wParam,
   2201     LPARAM lParam);
   2202 void __RPC_STUB IActiveIMMApp_IsUIMessageA_Stub(
   2203     IRpcStubBuffer* This,
   2204     IRpcChannelBuffer* pRpcChannelBuffer,
   2205     PRPC_MESSAGE pRpcMessage,
   2206     DWORD* pdwStubPhase);
   2207 HRESULT STDMETHODCALLTYPE IActiveIMMApp_IsUIMessageW_Proxy(
   2208     IActiveIMMApp* This,
   2209     HWND hWndIME,
   2210     UINT msg,
   2211     WPARAM wParam,
   2212     LPARAM lParam);
   2213 void __RPC_STUB IActiveIMMApp_IsUIMessageW_Stub(
   2214     IRpcStubBuffer* This,
   2215     IRpcChannelBuffer* pRpcChannelBuffer,
   2216     PRPC_MESSAGE pRpcMessage,
   2217     DWORD* pdwStubPhase);
   2218 HRESULT STDMETHODCALLTYPE IActiveIMMApp_NotifyIME_Proxy(
   2219     IActiveIMMApp* This,
   2220     HIMC hIMC,
   2221     DWORD dwAction,
   2222     DWORD dwIndex,
   2223     DWORD dwValue);
   2224 void __RPC_STUB IActiveIMMApp_NotifyIME_Stub(
   2225     IRpcStubBuffer* This,
   2226     IRpcChannelBuffer* pRpcChannelBuffer,
   2227     PRPC_MESSAGE pRpcMessage,
   2228     DWORD* pdwStubPhase);
   2229 HRESULT STDMETHODCALLTYPE IActiveIMMApp_RegisterWordA_Proxy(
   2230     IActiveIMMApp* This,
   2231     HKL hKL,
   2232     LPSTR szReading,
   2233     DWORD dwStyle,
   2234     LPSTR szRegister);
   2235 void __RPC_STUB IActiveIMMApp_RegisterWordA_Stub(
   2236     IRpcStubBuffer* This,
   2237     IRpcChannelBuffer* pRpcChannelBuffer,
   2238     PRPC_MESSAGE pRpcMessage,
   2239     DWORD* pdwStubPhase);
   2240 HRESULT STDMETHODCALLTYPE IActiveIMMApp_RegisterWordW_Proxy(
   2241     IActiveIMMApp* This,
   2242     HKL hKL,
   2243     LPWSTR szReading,
   2244     DWORD dwStyle,
   2245     LPWSTR szRegister);
   2246 void __RPC_STUB IActiveIMMApp_RegisterWordW_Stub(
   2247     IRpcStubBuffer* This,
   2248     IRpcChannelBuffer* pRpcChannelBuffer,
   2249     PRPC_MESSAGE pRpcMessage,
   2250     DWORD* pdwStubPhase);
   2251 HRESULT STDMETHODCALLTYPE IActiveIMMApp_ReleaseContext_Proxy(
   2252     IActiveIMMApp* This,
   2253     HWND hWnd,
   2254     HIMC hIMC);
   2255 void __RPC_STUB IActiveIMMApp_ReleaseContext_Stub(
   2256     IRpcStubBuffer* This,
   2257     IRpcChannelBuffer* pRpcChannelBuffer,
   2258     PRPC_MESSAGE pRpcMessage,
   2259     DWORD* pdwStubPhase);
   2260 HRESULT STDMETHODCALLTYPE IActiveIMMApp_SetCandidateWindow_Proxy(
   2261     IActiveIMMApp* This,
   2262     HIMC hIMC,
   2263     CANDIDATEFORM *pCandidate);
   2264 void __RPC_STUB IActiveIMMApp_SetCandidateWindow_Stub(
   2265     IRpcStubBuffer* This,
   2266     IRpcChannelBuffer* pRpcChannelBuffer,
   2267     PRPC_MESSAGE pRpcMessage,
   2268     DWORD* pdwStubPhase);
   2269 HRESULT STDMETHODCALLTYPE IActiveIMMApp_SetCompositionFontA_Proxy(
   2270     IActiveIMMApp* This,
   2271     HIMC hIMC,
   2272     LOGFONTA *plf);
   2273 void __RPC_STUB IActiveIMMApp_SetCompositionFontA_Stub(
   2274     IRpcStubBuffer* This,
   2275     IRpcChannelBuffer* pRpcChannelBuffer,
   2276     PRPC_MESSAGE pRpcMessage,
   2277     DWORD* pdwStubPhase);
   2278 HRESULT STDMETHODCALLTYPE IActiveIMMApp_SetCompositionFontW_Proxy(
   2279     IActiveIMMApp* This,
   2280     HIMC hIMC,
   2281     LOGFONTW *plf);
   2282 void __RPC_STUB IActiveIMMApp_SetCompositionFontW_Stub(
   2283     IRpcStubBuffer* This,
   2284     IRpcChannelBuffer* pRpcChannelBuffer,
   2285     PRPC_MESSAGE pRpcMessage,
   2286     DWORD* pdwStubPhase);
   2287 HRESULT STDMETHODCALLTYPE IActiveIMMApp_SetCompositionStringA_Proxy(
   2288     IActiveIMMApp* This,
   2289     HIMC hIMC,
   2290     DWORD dwIndex,
   2291     LPVOID pComp,
   2292     DWORD dwCompLen,
   2293     LPVOID pRead,
   2294     DWORD dwReadLen);
   2295 void __RPC_STUB IActiveIMMApp_SetCompositionStringA_Stub(
   2296     IRpcStubBuffer* This,
   2297     IRpcChannelBuffer* pRpcChannelBuffer,
   2298     PRPC_MESSAGE pRpcMessage,
   2299     DWORD* pdwStubPhase);
   2300 HRESULT STDMETHODCALLTYPE IActiveIMMApp_SetCompositionStringW_Proxy(
   2301     IActiveIMMApp* This,
   2302     HIMC hIMC,
   2303     DWORD dwIndex,
   2304     LPVOID pComp,
   2305     DWORD dwCompLen,
   2306     LPVOID pRead,
   2307     DWORD dwReadLen);
   2308 void __RPC_STUB IActiveIMMApp_SetCompositionStringW_Stub(
   2309     IRpcStubBuffer* This,
   2310     IRpcChannelBuffer* pRpcChannelBuffer,
   2311     PRPC_MESSAGE pRpcMessage,
   2312     DWORD* pdwStubPhase);
   2313 HRESULT STDMETHODCALLTYPE IActiveIMMApp_SetCompositionWindow_Proxy(
   2314     IActiveIMMApp* This,
   2315     HIMC hIMC,
   2316     COMPOSITIONFORM *pCompForm);
   2317 void __RPC_STUB IActiveIMMApp_SetCompositionWindow_Stub(
   2318     IRpcStubBuffer* This,
   2319     IRpcChannelBuffer* pRpcChannelBuffer,
   2320     PRPC_MESSAGE pRpcMessage,
   2321     DWORD* pdwStubPhase);
   2322 HRESULT STDMETHODCALLTYPE IActiveIMMApp_SetConversionStatus_Proxy(
   2323     IActiveIMMApp* This,
   2324     HIMC hIMC,
   2325     DWORD fdwConversion,
   2326     DWORD fdwSentence);
   2327 void __RPC_STUB IActiveIMMApp_SetConversionStatus_Stub(
   2328     IRpcStubBuffer* This,
   2329     IRpcChannelBuffer* pRpcChannelBuffer,
   2330     PRPC_MESSAGE pRpcMessage,
   2331     DWORD* pdwStubPhase);
   2332 HRESULT STDMETHODCALLTYPE IActiveIMMApp_SetOpenStatus_Proxy(
   2333     IActiveIMMApp* This,
   2334     HIMC hIMC,
   2335     WINBOOL fOpen);
   2336 void __RPC_STUB IActiveIMMApp_SetOpenStatus_Stub(
   2337     IRpcStubBuffer* This,
   2338     IRpcChannelBuffer* pRpcChannelBuffer,
   2339     PRPC_MESSAGE pRpcMessage,
   2340     DWORD* pdwStubPhase);
   2341 HRESULT STDMETHODCALLTYPE IActiveIMMApp_SetStatusWindowPos_Proxy(
   2342     IActiveIMMApp* This,
   2343     HIMC hIMC,
   2344     POINT *pptPos);
   2345 void __RPC_STUB IActiveIMMApp_SetStatusWindowPos_Stub(
   2346     IRpcStubBuffer* This,
   2347     IRpcChannelBuffer* pRpcChannelBuffer,
   2348     PRPC_MESSAGE pRpcMessage,
   2349     DWORD* pdwStubPhase);
   2350 HRESULT STDMETHODCALLTYPE IActiveIMMApp_SimulateHotKey_Proxy(
   2351     IActiveIMMApp* This,
   2352     HWND hWnd,
   2353     DWORD dwHotKeyID);
   2354 void __RPC_STUB IActiveIMMApp_SimulateHotKey_Stub(
   2355     IRpcStubBuffer* This,
   2356     IRpcChannelBuffer* pRpcChannelBuffer,
   2357     PRPC_MESSAGE pRpcMessage,
   2358     DWORD* pdwStubPhase);
   2359 HRESULT STDMETHODCALLTYPE IActiveIMMApp_UnregisterWordA_Proxy(
   2360     IActiveIMMApp* This,
   2361     HKL hKL,
   2362     LPSTR szReading,
   2363     DWORD dwStyle,
   2364     LPSTR szUnregister);
   2365 void __RPC_STUB IActiveIMMApp_UnregisterWordA_Stub(
   2366     IRpcStubBuffer* This,
   2367     IRpcChannelBuffer* pRpcChannelBuffer,
   2368     PRPC_MESSAGE pRpcMessage,
   2369     DWORD* pdwStubPhase);
   2370 HRESULT STDMETHODCALLTYPE IActiveIMMApp_UnregisterWordW_Proxy(
   2371     IActiveIMMApp* This,
   2372     HKL hKL,
   2373     LPWSTR szReading,
   2374     DWORD dwStyle,
   2375     LPWSTR szUnregister);
   2376 void __RPC_STUB IActiveIMMApp_UnregisterWordW_Stub(
   2377     IRpcStubBuffer* This,
   2378     IRpcChannelBuffer* pRpcChannelBuffer,
   2379     PRPC_MESSAGE pRpcMessage,
   2380     DWORD* pdwStubPhase);
   2381 HRESULT STDMETHODCALLTYPE IActiveIMMApp_Activate_Proxy(
   2382     IActiveIMMApp* This,
   2383     WINBOOL fRestoreLayout);
   2384 void __RPC_STUB IActiveIMMApp_Activate_Stub(
   2385     IRpcStubBuffer* This,
   2386     IRpcChannelBuffer* pRpcChannelBuffer,
   2387     PRPC_MESSAGE pRpcMessage,
   2388     DWORD* pdwStubPhase);
   2389 HRESULT STDMETHODCALLTYPE IActiveIMMApp_Deactivate_Proxy(
   2390     IActiveIMMApp* This);
   2391 void __RPC_STUB IActiveIMMApp_Deactivate_Stub(
   2392     IRpcStubBuffer* This,
   2393     IRpcChannelBuffer* pRpcChannelBuffer,
   2394     PRPC_MESSAGE pRpcMessage,
   2395     DWORD* pdwStubPhase);
   2396 HRESULT STDMETHODCALLTYPE IActiveIMMApp_OnDefWindowProc_Proxy(
   2397     IActiveIMMApp* This,
   2398     HWND hWnd,
   2399     UINT Msg,
   2400     WPARAM wParam,
   2401     LPARAM lParam,
   2402     LRESULT *plResult);
   2403 void __RPC_STUB IActiveIMMApp_OnDefWindowProc_Stub(
   2404     IRpcStubBuffer* This,
   2405     IRpcChannelBuffer* pRpcChannelBuffer,
   2406     PRPC_MESSAGE pRpcMessage,
   2407     DWORD* pdwStubPhase);
   2408 HRESULT STDMETHODCALLTYPE IActiveIMMApp_FilterClientWindows_Proxy(
   2409     IActiveIMMApp* This,
   2410     ATOM *aaClassList,
   2411     UINT uSize);
   2412 void __RPC_STUB IActiveIMMApp_FilterClientWindows_Stub(
   2413     IRpcStubBuffer* This,
   2414     IRpcChannelBuffer* pRpcChannelBuffer,
   2415     PRPC_MESSAGE pRpcMessage,
   2416     DWORD* pdwStubPhase);
   2417 HRESULT STDMETHODCALLTYPE IActiveIMMApp_GetCodePageA_Proxy(
   2418     IActiveIMMApp* This,
   2419     HKL hKL,
   2420     UINT *uCodePage);
   2421 void __RPC_STUB IActiveIMMApp_GetCodePageA_Stub(
   2422     IRpcStubBuffer* This,
   2423     IRpcChannelBuffer* pRpcChannelBuffer,
   2424     PRPC_MESSAGE pRpcMessage,
   2425     DWORD* pdwStubPhase);
   2426 HRESULT STDMETHODCALLTYPE IActiveIMMApp_GetLangId_Proxy(
   2427     IActiveIMMApp* This,
   2428     HKL hKL,
   2429     LANGID *plid);
   2430 void __RPC_STUB IActiveIMMApp_GetLangId_Stub(
   2431     IRpcStubBuffer* This,
   2432     IRpcChannelBuffer* pRpcChannelBuffer,
   2433     PRPC_MESSAGE pRpcMessage,
   2434     DWORD* pdwStubPhase);
   2435 HRESULT STDMETHODCALLTYPE IActiveIMMApp_AssociateContextEx_Proxy(
   2436     IActiveIMMApp* This,
   2437     HWND hWnd,
   2438     HIMC hIMC,
   2439     DWORD dwFlags);
   2440 void __RPC_STUB IActiveIMMApp_AssociateContextEx_Stub(
   2441     IRpcStubBuffer* This,
   2442     IRpcChannelBuffer* pRpcChannelBuffer,
   2443     PRPC_MESSAGE pRpcMessage,
   2444     DWORD* pdwStubPhase);
   2445 HRESULT STDMETHODCALLTYPE IActiveIMMApp_DisableIME_Proxy(
   2446     IActiveIMMApp* This,
   2447     DWORD idThread);
   2448 void __RPC_STUB IActiveIMMApp_DisableIME_Stub(
   2449     IRpcStubBuffer* This,
   2450     IRpcChannelBuffer* pRpcChannelBuffer,
   2451     PRPC_MESSAGE pRpcMessage,
   2452     DWORD* pdwStubPhase);
   2453 HRESULT STDMETHODCALLTYPE IActiveIMMApp_GetImeMenuItemsA_Proxy(
   2454     IActiveIMMApp* This,
   2455     HIMC hIMC,
   2456     DWORD dwFlags,
   2457     DWORD dwType,
   2458     IMEMENUITEMINFOA *pImeParentMenu,
   2459     IMEMENUITEMINFOA *pImeMenu,
   2460     DWORD dwSize,
   2461     DWORD *pdwResult);
   2462 void __RPC_STUB IActiveIMMApp_GetImeMenuItemsA_Stub(
   2463     IRpcStubBuffer* This,
   2464     IRpcChannelBuffer* pRpcChannelBuffer,
   2465     PRPC_MESSAGE pRpcMessage,
   2466     DWORD* pdwStubPhase);
   2467 HRESULT STDMETHODCALLTYPE IActiveIMMApp_GetImeMenuItemsW_Proxy(
   2468     IActiveIMMApp* This,
   2469     HIMC hIMC,
   2470     DWORD dwFlags,
   2471     DWORD dwType,
   2472     IMEMENUITEMINFOW *pImeParentMenu,
   2473     IMEMENUITEMINFOW *pImeMenu,
   2474     DWORD dwSize,
   2475     DWORD *pdwResult);
   2476 void __RPC_STUB IActiveIMMApp_GetImeMenuItemsW_Stub(
   2477     IRpcStubBuffer* This,
   2478     IRpcChannelBuffer* pRpcChannelBuffer,
   2479     PRPC_MESSAGE pRpcMessage,
   2480     DWORD* pdwStubPhase);
   2481 HRESULT STDMETHODCALLTYPE IActiveIMMApp_EnumInputContext_Proxy(
   2482     IActiveIMMApp* This,
   2483     DWORD idThread,
   2484     IEnumInputContext **ppEnum);
   2485 void __RPC_STUB IActiveIMMApp_EnumInputContext_Stub(
   2486     IRpcStubBuffer* This,
   2487     IRpcChannelBuffer* pRpcChannelBuffer,
   2488     PRPC_MESSAGE pRpcMessage,
   2489     DWORD* pdwStubPhase);
   2490 
   2491 #endif  /* __IActiveIMMApp_INTERFACE_DEFINED__ */
   2492 
   2493 /*****************************************************************************
   2494  * IActiveIMMIME interface
   2495  */
   2496 #ifndef __IActiveIMMIME_INTERFACE_DEFINED__
   2497 #define __IActiveIMMIME_INTERFACE_DEFINED__
   2498 
   2499 DEFINE_GUID(IID_IActiveIMMIME, 0x08c03411, 0xf96b, 0x11d0, 0xa4,0x75, 0x00,0xaa,0x00,0x6b,0xcc,0x59);
   2500 #if defined(__cplusplus) && !defined(CINTERFACE)
   2501 MIDL_INTERFACE("08c03411-f96b-11d0-a475-00aa006bcc59")
   2502 IActiveIMMIME : public IUnknown
   2503 {
   2504     virtual HRESULT STDMETHODCALLTYPE AssociateContext(
   2505         HWND hWnd,
   2506         HIMC hIME,
   2507         HIMC *phPrev) = 0;
   2508 
   2509     virtual HRESULT STDMETHODCALLTYPE ConfigureIMEA(
   2510         HKL hKL,
   2511         HWND hWnd,
   2512         DWORD dwMode,
   2513         REGISTERWORDA *pData) = 0;
   2514 
   2515     virtual HRESULT STDMETHODCALLTYPE ConfigureIMEW(
   2516         HKL hKL,
   2517         HWND hWnd,
   2518         DWORD dwMode,
   2519         REGISTERWORDW *pData) = 0;
   2520 
   2521     virtual HRESULT STDMETHODCALLTYPE CreateContext(
   2522         HIMC *phIMC) = 0;
   2523 
   2524     virtual HRESULT STDMETHODCALLTYPE DestroyContext(
   2525         HIMC hIME) = 0;
   2526 
   2527     virtual HRESULT STDMETHODCALLTYPE EnumRegisterWordA(
   2528         HKL hKL,
   2529         LPSTR szReading,
   2530         DWORD dwStyle,
   2531         LPSTR szRegister,
   2532         LPVOID pData,
   2533         IEnumRegisterWordA **pEnum) = 0;
   2534 
   2535     virtual HRESULT STDMETHODCALLTYPE EnumRegisterWordW(
   2536         HKL hKL,
   2537         LPWSTR szReading,
   2538         DWORD dwStyle,
   2539         LPWSTR szRegister,
   2540         LPVOID pData,
   2541         IEnumRegisterWordW **pEnum) = 0;
   2542 
   2543     virtual HRESULT STDMETHODCALLTYPE EscapeA(
   2544         HKL hKL,
   2545         HIMC hIMC,
   2546         UINT uEscape,
   2547         LPVOID pData,
   2548         LRESULT *plResult) = 0;
   2549 
   2550     virtual HRESULT STDMETHODCALLTYPE EscapeW(
   2551         HKL hKL,
   2552         HIMC hIMC,
   2553         UINT uEscape,
   2554         LPVOID pData,
   2555         LRESULT *plResult) = 0;
   2556 
   2557     virtual HRESULT STDMETHODCALLTYPE GetCandidateListA(
   2558         HIMC hIMC,
   2559         DWORD dwIndex,
   2560         UINT uBufLen,
   2561         CANDIDATELIST *pCandList,
   2562         UINT *puCopied) = 0;
   2563 
   2564     virtual HRESULT STDMETHODCALLTYPE GetCandidateListW(
   2565         HIMC hIMC,
   2566         DWORD dwIndex,
   2567         UINT uBufLen,
   2568         CANDIDATELIST *pCandList,
   2569         UINT *puCopied) = 0;
   2570 
   2571     virtual HRESULT STDMETHODCALLTYPE GetCandidateListCountA(
   2572         HIMC hIMC,
   2573         DWORD *pdwListSize,
   2574         DWORD *pdwBufLen) = 0;
   2575 
   2576     virtual HRESULT STDMETHODCALLTYPE GetCandidateListCountW(
   2577         HIMC hIMC,
   2578         DWORD *pdwListSize,
   2579         DWORD *pdwBufLen) = 0;
   2580 
   2581     virtual HRESULT STDMETHODCALLTYPE GetCandidateWindow(
   2582         HIMC hIMC,
   2583         DWORD dwIndex,
   2584         CANDIDATEFORM *pCandidate) = 0;
   2585 
   2586     virtual HRESULT STDMETHODCALLTYPE GetCompositionFontA(
   2587         HIMC hIMC,
   2588         LOGFONTA *plf) = 0;
   2589 
   2590     virtual HRESULT STDMETHODCALLTYPE GetCompositionFontW(
   2591         HIMC hIMC,
   2592         LOGFONTW *plf) = 0;
   2593 
   2594     virtual HRESULT STDMETHODCALLTYPE GetCompositionStringA(
   2595         HIMC hIMC,
   2596         DWORD dwIndex,
   2597         DWORD dwBufLen,
   2598         LONG *plCopied,
   2599         LPVOID pBuf) = 0;
   2600 
   2601     virtual HRESULT STDMETHODCALLTYPE GetCompositionStringW(
   2602         HIMC hIMC,
   2603         DWORD dwIndex,
   2604         DWORD dwBufLen,
   2605         LONG *plCopied,
   2606         LPVOID pBuf) = 0;
   2607 
   2608     virtual HRESULT STDMETHODCALLTYPE GetCompositionWindow(
   2609         HIMC hIMC,
   2610         COMPOSITIONFORM *pCompForm) = 0;
   2611 
   2612     virtual HRESULT STDMETHODCALLTYPE GetContext(
   2613         HWND hWnd,
   2614         HIMC *phIMC) = 0;
   2615 
   2616     virtual HRESULT STDMETHODCALLTYPE GetConversionListA(
   2617         HKL hKL,
   2618         HIMC hIMC,
   2619         LPSTR pSrc,
   2620         UINT uBufLen,
   2621         UINT uFlag,
   2622         CANDIDATELIST *pDst,
   2623         UINT *puCopied) = 0;
   2624 
   2625     virtual HRESULT STDMETHODCALLTYPE GetConversionListW(
   2626         HKL hKL,
   2627         HIMC hIMC,
   2628         LPWSTR pSrc,
   2629         UINT uBufLen,
   2630         UINT uFlag,
   2631         CANDIDATELIST *pDst,
   2632         UINT *puCopied) = 0;
   2633 
   2634     virtual HRESULT STDMETHODCALLTYPE GetConversionStatus(
   2635         HIMC hIMC,
   2636         DWORD *pfdwConversion,
   2637         DWORD *pfdwSentence) = 0;
   2638 
   2639     virtual HRESULT STDMETHODCALLTYPE GetDefaultIMEWnd(
   2640         HWND hWnd,
   2641         HWND *phDefWnd) = 0;
   2642 
   2643     virtual HRESULT STDMETHODCALLTYPE GetDescriptionA(
   2644         HKL hKL,
   2645         UINT uBufLen,
   2646         LPSTR szDescription,
   2647         UINT *puCopied) = 0;
   2648 
   2649     virtual HRESULT STDMETHODCALLTYPE GetDescriptionW(
   2650         HKL hKL,
   2651         UINT uBufLen,
   2652         LPWSTR szDescription,
   2653         UINT *puCopied) = 0;
   2654 
   2655     virtual HRESULT STDMETHODCALLTYPE GetGuideLineA(
   2656         HIMC hIMC,
   2657         DWORD dwIndex,
   2658         DWORD dwBufLen,
   2659         LPSTR pBuf,
   2660         DWORD *pdwResult) = 0;
   2661 
   2662     virtual HRESULT STDMETHODCALLTYPE GetGuideLineW(
   2663         HIMC hIMC,
   2664         DWORD dwIndex,
   2665         DWORD dwBufLen,
   2666         LPWSTR pBuf,
   2667         DWORD *pdwResult) = 0;
   2668 
   2669     virtual HRESULT STDMETHODCALLTYPE GetIMEFileNameA(
   2670         HKL hKL,
   2671         UINT uBufLen,
   2672         LPSTR szFileName,
   2673         UINT *puCopied) = 0;
   2674 
   2675     virtual HRESULT STDMETHODCALLTYPE GetIMEFileNameW(
   2676         HKL hKL,
   2677         UINT uBufLen,
   2678         LPWSTR szFileName,
   2679         UINT *puCopied) = 0;
   2680 
   2681     virtual HRESULT STDMETHODCALLTYPE GetOpenStatus(
   2682         HIMC hIMC) = 0;
   2683 
   2684     virtual HRESULT STDMETHODCALLTYPE GetProperty(
   2685         HKL hKL,
   2686         DWORD fdwIndex,
   2687         DWORD *pdwProperty) = 0;
   2688 
   2689     virtual HRESULT STDMETHODCALLTYPE GetRegisterWordStyleA(
   2690         HKL hKL,
   2691         UINT nItem,
   2692         STYLEBUFA *pStyleBuf,
   2693         UINT *puCopied) = 0;
   2694 
   2695     virtual HRESULT STDMETHODCALLTYPE GetRegisterWordStyleW(
   2696         HKL hKL,
   2697         UINT nItem,
   2698         STYLEBUFW *pStyleBuf,
   2699         UINT *puCopied) = 0;
   2700 
   2701     virtual HRESULT STDMETHODCALLTYPE GetStatusWindowPos(
   2702         HIMC hIMC,
   2703         POINT *pptPos) = 0;
   2704 
   2705     virtual HRESULT STDMETHODCALLTYPE GetVirtualKey(
   2706         HWND hWnd,
   2707         UINT *puVirtualKey) = 0;
   2708 
   2709     virtual HRESULT STDMETHODCALLTYPE InstallIMEA(
   2710         LPSTR szIMEFileName,
   2711         LPSTR szLayoutText,
   2712         HKL *phKL) = 0;
   2713 
   2714     virtual HRESULT STDMETHODCALLTYPE InstallIMEW(
   2715         LPWSTR szIMEFileName,
   2716         LPWSTR szLayoutText,
   2717         HKL *phKL) = 0;
   2718 
   2719     virtual HRESULT STDMETHODCALLTYPE IsIME(
   2720         HKL hKL) = 0;
   2721 
   2722     virtual HRESULT STDMETHODCALLTYPE IsUIMessageA(
   2723         HWND hWndIME,
   2724         UINT msg,
   2725         WPARAM wParam,
   2726         LPARAM lParam) = 0;
   2727 
   2728     virtual HRESULT STDMETHODCALLTYPE IsUIMessageW(
   2729         HWND hWndIME,
   2730         UINT msg,
   2731         WPARAM wParam,
   2732         LPARAM lParam) = 0;
   2733 
   2734     virtual HRESULT STDMETHODCALLTYPE NotifyIME(
   2735         HIMC hIMC,
   2736         DWORD dwAction,
   2737         DWORD dwIndex,
   2738         DWORD dwValue) = 0;
   2739 
   2740     virtual HRESULT STDMETHODCALLTYPE RegisterWordA(
   2741         HKL hKL,
   2742         LPSTR szReading,
   2743         DWORD dwStyle,
   2744         LPSTR szRegister) = 0;
   2745 
   2746     virtual HRESULT STDMETHODCALLTYPE RegisterWordW(
   2747         HKL hKL,
   2748         LPWSTR szReading,
   2749         DWORD dwStyle,
   2750         LPWSTR szRegister) = 0;
   2751 
   2752     virtual HRESULT STDMETHODCALLTYPE ReleaseContext(
   2753         HWND hWnd,
   2754         HIMC hIMC) = 0;
   2755 
   2756     virtual HRESULT STDMETHODCALLTYPE SetCandidateWindow(
   2757         HIMC hIMC,
   2758         CANDIDATEFORM *pCandidate) = 0;
   2759 
   2760     virtual HRESULT STDMETHODCALLTYPE SetCompositionFontA(
   2761         HIMC hIMC,
   2762         LOGFONTA *plf) = 0;
   2763 
   2764     virtual HRESULT STDMETHODCALLTYPE SetCompositionFontW(
   2765         HIMC hIMC,
   2766         LOGFONTW *plf) = 0;
   2767 
   2768     virtual HRESULT STDMETHODCALLTYPE SetCompositionStringA(
   2769         HIMC hIMC,
   2770         DWORD dwIndex,
   2771         LPVOID pComp,
   2772         DWORD dwCompLen,
   2773         LPVOID pRead,
   2774         DWORD dwReadLen) = 0;
   2775 
   2776     virtual HRESULT STDMETHODCALLTYPE SetCompositionStringW(
   2777         HIMC hIMC,
   2778         DWORD dwIndex,
   2779         LPVOID pComp,
   2780         DWORD dwCompLen,
   2781         LPVOID pRead,
   2782         DWORD dwReadLen) = 0;
   2783 
   2784     virtual HRESULT STDMETHODCALLTYPE SetCompositionWindow(
   2785         HIMC hIMC,
   2786         COMPOSITIONFORM *pCompForm) = 0;
   2787 
   2788     virtual HRESULT STDMETHODCALLTYPE SetConversionStatus(
   2789         HIMC hIMC,
   2790         DWORD fdwConversion,
   2791         DWORD fdwSentence) = 0;
   2792 
   2793     virtual HRESULT STDMETHODCALLTYPE SetOpenStatus(
   2794         HIMC hIMC,
   2795         WINBOOL fOpen) = 0;
   2796 
   2797     virtual HRESULT STDMETHODCALLTYPE SetStatusWindowPos(
   2798         HIMC hIMC,
   2799         POINT *pptPos) = 0;
   2800 
   2801     virtual HRESULT STDMETHODCALLTYPE SimulateHotKey(
   2802         HWND hWnd,
   2803         DWORD dwHotKeyID) = 0;
   2804 
   2805     virtual HRESULT STDMETHODCALLTYPE UnregisterWordA(
   2806         HKL hKL,
   2807         LPSTR szReading,
   2808         DWORD dwStyle,
   2809         LPSTR szUnregister) = 0;
   2810 
   2811     virtual HRESULT STDMETHODCALLTYPE UnregisterWordW(
   2812         HKL hKL,
   2813         LPWSTR szReading,
   2814         DWORD dwStyle,
   2815         LPWSTR szUnregister) = 0;
   2816 
   2817     virtual HRESULT STDMETHODCALLTYPE GenerateMessage(
   2818         HIMC hIMC) = 0;
   2819 
   2820     virtual HRESULT STDMETHODCALLTYPE LockIMC(
   2821         HIMC hIMC,
   2822         INPUTCONTEXT **ppIMC) = 0;
   2823 
   2824     virtual HRESULT STDMETHODCALLTYPE UnlockIMC(
   2825         HIMC hIMC) = 0;
   2826 
   2827     virtual HRESULT STDMETHODCALLTYPE GetIMCLockCount(
   2828         HIMC hIMC,
   2829         DWORD *pdwLockCount) = 0;
   2830 
   2831     virtual HRESULT STDMETHODCALLTYPE CreateIMCC(
   2832         DWORD dwSize,
   2833         HIMCC *phIMCC) = 0;
   2834 
   2835     virtual HRESULT STDMETHODCALLTYPE DestroyIMCC(
   2836         HIMCC hIMCC) = 0;
   2837 
   2838     virtual HRESULT STDMETHODCALLTYPE LockIMCC(
   2839         HIMCC hIMCC,
   2840         void **ppv) = 0;
   2841 
   2842     virtual HRESULT STDMETHODCALLTYPE UnlockIMCC(
   2843         HIMCC hIMCC) = 0;
   2844 
   2845     virtual HRESULT STDMETHODCALLTYPE ReSizeIMCC(
   2846         HIMCC hIMCC,
   2847         DWORD dwSize,
   2848         HIMCC *phIMCC) = 0;
   2849 
   2850     virtual HRESULT STDMETHODCALLTYPE GetIMCCSize(
   2851         HIMCC hIMCC,
   2852         DWORD *pdwSize) = 0;
   2853 
   2854     virtual HRESULT STDMETHODCALLTYPE GetIMCCLockCount(
   2855         HIMCC hIMCC,
   2856         DWORD *pdwLockCount) = 0;
   2857 
   2858     virtual HRESULT STDMETHODCALLTYPE GetHotKey(
   2859         DWORD dwHotKeyID,
   2860         UINT *puModifiers,
   2861         UINT *puVKey,
   2862         HKL *phKL) = 0;
   2863 
   2864     virtual HRESULT STDMETHODCALLTYPE SetHotKey(
   2865         DWORD dwHotKeyID,
   2866         UINT uModifiers,
   2867         UINT uVKey,
   2868         HKL hKL) = 0;
   2869 
   2870     virtual HRESULT STDMETHODCALLTYPE CreateSoftKeyboard(
   2871         UINT uType,
   2872         HWND hOwner,
   2873         int x,
   2874         int y,
   2875         HWND *phSoftKbdWnd) = 0;
   2876 
   2877     virtual HRESULT STDMETHODCALLTYPE DestroySoftKeyboard(
   2878         HWND hSoftKbdWnd) = 0;
   2879 
   2880     virtual HRESULT STDMETHODCALLTYPE ShowSoftKeyboard(
   2881         HWND hSoftKbdWnd,
   2882         int nCmdShow) = 0;
   2883 
   2884     virtual HRESULT STDMETHODCALLTYPE GetCodePageA(
   2885         HKL hKL,
   2886         UINT *uCodePage) = 0;
   2887 
   2888     virtual HRESULT STDMETHODCALLTYPE GetLangId(
   2889         HKL hKL,
   2890         LANGID *plid) = 0;
   2891 
   2892     virtual HRESULT STDMETHODCALLTYPE KeybdEvent(
   2893         LANGID lgidIME,
   2894         BYTE bVk,
   2895         BYTE bScan,
   2896         DWORD dwFlags,
   2897         DWORD dwExtraInfo) = 0;
   2898 
   2899     virtual HRESULT STDMETHODCALLTYPE LockModal(
   2900         ) = 0;
   2901 
   2902     virtual HRESULT STDMETHODCALLTYPE UnlockModal(
   2903         ) = 0;
   2904 
   2905     virtual HRESULT STDMETHODCALLTYPE AssociateContextEx(
   2906         HWND hWnd,
   2907         HIMC hIMC,
   2908         DWORD dwFlags) = 0;
   2909 
   2910     virtual HRESULT STDMETHODCALLTYPE DisableIME(
   2911         DWORD idThread) = 0;
   2912 
   2913     virtual HRESULT STDMETHODCALLTYPE GetImeMenuItemsA(
   2914         HIMC hIMC,
   2915         DWORD dwFlags,
   2916         DWORD dwType,
   2917         IMEMENUITEMINFOA *pImeParentMenu,
   2918         IMEMENUITEMINFOA *pImeMenu,
   2919         DWORD dwSize,
   2920         DWORD *pdwResult) = 0;
   2921 
   2922     virtual HRESULT STDMETHODCALLTYPE GetImeMenuItemsW(
   2923         HIMC hIMC,
   2924         DWORD dwFlags,
   2925         DWORD dwType,
   2926         IMEMENUITEMINFOW *pImeParentMenu,
   2927         IMEMENUITEMINFOW *pImeMenu,
   2928         DWORD dwSize,
   2929         DWORD *pdwResult) = 0;
   2930 
   2931     virtual HRESULT STDMETHODCALLTYPE EnumInputContext(
   2932         DWORD idThread,
   2933         IEnumInputContext **ppEnum) = 0;
   2934 
   2935     virtual HRESULT STDMETHODCALLTYPE RequestMessageA(
   2936         HIMC hIMC,
   2937         WPARAM wParam,
   2938         LPARAM lParam,
   2939         LRESULT *plResult) = 0;
   2940 
   2941     virtual HRESULT STDMETHODCALLTYPE RequestMessageW(
   2942         HIMC hIMC,
   2943         WPARAM wParam,
   2944         LPARAM lParam,
   2945         LRESULT *plResult) = 0;
   2946 
   2947     virtual HRESULT STDMETHODCALLTYPE SendIMCA(
   2948         HWND hWnd,
   2949         UINT uMsg,
   2950         WPARAM wParam,
   2951         LPARAM lParam,
   2952         LRESULT *plResult) = 0;
   2953 
   2954     virtual HRESULT STDMETHODCALLTYPE SendIMCW(
   2955         HWND hWnd,
   2956         UINT uMsg,
   2957         WPARAM wParam,
   2958         LPARAM lParam,
   2959         LRESULT *plResult) = 0;
   2960 
   2961     virtual HRESULT STDMETHODCALLTYPE IsSleeping(
   2962         ) = 0;
   2963 
   2964 };
   2965 #ifdef __CRT_UUID_DECL
   2966 __CRT_UUID_DECL(IActiveIMMIME, 0x08c03411, 0xf96b, 0x11d0, 0xa4,0x75, 0x00,0xaa,0x00,0x6b,0xcc,0x59)
   2967 #endif
   2968 #else
   2969 typedef struct IActiveIMMIMEVtbl {
   2970     BEGIN_INTERFACE
   2971 
   2972     /*** IUnknown methods ***/
   2973     HRESULT (STDMETHODCALLTYPE *QueryInterface)(
   2974         IActiveIMMIME* This,
   2975         REFIID riid,
   2976         void **ppvObject);
   2977 
   2978     ULONG (STDMETHODCALLTYPE *AddRef)(
   2979         IActiveIMMIME* This);
   2980 
   2981     ULONG (STDMETHODCALLTYPE *Release)(
   2982         IActiveIMMIME* This);
   2983 
   2984     /*** IActiveIMMIME methods ***/
   2985     HRESULT (STDMETHODCALLTYPE *AssociateContext)(
   2986         IActiveIMMIME* This,
   2987         HWND hWnd,
   2988         HIMC hIME,
   2989         HIMC *phPrev);
   2990 
   2991     HRESULT (STDMETHODCALLTYPE *ConfigureIMEA)(
   2992         IActiveIMMIME* This,
   2993         HKL hKL,
   2994         HWND hWnd,
   2995         DWORD dwMode,
   2996         REGISTERWORDA *pData);
   2997 
   2998     HRESULT (STDMETHODCALLTYPE *ConfigureIMEW)(
   2999         IActiveIMMIME* This,
   3000         HKL hKL,
   3001         HWND hWnd,
   3002         DWORD dwMode,
   3003         REGISTERWORDW *pData);
   3004 
   3005     HRESULT (STDMETHODCALLTYPE *CreateContext)(
   3006         IActiveIMMIME* This,
   3007         HIMC *phIMC);
   3008 
   3009     HRESULT (STDMETHODCALLTYPE *DestroyContext)(
   3010         IActiveIMMIME* This,
   3011         HIMC hIME);
   3012 
   3013     HRESULT (STDMETHODCALLTYPE *EnumRegisterWordA)(
   3014         IActiveIMMIME* This,
   3015         HKL hKL,
   3016         LPSTR szReading,
   3017         DWORD dwStyle,
   3018         LPSTR szRegister,
   3019         LPVOID pData,
   3020         IEnumRegisterWordA **pEnum);
   3021 
   3022     HRESULT (STDMETHODCALLTYPE *EnumRegisterWordW)(
   3023         IActiveIMMIME* This,
   3024         HKL hKL,
   3025         LPWSTR szReading,
   3026         DWORD dwStyle,
   3027         LPWSTR szRegister,
   3028         LPVOID pData,
   3029         IEnumRegisterWordW **pEnum);
   3030 
   3031     HRESULT (STDMETHODCALLTYPE *EscapeA)(
   3032         IActiveIMMIME* This,
   3033         HKL hKL,
   3034         HIMC hIMC,
   3035         UINT uEscape,
   3036         LPVOID pData,
   3037         LRESULT *plResult);
   3038 
   3039     HRESULT (STDMETHODCALLTYPE *EscapeW)(
   3040         IActiveIMMIME* This,
   3041         HKL hKL,
   3042         HIMC hIMC,
   3043         UINT uEscape,
   3044         LPVOID pData,
   3045         LRESULT *plResult);
   3046 
   3047     HRESULT (STDMETHODCALLTYPE *GetCandidateListA)(
   3048         IActiveIMMIME* This,
   3049         HIMC hIMC,
   3050         DWORD dwIndex,
   3051         UINT uBufLen,
   3052         CANDIDATELIST *pCandList,
   3053         UINT *puCopied);
   3054 
   3055     HRESULT (STDMETHODCALLTYPE *GetCandidateListW)(
   3056         IActiveIMMIME* This,
   3057         HIMC hIMC,
   3058         DWORD dwIndex,
   3059         UINT uBufLen,
   3060         CANDIDATELIST *pCandList,
   3061         UINT *puCopied);
   3062 
   3063     HRESULT (STDMETHODCALLTYPE *GetCandidateListCountA)(
   3064         IActiveIMMIME* This,
   3065         HIMC hIMC,
   3066         DWORD *pdwListSize,
   3067         DWORD *pdwBufLen);
   3068 
   3069     HRESULT (STDMETHODCALLTYPE *GetCandidateListCountW)(
   3070         IActiveIMMIME* This,
   3071         HIMC hIMC,
   3072         DWORD *pdwListSize,
   3073         DWORD *pdwBufLen);
   3074 
   3075     HRESULT (STDMETHODCALLTYPE *GetCandidateWindow)(
   3076         IActiveIMMIME* This,
   3077         HIMC hIMC,
   3078         DWORD dwIndex,
   3079         CANDIDATEFORM *pCandidate);
   3080 
   3081     HRESULT (STDMETHODCALLTYPE *GetCompositionFontA)(
   3082         IActiveIMMIME* This,
   3083         HIMC hIMC,
   3084         LOGFONTA *plf);
   3085 
   3086     HRESULT (STDMETHODCALLTYPE *GetCompositionFontW)(
   3087         IActiveIMMIME* This,
   3088         HIMC hIMC,
   3089         LOGFONTW *plf);
   3090 
   3091     HRESULT (STDMETHODCALLTYPE *GetCompositionStringA)(
   3092         IActiveIMMIME* This,
   3093         HIMC hIMC,
   3094         DWORD dwIndex,
   3095         DWORD dwBufLen,
   3096         LONG *plCopied,
   3097         LPVOID pBuf);
   3098 
   3099     HRESULT (STDMETHODCALLTYPE *GetCompositionStringW)(
   3100         IActiveIMMIME* This,
   3101         HIMC hIMC,
   3102         DWORD dwIndex,
   3103         DWORD dwBufLen,
   3104         LONG *plCopied,
   3105         LPVOID pBuf);
   3106 
   3107     HRESULT (STDMETHODCALLTYPE *GetCompositionWindow)(
   3108         IActiveIMMIME* This,
   3109         HIMC hIMC,
   3110         COMPOSITIONFORM *pCompForm);
   3111 
   3112     HRESULT (STDMETHODCALLTYPE *GetContext)(
   3113         IActiveIMMIME* This,
   3114         HWND hWnd,
   3115         HIMC *phIMC);
   3116 
   3117     HRESULT (STDMETHODCALLTYPE *GetConversionListA)(
   3118         IActiveIMMIME* This,
   3119         HKL hKL,
   3120         HIMC hIMC,
   3121         LPSTR pSrc,
   3122         UINT uBufLen,
   3123         UINT uFlag,
   3124         CANDIDATELIST *pDst,
   3125         UINT *puCopied);
   3126 
   3127     HRESULT (STDMETHODCALLTYPE *GetConversionListW)(
   3128         IActiveIMMIME* This,
   3129         HKL hKL,
   3130         HIMC hIMC,
   3131         LPWSTR pSrc,
   3132         UINT uBufLen,
   3133         UINT uFlag,
   3134         CANDIDATELIST *pDst,
   3135         UINT *puCopied);
   3136 
   3137     HRESULT (STDMETHODCALLTYPE *GetConversionStatus)(
   3138         IActiveIMMIME* This,
   3139         HIMC hIMC,
   3140         DWORD *pfdwConversion,
   3141         DWORD *pfdwSentence);
   3142 
   3143     HRESULT (STDMETHODCALLTYPE *GetDefaultIMEWnd)(
   3144         IActiveIMMIME* This,
   3145         HWND hWnd,
   3146         HWND *phDefWnd);
   3147 
   3148     HRESULT (STDMETHODCALLTYPE *GetDescriptionA)(
   3149         IActiveIMMIME* This,
   3150         HKL hKL,
   3151         UINT uBufLen,
   3152         LPSTR szDescription,
   3153         UINT *puCopied);
   3154 
   3155     HRESULT (STDMETHODCALLTYPE *GetDescriptionW)(
   3156         IActiveIMMIME* This,
   3157         HKL hKL,
   3158         UINT uBufLen,
   3159         LPWSTR szDescription,
   3160         UINT *puCopied);
   3161 
   3162     HRESULT (STDMETHODCALLTYPE *GetGuideLineA)(
   3163         IActiveIMMIME* This,
   3164         HIMC hIMC,
   3165         DWORD dwIndex,
   3166         DWORD dwBufLen,
   3167         LPSTR pBuf,
   3168         DWORD *pdwResult);
   3169 
   3170     HRESULT (STDMETHODCALLTYPE *GetGuideLineW)(
   3171         IActiveIMMIME* This,
   3172         HIMC hIMC,
   3173         DWORD dwIndex,
   3174         DWORD dwBufLen,
   3175         LPWSTR pBuf,
   3176         DWORD *pdwResult);
   3177 
   3178     HRESULT (STDMETHODCALLTYPE *GetIMEFileNameA)(
   3179         IActiveIMMIME* This,
   3180         HKL hKL,
   3181         UINT uBufLen,
   3182         LPSTR szFileName,
   3183         UINT *puCopied);
   3184 
   3185     HRESULT (STDMETHODCALLTYPE *GetIMEFileNameW)(
   3186         IActiveIMMIME* This,
   3187         HKL hKL,
   3188         UINT uBufLen,
   3189         LPWSTR szFileName,
   3190         UINT *puCopied);
   3191 
   3192     HRESULT (STDMETHODCALLTYPE *GetOpenStatus)(
   3193         IActiveIMMIME* This,
   3194         HIMC hIMC);
   3195 
   3196     HRESULT (STDMETHODCALLTYPE *GetProperty)(
   3197         IActiveIMMIME* This,
   3198         HKL hKL,
   3199         DWORD fdwIndex,
   3200         DWORD *pdwProperty);
   3201 
   3202     HRESULT (STDMETHODCALLTYPE *GetRegisterWordStyleA)(
   3203         IActiveIMMIME* This,
   3204         HKL hKL,
   3205         UINT nItem,
   3206         STYLEBUFA *pStyleBuf,
   3207         UINT *puCopied);
   3208 
   3209     HRESULT (STDMETHODCALLTYPE *GetRegisterWordStyleW)(
   3210         IActiveIMMIME* This,
   3211         HKL hKL,
   3212         UINT nItem,
   3213         STYLEBUFW *pStyleBuf,
   3214         UINT *puCopied);
   3215 
   3216     HRESULT (STDMETHODCALLTYPE *GetStatusWindowPos)(
   3217         IActiveIMMIME* This,
   3218         HIMC hIMC,
   3219         POINT *pptPos);
   3220 
   3221     HRESULT (STDMETHODCALLTYPE *GetVirtualKey)(
   3222         IActiveIMMIME* This,
   3223         HWND hWnd,
   3224         UINT *puVirtualKey);
   3225 
   3226     HRESULT (STDMETHODCALLTYPE *InstallIMEA)(
   3227         IActiveIMMIME* This,
   3228         LPSTR szIMEFileName,
   3229         LPSTR szLayoutText,
   3230         HKL *phKL);
   3231 
   3232     HRESULT (STDMETHODCALLTYPE *InstallIMEW)(
   3233         IActiveIMMIME* This,
   3234         LPWSTR szIMEFileName,
   3235         LPWSTR szLayoutText,
   3236         HKL *phKL);
   3237 
   3238     HRESULT (STDMETHODCALLTYPE *IsIME)(
   3239         IActiveIMMIME* This,
   3240         HKL hKL);
   3241 
   3242     HRESULT (STDMETHODCALLTYPE *IsUIMessageA)(
   3243         IActiveIMMIME* This,
   3244         HWND hWndIME,
   3245         UINT msg,
   3246         WPARAM wParam,
   3247         LPARAM lParam);
   3248 
   3249     HRESULT (STDMETHODCALLTYPE *IsUIMessageW)(
   3250         IActiveIMMIME* This,
   3251         HWND hWndIME,
   3252         UINT msg,
   3253         WPARAM wParam,
   3254         LPARAM lParam);
   3255 
   3256     HRESULT (STDMETHODCALLTYPE *NotifyIME)(
   3257         IActiveIMMIME* This,
   3258         HIMC hIMC,
   3259         DWORD dwAction,
   3260         DWORD dwIndex,
   3261         DWORD dwValue);
   3262 
   3263     HRESULT (STDMETHODCALLTYPE *RegisterWordA)(
   3264         IActiveIMMIME* This,
   3265         HKL hKL,
   3266         LPSTR szReading,
   3267         DWORD dwStyle,
   3268         LPSTR szRegister);
   3269 
   3270     HRESULT (STDMETHODCALLTYPE *RegisterWordW)(
   3271         IActiveIMMIME* This,
   3272         HKL hKL,
   3273         LPWSTR szReading,
   3274         DWORD dwStyle,
   3275         LPWSTR szRegister);
   3276 
   3277     HRESULT (STDMETHODCALLTYPE *ReleaseContext)(
   3278         IActiveIMMIME* This,
   3279         HWND hWnd,
   3280         HIMC hIMC);
   3281 
   3282     HRESULT (STDMETHODCALLTYPE *SetCandidateWindow)(
   3283         IActiveIMMIME* This,
   3284         HIMC hIMC,
   3285         CANDIDATEFORM *pCandidate);
   3286 
   3287     HRESULT (STDMETHODCALLTYPE *SetCompositionFontA)(
   3288         IActiveIMMIME* This,
   3289         HIMC hIMC,
   3290         LOGFONTA *plf);
   3291 
   3292     HRESULT (STDMETHODCALLTYPE *SetCompositionFontW)(
   3293         IActiveIMMIME* This,
   3294         HIMC hIMC,
   3295         LOGFONTW *plf);
   3296 
   3297     HRESULT (STDMETHODCALLTYPE *SetCompositionStringA)(
   3298         IActiveIMMIME* This,
   3299         HIMC hIMC,
   3300         DWORD dwIndex,
   3301         LPVOID pComp,
   3302         DWORD dwCompLen,
   3303         LPVOID pRead,
   3304         DWORD dwReadLen);
   3305 
   3306     HRESULT (STDMETHODCALLTYPE *SetCompositionStringW)(
   3307         IActiveIMMIME* This,
   3308         HIMC hIMC,
   3309         DWORD dwIndex,
   3310         LPVOID pComp,
   3311         DWORD dwCompLen,
   3312         LPVOID pRead,
   3313         DWORD dwReadLen);
   3314 
   3315     HRESULT (STDMETHODCALLTYPE *SetCompositionWindow)(
   3316         IActiveIMMIME* This,
   3317         HIMC hIMC,
   3318         COMPOSITIONFORM *pCompForm);
   3319 
   3320     HRESULT (STDMETHODCALLTYPE *SetConversionStatus)(
   3321         IActiveIMMIME* This,
   3322         HIMC hIMC,
   3323         DWORD fdwConversion,
   3324         DWORD fdwSentence);
   3325 
   3326     HRESULT (STDMETHODCALLTYPE *SetOpenStatus)(
   3327         IActiveIMMIME* This,
   3328         HIMC hIMC,
   3329         WINBOOL fOpen);
   3330 
   3331     HRESULT (STDMETHODCALLTYPE *SetStatusWindowPos)(
   3332         IActiveIMMIME* This,
   3333         HIMC hIMC,
   3334         POINT *pptPos);
   3335 
   3336     HRESULT (STDMETHODCALLTYPE *SimulateHotKey)(
   3337         IActiveIMMIME* This,
   3338         HWND hWnd,
   3339         DWORD dwHotKeyID);
   3340 
   3341     HRESULT (STDMETHODCALLTYPE *UnregisterWordA)(
   3342         IActiveIMMIME* This,
   3343         HKL hKL,
   3344         LPSTR szReading,
   3345         DWORD dwStyle,
   3346         LPSTR szUnregister);
   3347 
   3348     HRESULT (STDMETHODCALLTYPE *UnregisterWordW)(
   3349         IActiveIMMIME* This,
   3350         HKL hKL,
   3351         LPWSTR szReading,
   3352         DWORD dwStyle,
   3353         LPWSTR szUnregister);
   3354 
   3355     HRESULT (STDMETHODCALLTYPE *GenerateMessage)(
   3356         IActiveIMMIME* This,
   3357         HIMC hIMC);
   3358 
   3359     HRESULT (STDMETHODCALLTYPE *LockIMC)(
   3360         IActiveIMMIME* This,
   3361         HIMC hIMC,
   3362         INPUTCONTEXT **ppIMC);
   3363 
   3364     HRESULT (STDMETHODCALLTYPE *UnlockIMC)(
   3365         IActiveIMMIME* This,
   3366         HIMC hIMC);
   3367 
   3368     HRESULT (STDMETHODCALLTYPE *GetIMCLockCount)(
   3369         IActiveIMMIME* This,
   3370         HIMC hIMC,
   3371         DWORD *pdwLockCount);
   3372 
   3373     HRESULT (STDMETHODCALLTYPE *CreateIMCC)(
   3374         IActiveIMMIME* This,
   3375         DWORD dwSize,
   3376         HIMCC *phIMCC);
   3377 
   3378     HRESULT (STDMETHODCALLTYPE *DestroyIMCC)(
   3379         IActiveIMMIME* This,
   3380         HIMCC hIMCC);
   3381 
   3382     HRESULT (STDMETHODCALLTYPE *LockIMCC)(
   3383         IActiveIMMIME* This,
   3384         HIMCC hIMCC,
   3385         void **ppv);
   3386 
   3387     HRESULT (STDMETHODCALLTYPE *UnlockIMCC)(
   3388         IActiveIMMIME* This,
   3389         HIMCC hIMCC);
   3390 
   3391     HRESULT (STDMETHODCALLTYPE *ReSizeIMCC)(
   3392         IActiveIMMIME* This,
   3393         HIMCC hIMCC,
   3394         DWORD dwSize,
   3395         HIMCC *phIMCC);
   3396 
   3397     HRESULT (STDMETHODCALLTYPE *GetIMCCSize)(
   3398         IActiveIMMIME* This,
   3399         HIMCC hIMCC,
   3400         DWORD *pdwSize);
   3401 
   3402     HRESULT (STDMETHODCALLTYPE *GetIMCCLockCount)(
   3403         IActiveIMMIME* This,
   3404         HIMCC hIMCC,
   3405         DWORD *pdwLockCount);
   3406 
   3407     HRESULT (STDMETHODCALLTYPE *GetHotKey)(
   3408         IActiveIMMIME* This,
   3409         DWORD dwHotKeyID,
   3410         UINT *puModifiers,
   3411         UINT *puVKey,
   3412         HKL *phKL);
   3413 
   3414     HRESULT (STDMETHODCALLTYPE *SetHotKey)(
   3415         IActiveIMMIME* This,
   3416         DWORD dwHotKeyID,
   3417         UINT uModifiers,
   3418         UINT uVKey,
   3419         HKL hKL);
   3420 
   3421     HRESULT (STDMETHODCALLTYPE *CreateSoftKeyboard)(
   3422         IActiveIMMIME* This,
   3423         UINT uType,
   3424         HWND hOwner,
   3425         int x,
   3426         int y,
   3427         HWND *phSoftKbdWnd);
   3428 
   3429     HRESULT (STDMETHODCALLTYPE *DestroySoftKeyboard)(
   3430         IActiveIMMIME* This,
   3431         HWND hSoftKbdWnd);
   3432 
   3433     HRESULT (STDMETHODCALLTYPE *ShowSoftKeyboard)(
   3434         IActiveIMMIME* This,
   3435         HWND hSoftKbdWnd,
   3436         int nCmdShow);
   3437 
   3438     HRESULT (STDMETHODCALLTYPE *GetCodePageA)(
   3439         IActiveIMMIME* This,
   3440         HKL hKL,
   3441         UINT *uCodePage);
   3442 
   3443     HRESULT (STDMETHODCALLTYPE *GetLangId)(
   3444         IActiveIMMIME* This,
   3445         HKL hKL,
   3446         LANGID *plid);
   3447 
   3448     HRESULT (STDMETHODCALLTYPE *KeybdEvent)(
   3449         IActiveIMMIME* This,
   3450         LANGID lgidIME,
   3451         BYTE bVk,
   3452         BYTE bScan,
   3453         DWORD dwFlags,
   3454         DWORD dwExtraInfo);
   3455 
   3456     HRESULT (STDMETHODCALLTYPE *LockModal)(
   3457         IActiveIMMIME* This);
   3458 
   3459     HRESULT (STDMETHODCALLTYPE *UnlockModal)(
   3460         IActiveIMMIME* This);
   3461 
   3462     HRESULT (STDMETHODCALLTYPE *AssociateContextEx)(
   3463         IActiveIMMIME* This,
   3464         HWND hWnd,
   3465         HIMC hIMC,
   3466         DWORD dwFlags);
   3467 
   3468     HRESULT (STDMETHODCALLTYPE *DisableIME)(
   3469         IActiveIMMIME* This,
   3470         DWORD idThread);
   3471 
   3472     HRESULT (STDMETHODCALLTYPE *GetImeMenuItemsA)(
   3473         IActiveIMMIME* This,
   3474         HIMC hIMC,
   3475         DWORD dwFlags,
   3476         DWORD dwType,
   3477         IMEMENUITEMINFOA *pImeParentMenu,
   3478         IMEMENUITEMINFOA *pImeMenu,
   3479         DWORD dwSize,
   3480         DWORD *pdwResult);
   3481 
   3482     HRESULT (STDMETHODCALLTYPE *GetImeMenuItemsW)(
   3483         IActiveIMMIME* This,
   3484         HIMC hIMC,
   3485         DWORD dwFlags,
   3486         DWORD dwType,
   3487         IMEMENUITEMINFOW *pImeParentMenu,
   3488         IMEMENUITEMINFOW *pImeMenu,
   3489         DWORD dwSize,
   3490         DWORD *pdwResult);
   3491 
   3492     HRESULT (STDMETHODCALLTYPE *EnumInputContext)(
   3493         IActiveIMMIME* This,
   3494         DWORD idThread,
   3495         IEnumInputContext **ppEnum);
   3496 
   3497     HRESULT (STDMETHODCALLTYPE *RequestMessageA)(
   3498         IActiveIMMIME* This,
   3499         HIMC hIMC,
   3500         WPARAM wParam,
   3501         LPARAM lParam,
   3502         LRESULT *plResult);
   3503 
   3504     HRESULT (STDMETHODCALLTYPE *RequestMessageW)(
   3505         IActiveIMMIME* This,
   3506         HIMC hIMC,
   3507         WPARAM wParam,
   3508         LPARAM lParam,
   3509         LRESULT *plResult);
   3510 
   3511     HRESULT (STDMETHODCALLTYPE *SendIMCA)(
   3512         IActiveIMMIME* This,
   3513         HWND hWnd,
   3514         UINT uMsg,
   3515         WPARAM wParam,
   3516         LPARAM lParam,
   3517         LRESULT *plResult);
   3518 
   3519     HRESULT (STDMETHODCALLTYPE *SendIMCW)(
   3520         IActiveIMMIME* This,
   3521         HWND hWnd,
   3522         UINT uMsg,
   3523         WPARAM wParam,
   3524         LPARAM lParam,
   3525         LRESULT *plResult);
   3526 
   3527     HRESULT (STDMETHODCALLTYPE *IsSleeping)(
   3528         IActiveIMMIME* This);
   3529 
   3530     END_INTERFACE
   3531 } IActiveIMMIMEVtbl;
   3532 interface IActiveIMMIME {
   3533     CONST_VTBL IActiveIMMIMEVtbl* lpVtbl;
   3534 };
   3535 
   3536 #ifdef COBJMACROS
   3537 #ifndef WIDL_C_INLINE_WRAPPERS
   3538 /*** IUnknown methods ***/
   3539 #define IActiveIMMIME_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
   3540 #define IActiveIMMIME_AddRef(This) (This)->lpVtbl->AddRef(This)
   3541 #define IActiveIMMIME_Release(This) (This)->lpVtbl->Release(This)
   3542 /*** IActiveIMMIME methods ***/
   3543 #define IActiveIMMIME_AssociateContext(This,hWnd,hIME,phPrev) (This)->lpVtbl->AssociateContext(This,hWnd,hIME,phPrev)
   3544 #define IActiveIMMIME_ConfigureIMEA(This,hKL,hWnd,dwMode,pData) (This)->lpVtbl->ConfigureIMEA(This,hKL,hWnd,dwMode,pData)
   3545 #define IActiveIMMIME_ConfigureIMEW(This,hKL,hWnd,dwMode,pData) (This)->lpVtbl->ConfigureIMEW(This,hKL,hWnd,dwMode,pData)
   3546 #define IActiveIMMIME_CreateContext(This,phIMC) (This)->lpVtbl->CreateContext(This,phIMC)
   3547 #define IActiveIMMIME_DestroyContext(This,hIME) (This)->lpVtbl->DestroyContext(This,hIME)
   3548 #define IActiveIMMIME_EnumRegisterWordA(This,hKL,szReading,dwStyle,szRegister,pData,pEnum) (This)->lpVtbl->EnumRegisterWordA(This,hKL,szReading,dwStyle,szRegister,pData,pEnum)
   3549 #define IActiveIMMIME_EnumRegisterWordW(This,hKL,szReading,dwStyle,szRegister,pData,pEnum) (This)->lpVtbl->EnumRegisterWordW(This,hKL,szReading,dwStyle,szRegister,pData,pEnum)
   3550 #define IActiveIMMIME_EscapeA(This,hKL,hIMC,uEscape,pData,plResult) (This)->lpVtbl->EscapeA(This,hKL,hIMC,uEscape,pData,plResult)
   3551 #define IActiveIMMIME_EscapeW(This,hKL,hIMC,uEscape,pData,plResult) (This)->lpVtbl->EscapeW(This,hKL,hIMC,uEscape,pData,plResult)
   3552 #define IActiveIMMIME_GetCandidateListA(This,hIMC,dwIndex,uBufLen,pCandList,puCopied) (This)->lpVtbl->GetCandidateListA(This,hIMC,dwIndex,uBufLen,pCandList,puCopied)
   3553 #define IActiveIMMIME_GetCandidateListW(This,hIMC,dwIndex,uBufLen,pCandList,puCopied) (This)->lpVtbl->GetCandidateListW(This,hIMC,dwIndex,uBufLen,pCandList,puCopied)
   3554 #define IActiveIMMIME_GetCandidateListCountA(This,hIMC,pdwListSize,pdwBufLen) (This)->lpVtbl->GetCandidateListCountA(This,hIMC,pdwListSize,pdwBufLen)
   3555 #define IActiveIMMIME_GetCandidateListCountW(This,hIMC,pdwListSize,pdwBufLen) (This)->lpVtbl->GetCandidateListCountW(This,hIMC,pdwListSize,pdwBufLen)
   3556 #define IActiveIMMIME_GetCandidateWindow(This,hIMC,dwIndex,pCandidate) (This)->lpVtbl->GetCandidateWindow(This,hIMC,dwIndex,pCandidate)
   3557 #define IActiveIMMIME_GetCompositionFontA(This,hIMC,plf) (This)->lpVtbl->GetCompositionFontA(This,hIMC,plf)
   3558 #define IActiveIMMIME_GetCompositionFontW(This,hIMC,plf) (This)->lpVtbl->GetCompositionFontW(This,hIMC,plf)
   3559 #define IActiveIMMIME_GetCompositionStringA(This,hIMC,dwIndex,dwBufLen,plCopied,pBuf) (This)->lpVtbl->GetCompositionStringA(This,hIMC,dwIndex,dwBufLen,plCopied,pBuf)
   3560 #define IActiveIMMIME_GetCompositionStringW(This,hIMC,dwIndex,dwBufLen,plCopied,pBuf) (This)->lpVtbl->GetCompositionStringW(This,hIMC,dwIndex,dwBufLen,plCopied,pBuf)
   3561 #define IActiveIMMIME_GetCompositionWindow(This,hIMC,pCompForm) (This)->lpVtbl->GetCompositionWindow(This,hIMC,pCompForm)
   3562 #define IActiveIMMIME_GetContext(This,hWnd,phIMC) (This)->lpVtbl->GetContext(This,hWnd,phIMC)
   3563 #define IActiveIMMIME_GetConversionListA(This,hKL,hIMC,pSrc,uBufLen,uFlag,pDst,puCopied) (This)->lpVtbl->GetConversionListA(This,hKL,hIMC,pSrc,uBufLen,uFlag,pDst,puCopied)
   3564 #define IActiveIMMIME_GetConversionListW(This,hKL,hIMC,pSrc,uBufLen,uFlag,pDst,puCopied) (This)->lpVtbl->GetConversionListW(This,hKL,hIMC,pSrc,uBufLen,uFlag,pDst,puCopied)
   3565 #define IActiveIMMIME_GetConversionStatus(This,hIMC,pfdwConversion,pfdwSentence) (This)->lpVtbl->GetConversionStatus(This,hIMC,pfdwConversion,pfdwSentence)
   3566 #define IActiveIMMIME_GetDefaultIMEWnd(This,hWnd,phDefWnd) (This)->lpVtbl->GetDefaultIMEWnd(This,hWnd,phDefWnd)
   3567 #define IActiveIMMIME_GetDescriptionA(This,hKL,uBufLen,szDescription,puCopied) (This)->lpVtbl->GetDescriptionA(This,hKL,uBufLen,szDescription,puCopied)
   3568 #define IActiveIMMIME_GetDescriptionW(This,hKL,uBufLen,szDescription,puCopied) (This)->lpVtbl->GetDescriptionW(This,hKL,uBufLen,szDescription,puCopied)
   3569 #define IActiveIMMIME_GetGuideLineA(This,hIMC,dwIndex,dwBufLen,pBuf,pdwResult) (This)->lpVtbl->GetGuideLineA(This,hIMC,dwIndex,dwBufLen,pBuf,pdwResult)
   3570 #define IActiveIMMIME_GetGuideLineW(This,hIMC,dwIndex,dwBufLen,pBuf,pdwResult) (This)->lpVtbl->GetGuideLineW(This,hIMC,dwIndex,dwBufLen,pBuf,pdwResult)
   3571 #define IActiveIMMIME_GetIMEFileNameA(This,hKL,uBufLen,szFileName,puCopied) (This)->lpVtbl->GetIMEFileNameA(This,hKL,uBufLen,szFileName,puCopied)
   3572 #define IActiveIMMIME_GetIMEFileNameW(This,hKL,uBufLen,szFileName,puCopied) (This)->lpVtbl->GetIMEFileNameW(This,hKL,uBufLen,szFileName,puCopied)
   3573 #define IActiveIMMIME_GetOpenStatus(This,hIMC) (This)->lpVtbl->GetOpenStatus(This,hIMC)
   3574 #define IActiveIMMIME_GetProperty(This,hKL,fdwIndex,pdwProperty) (This)->lpVtbl->GetProperty(This,hKL,fdwIndex,pdwProperty)
   3575 #define IActiveIMMIME_GetRegisterWordStyleA(This,hKL,nItem,pStyleBuf,puCopied) (This)->lpVtbl->GetRegisterWordStyleA(This,hKL,nItem,pStyleBuf,puCopied)
   3576 #define IActiveIMMIME_GetRegisterWordStyleW(This,hKL,nItem,pStyleBuf,puCopied) (This)->lpVtbl->GetRegisterWordStyleW(This,hKL,nItem,pStyleBuf,puCopied)
   3577 #define IActiveIMMIME_GetStatusWindowPos(This,hIMC,pptPos) (This)->lpVtbl->GetStatusWindowPos(This,hIMC,pptPos)
   3578 #define IActiveIMMIME_GetVirtualKey(This,hWnd,puVirtualKey) (This)->lpVtbl->GetVirtualKey(This,hWnd,puVirtualKey)
   3579 #define IActiveIMMIME_InstallIMEA(This,szIMEFileName,szLayoutText,phKL) (This)->lpVtbl->InstallIMEA(This,szIMEFileName,szLayoutText,phKL)
   3580 #define IActiveIMMIME_InstallIMEW(This,szIMEFileName,szLayoutText,phKL) (This)->lpVtbl->InstallIMEW(This,szIMEFileName,szLayoutText,phKL)
   3581 #define IActiveIMMIME_IsIME(This,hKL) (This)->lpVtbl->IsIME(This,hKL)
   3582 #define IActiveIMMIME_IsUIMessageA(This,hWndIME,msg,wParam,lParam) (This)->lpVtbl->IsUIMessageA(This,hWndIME,msg,wParam,lParam)
   3583 #define IActiveIMMIME_IsUIMessageW(This,hWndIME,msg,wParam,lParam) (This)->lpVtbl->IsUIMessageW(This,hWndIME,msg,wParam,lParam)
   3584 #define IActiveIMMIME_NotifyIME(This,hIMC,dwAction,dwIndex,dwValue) (This)->lpVtbl->NotifyIME(This,hIMC,dwAction,dwIndex,dwValue)
   3585 #define IActiveIMMIME_RegisterWordA(This,hKL,szReading,dwStyle,szRegister) (This)->lpVtbl->RegisterWordA(This,hKL,szReading,dwStyle,szRegister)
   3586 #define IActiveIMMIME_RegisterWordW(This,hKL,szReading,dwStyle,szRegister) (This)->lpVtbl->RegisterWordW(This,hKL,szReading,dwStyle,szRegister)
   3587 #define IActiveIMMIME_ReleaseContext(This,hWnd,hIMC) (This)->lpVtbl->ReleaseContext(This,hWnd,hIMC)
   3588 #define IActiveIMMIME_SetCandidateWindow(This,hIMC,pCandidate) (This)->lpVtbl->SetCandidateWindow(This,hIMC,pCandidate)
   3589 #define IActiveIMMIME_SetCompositionFontA(This,hIMC,plf) (This)->lpVtbl->SetCompositionFontA(This,hIMC,plf)
   3590 #define IActiveIMMIME_SetCompositionFontW(This,hIMC,plf) (This)->lpVtbl->SetCompositionFontW(This,hIMC,plf)
   3591 #define IActiveIMMIME_SetCompositionStringA(This,hIMC,dwIndex,pComp,dwCompLen,pRead,dwReadLen) (This)->lpVtbl->SetCompositionStringA(This,hIMC,dwIndex,pComp,dwCompLen,pRead,dwReadLen)
   3592 #define IActiveIMMIME_SetCompositionStringW(This,hIMC,dwIndex,pComp,dwCompLen,pRead,dwReadLen) (This)->lpVtbl->SetCompositionStringW(This,hIMC,dwIndex,pComp,dwCompLen,pRead,dwReadLen)
   3593 #define IActiveIMMIME_SetCompositionWindow(This,hIMC,pCompForm) (This)->lpVtbl->SetCompositionWindow(This,hIMC,pCompForm)
   3594 #define IActiveIMMIME_SetConversionStatus(This,hIMC,fdwConversion,fdwSentence) (This)->lpVtbl->SetConversionStatus(This,hIMC,fdwConversion,fdwSentence)
   3595 #define IActiveIMMIME_SetOpenStatus(This,hIMC,fOpen) (This)->lpVtbl->SetOpenStatus(This,hIMC,fOpen)
   3596 #define IActiveIMMIME_SetStatusWindowPos(This,hIMC,pptPos) (This)->lpVtbl->SetStatusWindowPos(This,hIMC,pptPos)
   3597 #define IActiveIMMIME_SimulateHotKey(This,hWnd,dwHotKeyID) (This)->lpVtbl->SimulateHotKey(This,hWnd,dwHotKeyID)
   3598 #define IActiveIMMIME_UnregisterWordA(This,hKL,szReading,dwStyle,szUnregister) (This)->lpVtbl->UnregisterWordA(This,hKL,szReading,dwStyle,szUnregister)
   3599 #define IActiveIMMIME_UnregisterWordW(This,hKL,szReading,dwStyle,szUnregister) (This)->lpVtbl->UnregisterWordW(This,hKL,szReading,dwStyle,szUnregister)
   3600 #define IActiveIMMIME_GenerateMessage(This,hIMC) (This)->lpVtbl->GenerateMessage(This,hIMC)
   3601 #define IActiveIMMIME_LockIMC(This,hIMC,ppIMC) (This)->lpVtbl->LockIMC(This,hIMC,ppIMC)
   3602 #define IActiveIMMIME_UnlockIMC(This,hIMC) (This)->lpVtbl->UnlockIMC(This,hIMC)
   3603 #define IActiveIMMIME_GetIMCLockCount(This,hIMC,pdwLockCount) (This)->lpVtbl->GetIMCLockCount(This,hIMC,pdwLockCount)
   3604 #define IActiveIMMIME_CreateIMCC(This,dwSize,phIMCC) (This)->lpVtbl->CreateIMCC(This,dwSize,phIMCC)
   3605 #define IActiveIMMIME_DestroyIMCC(This,hIMCC) (This)->lpVtbl->DestroyIMCC(This,hIMCC)
   3606 #define IActiveIMMIME_LockIMCC(This,hIMCC,ppv) (This)->lpVtbl->LockIMCC(This,hIMCC,ppv)
   3607 #define IActiveIMMIME_UnlockIMCC(This,hIMCC) (This)->lpVtbl->UnlockIMCC(This,hIMCC)
   3608 #define IActiveIMMIME_ReSizeIMCC(This,hIMCC,dwSize,phIMCC) (This)->lpVtbl->ReSizeIMCC(This,hIMCC,dwSize,phIMCC)
   3609 #define IActiveIMMIME_GetIMCCSize(This,hIMCC,pdwSize) (This)->lpVtbl->GetIMCCSize(This,hIMCC,pdwSize)
   3610 #define IActiveIMMIME_GetIMCCLockCount(This,hIMCC,pdwLockCount) (This)->lpVtbl->GetIMCCLockCount(This,hIMCC,pdwLockCount)
   3611 #define IActiveIMMIME_GetHotKey(This,dwHotKeyID,puModifiers,puVKey,phKL) (This)->lpVtbl->GetHotKey(This,dwHotKeyID,puModifiers,puVKey,phKL)
   3612 #define IActiveIMMIME_SetHotKey(This,dwHotKeyID,uModifiers,uVKey,hKL) (This)->lpVtbl->SetHotKey(This,dwHotKeyID,uModifiers,uVKey,hKL)
   3613 #define IActiveIMMIME_CreateSoftKeyboard(This,uType,hOwner,x,y,phSoftKbdWnd) (This)->lpVtbl->CreateSoftKeyboard(This,uType,hOwner,x,y,phSoftKbdWnd)
   3614 #define IActiveIMMIME_DestroySoftKeyboard(This,hSoftKbdWnd) (This)->lpVtbl->DestroySoftKeyboard(This,hSoftKbdWnd)
   3615 #define IActiveIMMIME_ShowSoftKeyboard(This,hSoftKbdWnd,nCmdShow) (This)->lpVtbl->ShowSoftKeyboard(This,hSoftKbdWnd,nCmdShow)
   3616 #define IActiveIMMIME_GetCodePageA(This,hKL,uCodePage) (This)->lpVtbl->GetCodePageA(This,hKL,uCodePage)
   3617 #define IActiveIMMIME_GetLangId(This,hKL,plid) (This)->lpVtbl->GetLangId(This,hKL,plid)
   3618 #define IActiveIMMIME_KeybdEvent(This,lgidIME,bVk,bScan,dwFlags,dwExtraInfo) (This)->lpVtbl->KeybdEvent(This,lgidIME,bVk,bScan,dwFlags,dwExtraInfo)
   3619 #define IActiveIMMIME_LockModal(This) (This)->lpVtbl->LockModal(This)
   3620 #define IActiveIMMIME_UnlockModal(This) (This)->lpVtbl->UnlockModal(This)
   3621 #define IActiveIMMIME_AssociateContextEx(This,hWnd,hIMC,dwFlags) (This)->lpVtbl->AssociateContextEx(This,hWnd,hIMC,dwFlags)
   3622 #define IActiveIMMIME_DisableIME(This,idThread) (This)->lpVtbl->DisableIME(This,idThread)
   3623 #define IActiveIMMIME_GetImeMenuItemsA(This,hIMC,dwFlags,dwType,pImeParentMenu,pImeMenu,dwSize,pdwResult) (This)->lpVtbl->GetImeMenuItemsA(This,hIMC,dwFlags,dwType,pImeParentMenu,pImeMenu,dwSize,pdwResult)
   3624 #define IActiveIMMIME_GetImeMenuItemsW(This,hIMC,dwFlags,dwType,pImeParentMenu,pImeMenu,dwSize,pdwResult) (This)->lpVtbl->GetImeMenuItemsW(This,hIMC,dwFlags,dwType,pImeParentMenu,pImeMenu,dwSize,pdwResult)
   3625 #define IActiveIMMIME_EnumInputContext(This,idThread,ppEnum) (This)->lpVtbl->EnumInputContext(This,idThread,ppEnum)
   3626 #define IActiveIMMIME_RequestMessageA(This,hIMC,wParam,lParam,plResult) (This)->lpVtbl->RequestMessageA(This,hIMC,wParam,lParam,plResult)
   3627 #define IActiveIMMIME_RequestMessageW(This,hIMC,wParam,lParam,plResult) (This)->lpVtbl->RequestMessageW(This,hIMC,wParam,lParam,plResult)
   3628 #define IActiveIMMIME_SendIMCA(This,hWnd,uMsg,wParam,lParam,plResult) (This)->lpVtbl->SendIMCA(This,hWnd,uMsg,wParam,lParam,plResult)
   3629 #define IActiveIMMIME_SendIMCW(This,hWnd,uMsg,wParam,lParam,plResult) (This)->lpVtbl->SendIMCW(This,hWnd,uMsg,wParam,lParam,plResult)
   3630 #define IActiveIMMIME_IsSleeping(This) (This)->lpVtbl->IsSleeping(This)
   3631 #else
   3632 /*** IUnknown methods ***/
   3633 static FORCEINLINE HRESULT IActiveIMMIME_QueryInterface(IActiveIMMIME* This,REFIID riid,void **ppvObject) {
   3634     return This->lpVtbl->QueryInterface(This,riid,ppvObject);
   3635 }
   3636 static FORCEINLINE ULONG IActiveIMMIME_AddRef(IActiveIMMIME* This) {
   3637     return This->lpVtbl->AddRef(This);
   3638 }
   3639 static FORCEINLINE ULONG IActiveIMMIME_Release(IActiveIMMIME* This) {
   3640     return This->lpVtbl->Release(This);
   3641 }
   3642 /*** IActiveIMMIME methods ***/
   3643 static FORCEINLINE HRESULT IActiveIMMIME_AssociateContext(IActiveIMMIME* This,HWND hWnd,HIMC hIME,HIMC *phPrev) {
   3644     return This->lpVtbl->AssociateContext(This,hWnd,hIME,phPrev);
   3645 }
   3646 static FORCEINLINE HRESULT IActiveIMMIME_ConfigureIMEA(IActiveIMMIME* This,HKL hKL,HWND hWnd,DWORD dwMode,REGISTERWORDA *pData) {
   3647     return This->lpVtbl->ConfigureIMEA(This,hKL,hWnd,dwMode,pData);
   3648 }
   3649 static FORCEINLINE HRESULT IActiveIMMIME_ConfigureIMEW(IActiveIMMIME* This,HKL hKL,HWND hWnd,DWORD dwMode,REGISTERWORDW *pData) {
   3650     return This->lpVtbl->ConfigureIMEW(This,hKL,hWnd,dwMode,pData);
   3651 }
   3652 static FORCEINLINE HRESULT IActiveIMMIME_CreateContext(IActiveIMMIME* This,HIMC *phIMC) {
   3653     return This->lpVtbl->CreateContext(This,phIMC);
   3654 }
   3655 static FORCEINLINE HRESULT IActiveIMMIME_DestroyContext(IActiveIMMIME* This,HIMC hIME) {
   3656     return This->lpVtbl->DestroyContext(This,hIME);
   3657 }
   3658 static FORCEINLINE HRESULT IActiveIMMIME_EnumRegisterWordA(IActiveIMMIME* This,HKL hKL,LPSTR szReading,DWORD dwStyle,LPSTR szRegister,LPVOID pData,IEnumRegisterWordA **pEnum) {
   3659     return This->lpVtbl->EnumRegisterWordA(This,hKL,szReading,dwStyle,szRegister,pData,pEnum);
   3660 }
   3661 static FORCEINLINE HRESULT IActiveIMMIME_EnumRegisterWordW(IActiveIMMIME* This,HKL hKL,LPWSTR szReading,DWORD dwStyle,LPWSTR szRegister,LPVOID pData,IEnumRegisterWordW **pEnum) {
   3662     return This->lpVtbl->EnumRegisterWordW(This,hKL,szReading,dwStyle,szRegister,pData,pEnum);
   3663 }
   3664 static FORCEINLINE HRESULT IActiveIMMIME_EscapeA(IActiveIMMIME* This,HKL hKL,HIMC hIMC,UINT uEscape,LPVOID pData,LRESULT *plResult) {
   3665     return This->lpVtbl->EscapeA(This,hKL,hIMC,uEscape,pData,plResult);
   3666 }
   3667 static FORCEINLINE HRESULT IActiveIMMIME_EscapeW(IActiveIMMIME* This,HKL hKL,HIMC hIMC,UINT uEscape,LPVOID pData,LRESULT *plResult) {
   3668     return This->lpVtbl->EscapeW(This,hKL,hIMC,uEscape,pData,plResult);
   3669 }
   3670 static FORCEINLINE HRESULT IActiveIMMIME_GetCandidateListA(IActiveIMMIME* This,HIMC hIMC,DWORD dwIndex,UINT uBufLen,CANDIDATELIST *pCandList,UINT *puCopied) {
   3671     return This->lpVtbl->GetCandidateListA(This,hIMC,dwIndex,uBufLen,pCandList,puCopied);
   3672 }
   3673 static FORCEINLINE HRESULT IActiveIMMIME_GetCandidateListW(IActiveIMMIME* This,HIMC hIMC,DWORD dwIndex,UINT uBufLen,CANDIDATELIST *pCandList,UINT *puCopied) {
   3674     return This->lpVtbl->GetCandidateListW(This,hIMC,dwIndex,uBufLen,pCandList,puCopied);
   3675 }
   3676 static FORCEINLINE HRESULT IActiveIMMIME_GetCandidateListCountA(IActiveIMMIME* This,HIMC hIMC,DWORD *pdwListSize,DWORD *pdwBufLen) {
   3677     return This->lpVtbl->GetCandidateListCountA(This,hIMC,pdwListSize,pdwBufLen);
   3678 }
   3679 static FORCEINLINE HRESULT IActiveIMMIME_GetCandidateListCountW(IActiveIMMIME* This,HIMC hIMC,DWORD *pdwListSize,DWORD *pdwBufLen) {
   3680     return This->lpVtbl->GetCandidateListCountW(This,hIMC,pdwListSize,pdwBufLen);
   3681 }
   3682 static FORCEINLINE HRESULT IActiveIMMIME_GetCandidateWindow(IActiveIMMIME* This,HIMC hIMC,DWORD dwIndex,CANDIDATEFORM *pCandidate) {
   3683     return This->lpVtbl->GetCandidateWindow(This,hIMC,dwIndex,pCandidate);
   3684 }
   3685 static FORCEINLINE HRESULT IActiveIMMIME_GetCompositionFontA(IActiveIMMIME* This,HIMC hIMC,LOGFONTA *plf) {
   3686     return This->lpVtbl->GetCompositionFontA(This,hIMC,plf);
   3687 }
   3688 static FORCEINLINE HRESULT IActiveIMMIME_GetCompositionFontW(IActiveIMMIME* This,HIMC hIMC,LOGFONTW *plf) {
   3689     return This->lpVtbl->GetCompositionFontW(This,hIMC,plf);
   3690 }
   3691 static FORCEINLINE HRESULT IActiveIMMIME_GetCompositionStringA(IActiveIMMIME* This,HIMC hIMC,DWORD dwIndex,DWORD dwBufLen,LONG *plCopied,LPVOID pBuf) {
   3692     return This->lpVtbl->GetCompositionStringA(This,hIMC,dwIndex,dwBufLen,plCopied,pBuf);
   3693 }
   3694 static FORCEINLINE HRESULT IActiveIMMIME_GetCompositionStringW(IActiveIMMIME* This,HIMC hIMC,DWORD dwIndex,DWORD dwBufLen,LONG *plCopied,LPVOID pBuf) {
   3695     return This->lpVtbl->GetCompositionStringW(This,hIMC,dwIndex,dwBufLen,plCopied,pBuf);
   3696 }
   3697 static FORCEINLINE HRESULT IActiveIMMIME_GetCompositionWindow(IActiveIMMIME* This,HIMC hIMC,COMPOSITIONFORM *pCompForm) {
   3698     return This->lpVtbl->GetCompositionWindow(This,hIMC,pCompForm);
   3699 }
   3700 static FORCEINLINE HRESULT IActiveIMMIME_GetContext(IActiveIMMIME* This,HWND hWnd,HIMC *phIMC) {
   3701     return This->lpVtbl->GetContext(This,hWnd,phIMC);
   3702 }
   3703 static FORCEINLINE HRESULT IActiveIMMIME_GetConversionListA(IActiveIMMIME* This,HKL hKL,HIMC hIMC,LPSTR pSrc,UINT uBufLen,UINT uFlag,CANDIDATELIST *pDst,UINT *puCopied) {
   3704     return This->lpVtbl->GetConversionListA(This,hKL,hIMC,pSrc,uBufLen,uFlag,pDst,puCopied);
   3705 }
   3706 static FORCEINLINE HRESULT IActiveIMMIME_GetConversionListW(IActiveIMMIME* This,HKL hKL,HIMC hIMC,LPWSTR pSrc,UINT uBufLen,UINT uFlag,CANDIDATELIST *pDst,UINT *puCopied) {
   3707     return This->lpVtbl->GetConversionListW(This,hKL,hIMC,pSrc,uBufLen,uFlag,pDst,puCopied);
   3708 }
   3709 static FORCEINLINE HRESULT IActiveIMMIME_GetConversionStatus(IActiveIMMIME* This,HIMC hIMC,DWORD *pfdwConversion,DWORD *pfdwSentence) {
   3710     return This->lpVtbl->GetConversionStatus(This,hIMC,pfdwConversion,pfdwSentence);
   3711 }
   3712 static FORCEINLINE HRESULT IActiveIMMIME_GetDefaultIMEWnd(IActiveIMMIME* This,HWND hWnd,HWND *phDefWnd) {
   3713     return This->lpVtbl->GetDefaultIMEWnd(This,hWnd,phDefWnd);
   3714 }
   3715 static FORCEINLINE HRESULT IActiveIMMIME_GetDescriptionA(IActiveIMMIME* This,HKL hKL,UINT uBufLen,LPSTR szDescription,UINT *puCopied) {
   3716     return This->lpVtbl->GetDescriptionA(This,hKL,uBufLen,szDescription,puCopied);
   3717 }
   3718 static FORCEINLINE HRESULT IActiveIMMIME_GetDescriptionW(IActiveIMMIME* This,HKL hKL,UINT uBufLen,LPWSTR szDescription,UINT *puCopied) {
   3719     return This->lpVtbl->GetDescriptionW(This,hKL,uBufLen,szDescription,puCopied);
   3720 }
   3721 static FORCEINLINE HRESULT IActiveIMMIME_GetGuideLineA(IActiveIMMIME* This,HIMC hIMC,DWORD dwIndex,DWORD dwBufLen,LPSTR pBuf,DWORD *pdwResult) {
   3722     return This->lpVtbl->GetGuideLineA(This,hIMC,dwIndex,dwBufLen,pBuf,pdwResult);
   3723 }
   3724 static FORCEINLINE HRESULT IActiveIMMIME_GetGuideLineW(IActiveIMMIME* This,HIMC hIMC,DWORD dwIndex,DWORD dwBufLen,LPWSTR pBuf,DWORD *pdwResult) {
   3725     return This->lpVtbl->GetGuideLineW(This,hIMC,dwIndex,dwBufLen,pBuf,pdwResult);
   3726 }
   3727 static FORCEINLINE HRESULT IActiveIMMIME_GetIMEFileNameA(IActiveIMMIME* This,HKL hKL,UINT uBufLen,LPSTR szFileName,UINT *puCopied) {
   3728     return This->lpVtbl->GetIMEFileNameA(This,hKL,uBufLen,szFileName,puCopied);
   3729 }
   3730 static FORCEINLINE HRESULT IActiveIMMIME_GetIMEFileNameW(IActiveIMMIME* This,HKL hKL,UINT uBufLen,LPWSTR szFileName,UINT *puCopied) {
   3731     return This->lpVtbl->GetIMEFileNameW(This,hKL,uBufLen,szFileName,puCopied);
   3732 }
   3733 static FORCEINLINE HRESULT IActiveIMMIME_GetOpenStatus(IActiveIMMIME* This,HIMC hIMC) {
   3734     return This->lpVtbl->GetOpenStatus(This,hIMC);
   3735 }
   3736 static FORCEINLINE HRESULT IActiveIMMIME_GetProperty(IActiveIMMIME* This,HKL hKL,DWORD fdwIndex,DWORD *pdwProperty) {
   3737     return This->lpVtbl->GetProperty(This,hKL,fdwIndex,pdwProperty);
   3738 }
   3739 static FORCEINLINE HRESULT IActiveIMMIME_GetRegisterWordStyleA(IActiveIMMIME* This,HKL hKL,UINT nItem,STYLEBUFA *pStyleBuf,UINT *puCopied) {
   3740     return This->lpVtbl->GetRegisterWordStyleA(This,hKL,nItem,pStyleBuf,puCopied);
   3741 }
   3742 static FORCEINLINE HRESULT IActiveIMMIME_GetRegisterWordStyleW(IActiveIMMIME* This,HKL hKL,UINT nItem,STYLEBUFW *pStyleBuf,UINT *puCopied) {
   3743     return This->lpVtbl->GetRegisterWordStyleW(This,hKL,nItem,pStyleBuf,puCopied);
   3744 }
   3745 static FORCEINLINE HRESULT IActiveIMMIME_GetStatusWindowPos(IActiveIMMIME* This,HIMC hIMC,POINT *pptPos) {
   3746     return This->lpVtbl->GetStatusWindowPos(This,hIMC,pptPos);
   3747 }
   3748 static FORCEINLINE HRESULT IActiveIMMIME_GetVirtualKey(IActiveIMMIME* This,HWND hWnd,UINT *puVirtualKey) {
   3749     return This->lpVtbl->GetVirtualKey(This,hWnd,puVirtualKey);
   3750 }
   3751 static FORCEINLINE HRESULT IActiveIMMIME_InstallIMEA(IActiveIMMIME* This,LPSTR szIMEFileName,LPSTR szLayoutText,HKL *phKL) {
   3752     return This->lpVtbl->InstallIMEA(This,szIMEFileName,szLayoutText,phKL);
   3753 }
   3754 static FORCEINLINE HRESULT IActiveIMMIME_InstallIMEW(IActiveIMMIME* This,LPWSTR szIMEFileName,LPWSTR szLayoutText,HKL *phKL) {
   3755     return This->lpVtbl->InstallIMEW(This,szIMEFileName,szLayoutText,phKL);
   3756 }
   3757 static FORCEINLINE HRESULT IActiveIMMIME_IsIME(IActiveIMMIME* This,HKL hKL) {
   3758     return This->lpVtbl->IsIME(This,hKL);
   3759 }
   3760 static FORCEINLINE HRESULT IActiveIMMIME_IsUIMessageA(IActiveIMMIME* This,HWND hWndIME,UINT msg,WPARAM wParam,LPARAM lParam) {
   3761     return This->lpVtbl->IsUIMessageA(This,hWndIME,msg,wParam,lParam);
   3762 }
   3763 static FORCEINLINE HRESULT IActiveIMMIME_IsUIMessageW(IActiveIMMIME* This,HWND hWndIME,UINT msg,WPARAM wParam,LPARAM lParam) {
   3764     return This->lpVtbl->IsUIMessageW(This,hWndIME,msg,wParam,lParam);
   3765 }
   3766 static FORCEINLINE HRESULT IActiveIMMIME_NotifyIME(IActiveIMMIME* This,HIMC hIMC,DWORD dwAction,DWORD dwIndex,DWORD dwValue) {
   3767     return This->lpVtbl->NotifyIME(This,hIMC,dwAction,dwIndex,dwValue);
   3768 }
   3769 static FORCEINLINE HRESULT IActiveIMMIME_RegisterWordA(IActiveIMMIME* This,HKL hKL,LPSTR szReading,DWORD dwStyle,LPSTR szRegister) {
   3770     return This->lpVtbl->RegisterWordA(This,hKL,szReading,dwStyle,szRegister);
   3771 }
   3772 static FORCEINLINE HRESULT IActiveIMMIME_RegisterWordW(IActiveIMMIME* This,HKL hKL,LPWSTR szReading,DWORD dwStyle,LPWSTR szRegister) {
   3773     return This->lpVtbl->RegisterWordW(This,hKL,szReading,dwStyle,szRegister);
   3774 }
   3775 static FORCEINLINE HRESULT IActiveIMMIME_ReleaseContext(IActiveIMMIME* This,HWND hWnd,HIMC hIMC) {
   3776     return This->lpVtbl->ReleaseContext(This,hWnd,hIMC);
   3777 }
   3778 static FORCEINLINE HRESULT IActiveIMMIME_SetCandidateWindow(IActiveIMMIME* This,HIMC hIMC,CANDIDATEFORM *pCandidate) {
   3779     return This->lpVtbl->SetCandidateWindow(This,hIMC,pCandidate);
   3780 }
   3781 static FORCEINLINE HRESULT IActiveIMMIME_SetCompositionFontA(IActiveIMMIME* This,HIMC hIMC,LOGFONTA *plf) {
   3782     return This->lpVtbl->SetCompositionFontA(This,hIMC,plf);
   3783 }
   3784 static FORCEINLINE HRESULT IActiveIMMIME_SetCompositionFontW(IActiveIMMIME* This,HIMC hIMC,LOGFONTW *plf) {
   3785     return This->lpVtbl->SetCompositionFontW(This,hIMC,plf);
   3786 }
   3787 static FORCEINLINE HRESULT IActiveIMMIME_SetCompositionStringA(IActiveIMMIME* This,HIMC hIMC,DWORD dwIndex,LPVOID pComp,DWORD dwCompLen,LPVOID pRead,DWORD dwReadLen) {
   3788     return This->lpVtbl->SetCompositionStringA(This,hIMC,dwIndex,pComp,dwCompLen,pRead,dwReadLen);
   3789 }
   3790 static FORCEINLINE HRESULT IActiveIMMIME_SetCompositionStringW(IActiveIMMIME* This,HIMC hIMC,DWORD dwIndex,LPVOID pComp,DWORD dwCompLen,LPVOID pRead,DWORD dwReadLen) {
   3791     return This->lpVtbl->SetCompositionStringW(This,hIMC,dwIndex,pComp,dwCompLen,pRead,dwReadLen);
   3792 }
   3793 static FORCEINLINE HRESULT IActiveIMMIME_SetCompositionWindow(IActiveIMMIME* This,HIMC hIMC,COMPOSITIONFORM *pCompForm) {
   3794     return This->lpVtbl->SetCompositionWindow(This,hIMC,pCompForm);
   3795 }
   3796 static FORCEINLINE HRESULT IActiveIMMIME_SetConversionStatus(IActiveIMMIME* This,HIMC hIMC,DWORD fdwConversion,DWORD fdwSentence) {
   3797     return This->lpVtbl->SetConversionStatus(This,hIMC,fdwConversion,fdwSentence);
   3798 }
   3799 static FORCEINLINE HRESULT IActiveIMMIME_SetOpenStatus(IActiveIMMIME* This,HIMC hIMC,WINBOOL fOpen) {
   3800     return This->lpVtbl->SetOpenStatus(This,hIMC,fOpen);
   3801 }
   3802 static FORCEINLINE HRESULT IActiveIMMIME_SetStatusWindowPos(IActiveIMMIME* This,HIMC hIMC,POINT *pptPos) {
   3803     return This->lpVtbl->SetStatusWindowPos(This,hIMC,pptPos);
   3804 }
   3805 static FORCEINLINE HRESULT IActiveIMMIME_SimulateHotKey(IActiveIMMIME* This,HWND hWnd,DWORD dwHotKeyID) {
   3806     return This->lpVtbl->SimulateHotKey(This,hWnd,dwHotKeyID);
   3807 }
   3808 static FORCEINLINE HRESULT IActiveIMMIME_UnregisterWordA(IActiveIMMIME* This,HKL hKL,LPSTR szReading,DWORD dwStyle,LPSTR szUnregister) {
   3809     return This->lpVtbl->UnregisterWordA(This,hKL,szReading,dwStyle,szUnregister);
   3810 }
   3811 static FORCEINLINE HRESULT IActiveIMMIME_UnregisterWordW(IActiveIMMIME* This,HKL hKL,LPWSTR szReading,DWORD dwStyle,LPWSTR szUnregister) {
   3812     return This->lpVtbl->UnregisterWordW(This,hKL,szReading,dwStyle,szUnregister);
   3813 }
   3814 static FORCEINLINE HRESULT IActiveIMMIME_GenerateMessage(IActiveIMMIME* This,HIMC hIMC) {
   3815     return This->lpVtbl->GenerateMessage(This,hIMC);
   3816 }
   3817 static FORCEINLINE HRESULT IActiveIMMIME_LockIMC(IActiveIMMIME* This,HIMC hIMC,INPUTCONTEXT **ppIMC) {
   3818     return This->lpVtbl->LockIMC(This,hIMC,ppIMC);
   3819 }
   3820 static FORCEINLINE HRESULT IActiveIMMIME_UnlockIMC(IActiveIMMIME* This,HIMC hIMC) {
   3821     return This->lpVtbl->UnlockIMC(This,hIMC);
   3822 }
   3823 static FORCEINLINE HRESULT IActiveIMMIME_GetIMCLockCount(IActiveIMMIME* This,HIMC hIMC,DWORD *pdwLockCount) {
   3824     return This->lpVtbl->GetIMCLockCount(This,hIMC,pdwLockCount);
   3825 }
   3826 static FORCEINLINE HRESULT IActiveIMMIME_CreateIMCC(IActiveIMMIME* This,DWORD dwSize,HIMCC *phIMCC) {
   3827     return This->lpVtbl->CreateIMCC(This,dwSize,phIMCC);
   3828 }
   3829 static FORCEINLINE HRESULT IActiveIMMIME_DestroyIMCC(IActiveIMMIME* This,HIMCC hIMCC) {
   3830     return This->lpVtbl->DestroyIMCC(This,hIMCC);
   3831 }
   3832 static FORCEINLINE HRESULT IActiveIMMIME_LockIMCC(IActiveIMMIME* This,HIMCC hIMCC,void **ppv) {
   3833     return This->lpVtbl->LockIMCC(This,hIMCC,ppv);
   3834 }
   3835 static FORCEINLINE HRESULT IActiveIMMIME_UnlockIMCC(IActiveIMMIME* This,HIMCC hIMCC) {
   3836     return This->lpVtbl->UnlockIMCC(This,hIMCC);
   3837 }
   3838 static FORCEINLINE HRESULT IActiveIMMIME_ReSizeIMCC(IActiveIMMIME* This,HIMCC hIMCC,DWORD dwSize,HIMCC *phIMCC) {
   3839     return This->lpVtbl->ReSizeIMCC(This,hIMCC,dwSize,phIMCC);
   3840 }
   3841 static FORCEINLINE HRESULT IActiveIMMIME_GetIMCCSize(IActiveIMMIME* This,HIMCC hIMCC,DWORD *pdwSize) {
   3842     return This->lpVtbl->GetIMCCSize(This,hIMCC,pdwSize);
   3843 }
   3844 static FORCEINLINE HRESULT IActiveIMMIME_GetIMCCLockCount(IActiveIMMIME* This,HIMCC hIMCC,DWORD *pdwLockCount) {
   3845     return This->lpVtbl->GetIMCCLockCount(This,hIMCC,pdwLockCount);
   3846 }
   3847 static FORCEINLINE HRESULT IActiveIMMIME_GetHotKey(IActiveIMMIME* This,DWORD dwHotKeyID,UINT *puModifiers,UINT *puVKey,HKL *phKL) {
   3848     return This->lpVtbl->GetHotKey(This,dwHotKeyID,puModifiers,puVKey,phKL);
   3849 }
   3850 static FORCEINLINE HRESULT IActiveIMMIME_SetHotKey(IActiveIMMIME* This,DWORD dwHotKeyID,UINT uModifiers,UINT uVKey,HKL hKL) {
   3851     return This->lpVtbl->SetHotKey(This,dwHotKeyID,uModifiers,uVKey,hKL);
   3852 }
   3853 static FORCEINLINE HRESULT IActiveIMMIME_CreateSoftKeyboard(IActiveIMMIME* This,UINT uType,HWND hOwner,int x,int y,HWND *phSoftKbdWnd) {
   3854     return This->lpVtbl->CreateSoftKeyboard(This,uType,hOwner,x,y,phSoftKbdWnd);
   3855 }
   3856 static FORCEINLINE HRESULT IActiveIMMIME_DestroySoftKeyboard(IActiveIMMIME* This,HWND hSoftKbdWnd) {
   3857     return This->lpVtbl->DestroySoftKeyboard(This,hSoftKbdWnd);
   3858 }
   3859 static FORCEINLINE HRESULT IActiveIMMIME_ShowSoftKeyboard(IActiveIMMIME* This,HWND hSoftKbdWnd,int nCmdShow) {
   3860     return This->lpVtbl->ShowSoftKeyboard(This,hSoftKbdWnd,nCmdShow);
   3861 }
   3862 static FORCEINLINE HRESULT IActiveIMMIME_GetCodePageA(IActiveIMMIME* This,HKL hKL,UINT *uCodePage) {
   3863     return This->lpVtbl->GetCodePageA(This,hKL,uCodePage);
   3864 }
   3865 static FORCEINLINE HRESULT IActiveIMMIME_GetLangId(IActiveIMMIME* This,HKL hKL,LANGID *plid) {
   3866     return This->lpVtbl->GetLangId(This,hKL,plid);
   3867 }
   3868 static FORCEINLINE HRESULT IActiveIMMIME_KeybdEvent(IActiveIMMIME* This,LANGID lgidIME,BYTE bVk,BYTE bScan,DWORD dwFlags,DWORD dwExtraInfo) {
   3869     return This->lpVtbl->KeybdEvent(This,lgidIME,bVk,bScan,dwFlags,dwExtraInfo);
   3870 }
   3871 static FORCEINLINE HRESULT IActiveIMMIME_LockModal(IActiveIMMIME* This) {
   3872     return This->lpVtbl->LockModal(This);
   3873 }
   3874 static FORCEINLINE HRESULT IActiveIMMIME_UnlockModal(IActiveIMMIME* This) {
   3875     return This->lpVtbl->UnlockModal(This);
   3876 }
   3877 static FORCEINLINE HRESULT IActiveIMMIME_AssociateContextEx(IActiveIMMIME* This,HWND hWnd,HIMC hIMC,DWORD dwFlags) {
   3878     return This->lpVtbl->AssociateContextEx(This,hWnd,hIMC,dwFlags);
   3879 }
   3880 static FORCEINLINE HRESULT IActiveIMMIME_DisableIME(IActiveIMMIME* This,DWORD idThread) {
   3881     return This->lpVtbl->DisableIME(This,idThread);
   3882 }
   3883 static FORCEINLINE HRESULT IActiveIMMIME_GetImeMenuItemsA(IActiveIMMIME* This,HIMC hIMC,DWORD dwFlags,DWORD dwType,IMEMENUITEMINFOA *pImeParentMenu,IMEMENUITEMINFOA *pImeMenu,DWORD dwSize,DWORD *pdwResult) {
   3884     return This->lpVtbl->GetImeMenuItemsA(This,hIMC,dwFlags,dwType,pImeParentMenu,pImeMenu,dwSize,pdwResult);
   3885 }
   3886 static FORCEINLINE HRESULT IActiveIMMIME_GetImeMenuItemsW(IActiveIMMIME* This,HIMC hIMC,DWORD dwFlags,DWORD dwType,IMEMENUITEMINFOW *pImeParentMenu,IMEMENUITEMINFOW *pImeMenu,DWORD dwSize,DWORD *pdwResult) {
   3887     return This->lpVtbl->GetImeMenuItemsW(This,hIMC,dwFlags,dwType,pImeParentMenu,pImeMenu,dwSize,pdwResult);
   3888 }
   3889 static FORCEINLINE HRESULT IActiveIMMIME_EnumInputContext(IActiveIMMIME* This,DWORD idThread,IEnumInputContext **ppEnum) {
   3890     return This->lpVtbl->EnumInputContext(This,idThread,ppEnum);
   3891 }
   3892 static FORCEINLINE HRESULT IActiveIMMIME_RequestMessageA(IActiveIMMIME* This,HIMC hIMC,WPARAM wParam,LPARAM lParam,LRESULT *plResult) {
   3893     return This->lpVtbl->RequestMessageA(This,hIMC,wParam,lParam,plResult);
   3894 }
   3895 static FORCEINLINE HRESULT IActiveIMMIME_RequestMessageW(IActiveIMMIME* This,HIMC hIMC,WPARAM wParam,LPARAM lParam,LRESULT *plResult) {
   3896     return This->lpVtbl->RequestMessageW(This,hIMC,wParam,lParam,plResult);
   3897 }
   3898 static FORCEINLINE HRESULT IActiveIMMIME_SendIMCA(IActiveIMMIME* This,HWND hWnd,UINT uMsg,WPARAM wParam,LPARAM lParam,LRESULT *plResult) {
   3899     return This->lpVtbl->SendIMCA(This,hWnd,uMsg,wParam,lParam,plResult);
   3900 }
   3901 static FORCEINLINE HRESULT IActiveIMMIME_SendIMCW(IActiveIMMIME* This,HWND hWnd,UINT uMsg,WPARAM wParam,LPARAM lParam,LRESULT *plResult) {
   3902     return This->lpVtbl->SendIMCW(This,hWnd,uMsg,wParam,lParam,plResult);
   3903 }
   3904 static FORCEINLINE HRESULT IActiveIMMIME_IsSleeping(IActiveIMMIME* This) {
   3905     return This->lpVtbl->IsSleeping(This);
   3906 }
   3907 #endif
   3908 #endif
   3909 
   3910 #endif
   3911 
   3912 HRESULT STDMETHODCALLTYPE IActiveIMMIME_AssociateContext_Proxy(
   3913     IActiveIMMIME* This,
   3914     HWND hWnd,
   3915     HIMC hIME,
   3916     HIMC *phPrev);
   3917 void __RPC_STUB IActiveIMMIME_AssociateContext_Stub(
   3918     IRpcStubBuffer* This,
   3919     IRpcChannelBuffer* pRpcChannelBuffer,
   3920     PRPC_MESSAGE pRpcMessage,
   3921     DWORD* pdwStubPhase);
   3922 HRESULT STDMETHODCALLTYPE IActiveIMMIME_ConfigureIMEA_Proxy(
   3923     IActiveIMMIME* This,
   3924     HKL hKL,
   3925     HWND hWnd,
   3926     DWORD dwMode,
   3927     REGISTERWORDA *pData);
   3928 void __RPC_STUB IActiveIMMIME_ConfigureIMEA_Stub(
   3929     IRpcStubBuffer* This,
   3930     IRpcChannelBuffer* pRpcChannelBuffer,
   3931     PRPC_MESSAGE pRpcMessage,
   3932     DWORD* pdwStubPhase);
   3933 HRESULT STDMETHODCALLTYPE IActiveIMMIME_ConfigureIMEW_Proxy(
   3934     IActiveIMMIME* This,
   3935     HKL hKL,
   3936     HWND hWnd,
   3937     DWORD dwMode,
   3938     REGISTERWORDW *pData);
   3939 void __RPC_STUB IActiveIMMIME_ConfigureIMEW_Stub(
   3940     IRpcStubBuffer* This,
   3941     IRpcChannelBuffer* pRpcChannelBuffer,
   3942     PRPC_MESSAGE pRpcMessage,
   3943     DWORD* pdwStubPhase);
   3944 HRESULT STDMETHODCALLTYPE IActiveIMMIME_CreateContext_Proxy(
   3945     IActiveIMMIME* This,
   3946     HIMC *phIMC);
   3947 void __RPC_STUB IActiveIMMIME_CreateContext_Stub(
   3948     IRpcStubBuffer* This,
   3949     IRpcChannelBuffer* pRpcChannelBuffer,
   3950     PRPC_MESSAGE pRpcMessage,
   3951     DWORD* pdwStubPhase);
   3952 HRESULT STDMETHODCALLTYPE IActiveIMMIME_DestroyContext_Proxy(
   3953     IActiveIMMIME* This,
   3954     HIMC hIME);
   3955 void __RPC_STUB IActiveIMMIME_DestroyContext_Stub(
   3956     IRpcStubBuffer* This,
   3957     IRpcChannelBuffer* pRpcChannelBuffer,
   3958     PRPC_MESSAGE pRpcMessage,
   3959     DWORD* pdwStubPhase);
   3960 HRESULT STDMETHODCALLTYPE IActiveIMMIME_EnumRegisterWordA_Proxy(
   3961     IActiveIMMIME* This,
   3962     HKL hKL,
   3963     LPSTR szReading,
   3964     DWORD dwStyle,
   3965     LPSTR szRegister,
   3966     LPVOID pData,
   3967     IEnumRegisterWordA **pEnum);
   3968 void __RPC_STUB IActiveIMMIME_EnumRegisterWordA_Stub(
   3969     IRpcStubBuffer* This,
   3970     IRpcChannelBuffer* pRpcChannelBuffer,
   3971     PRPC_MESSAGE pRpcMessage,
   3972     DWORD* pdwStubPhase);
   3973 HRESULT STDMETHODCALLTYPE IActiveIMMIME_EnumRegisterWordW_Proxy(
   3974     IActiveIMMIME* This,
   3975     HKL hKL,
   3976     LPWSTR szReading,
   3977     DWORD dwStyle,
   3978     LPWSTR szRegister,
   3979     LPVOID pData,
   3980     IEnumRegisterWordW **pEnum);
   3981 void __RPC_STUB IActiveIMMIME_EnumRegisterWordW_Stub(
   3982     IRpcStubBuffer* This,
   3983     IRpcChannelBuffer* pRpcChannelBuffer,
   3984     PRPC_MESSAGE pRpcMessage,
   3985     DWORD* pdwStubPhase);
   3986 HRESULT STDMETHODCALLTYPE IActiveIMMIME_EscapeA_Proxy(
   3987     IActiveIMMIME* This,
   3988     HKL hKL,
   3989     HIMC hIMC,
   3990     UINT uEscape,
   3991     LPVOID pData,
   3992     LRESULT *plResult);
   3993 void __RPC_STUB IActiveIMMIME_EscapeA_Stub(
   3994     IRpcStubBuffer* This,
   3995     IRpcChannelBuffer* pRpcChannelBuffer,
   3996     PRPC_MESSAGE pRpcMessage,
   3997     DWORD* pdwStubPhase);
   3998 HRESULT STDMETHODCALLTYPE IActiveIMMIME_EscapeW_Proxy(
   3999     IActiveIMMIME* This,
   4000     HKL hKL,
   4001     HIMC hIMC,
   4002     UINT uEscape,
   4003     LPVOID pData,
   4004     LRESULT *plResult);
   4005 void __RPC_STUB IActiveIMMIME_EscapeW_Stub(
   4006     IRpcStubBuffer* This,
   4007     IRpcChannelBuffer* pRpcChannelBuffer,
   4008     PRPC_MESSAGE pRpcMessage,
   4009     DWORD* pdwStubPhase);
   4010 HRESULT STDMETHODCALLTYPE IActiveIMMIME_GetCandidateListA_Proxy(
   4011     IActiveIMMIME* This,
   4012     HIMC hIMC,
   4013     DWORD dwIndex,
   4014     UINT uBufLen,
   4015     CANDIDATELIST *pCandList,
   4016     UINT *puCopied);
   4017 void __RPC_STUB IActiveIMMIME_GetCandidateListA_Stub(
   4018     IRpcStubBuffer* This,
   4019     IRpcChannelBuffer* pRpcChannelBuffer,
   4020     PRPC_MESSAGE pRpcMessage,
   4021     DWORD* pdwStubPhase);
   4022 HRESULT STDMETHODCALLTYPE IActiveIMMIME_GetCandidateListW_Proxy(
   4023     IActiveIMMIME* This,
   4024     HIMC hIMC,
   4025     DWORD dwIndex,
   4026     UINT uBufLen,
   4027     CANDIDATELIST *pCandList,
   4028     UINT *puCopied);
   4029 void __RPC_STUB IActiveIMMIME_GetCandidateListW_Stub(
   4030     IRpcStubBuffer* This,
   4031     IRpcChannelBuffer* pRpcChannelBuffer,
   4032     PRPC_MESSAGE pRpcMessage,
   4033     DWORD* pdwStubPhase);
   4034 HRESULT STDMETHODCALLTYPE IActiveIMMIME_GetCandidateListCountA_Proxy(
   4035     IActiveIMMIME* This,
   4036     HIMC hIMC,
   4037     DWORD *pdwListSize,
   4038     DWORD *pdwBufLen);
   4039 void __RPC_STUB IActiveIMMIME_GetCandidateListCountA_Stub(
   4040     IRpcStubBuffer* This,
   4041     IRpcChannelBuffer* pRpcChannelBuffer,
   4042     PRPC_MESSAGE pRpcMessage,
   4043     DWORD* pdwStubPhase);
   4044 HRESULT STDMETHODCALLTYPE IActiveIMMIME_GetCandidateListCountW_Proxy(
   4045     IActiveIMMIME* This,
   4046     HIMC hIMC,
   4047     DWORD *pdwListSize,
   4048     DWORD *pdwBufLen);
   4049 void __RPC_STUB IActiveIMMIME_GetCandidateListCountW_Stub(
   4050     IRpcStubBuffer* This,
   4051     IRpcChannelBuffer* pRpcChannelBuffer,
   4052     PRPC_MESSAGE pRpcMessage,
   4053     DWORD* pdwStubPhase);
   4054 HRESULT STDMETHODCALLTYPE IActiveIMMIME_GetCandidateWindow_Proxy(
   4055     IActiveIMMIME* This,
   4056     HIMC hIMC,
   4057     DWORD dwIndex,
   4058     CANDIDATEFORM *pCandidate);
   4059 void __RPC_STUB IActiveIMMIME_GetCandidateWindow_Stub(
   4060     IRpcStubBuffer* This,
   4061     IRpcChannelBuffer* pRpcChannelBuffer,
   4062     PRPC_MESSAGE pRpcMessage,
   4063     DWORD* pdwStubPhase);
   4064 HRESULT STDMETHODCALLTYPE IActiveIMMIME_GetCompositionFontA_Proxy(
   4065     IActiveIMMIME* This,
   4066     HIMC hIMC,
   4067     LOGFONTA *plf);
   4068 void __RPC_STUB IActiveIMMIME_GetCompositionFontA_Stub(
   4069     IRpcStubBuffer* This,
   4070     IRpcChannelBuffer* pRpcChannelBuffer,
   4071     PRPC_MESSAGE pRpcMessage,
   4072     DWORD* pdwStubPhase);
   4073 HRESULT STDMETHODCALLTYPE IActiveIMMIME_GetCompositionFontW_Proxy(
   4074     IActiveIMMIME* This,
   4075     HIMC hIMC,
   4076     LOGFONTW *plf);
   4077 void __RPC_STUB IActiveIMMIME_GetCompositionFontW_Stub(
   4078     IRpcStubBuffer* This,
   4079     IRpcChannelBuffer* pRpcChannelBuffer,
   4080     PRPC_MESSAGE pRpcMessage,
   4081     DWORD* pdwStubPhase);
   4082 HRESULT STDMETHODCALLTYPE IActiveIMMIME_GetCompositionStringA_Proxy(
   4083     IActiveIMMIME* This,
   4084     HIMC hIMC,
   4085     DWORD dwIndex,
   4086     DWORD dwBufLen,
   4087     LONG *plCopied,
   4088     LPVOID pBuf);
   4089 void __RPC_STUB IActiveIMMIME_GetCompositionStringA_Stub(
   4090     IRpcStubBuffer* This,
   4091     IRpcChannelBuffer* pRpcChannelBuffer,
   4092     PRPC_MESSAGE pRpcMessage,
   4093     DWORD* pdwStubPhase);
   4094 HRESULT STDMETHODCALLTYPE IActiveIMMIME_GetCompositionStringW_Proxy(
   4095     IActiveIMMIME* This,
   4096     HIMC hIMC,
   4097     DWORD dwIndex,
   4098     DWORD dwBufLen,
   4099     LONG *plCopied,
   4100     LPVOID pBuf);
   4101 void __RPC_STUB IActiveIMMIME_GetCompositionStringW_Stub(
   4102     IRpcStubBuffer* This,
   4103     IRpcChannelBuffer* pRpcChannelBuffer,
   4104     PRPC_MESSAGE pRpcMessage,
   4105     DWORD* pdwStubPhase);
   4106 HRESULT STDMETHODCALLTYPE IActiveIMMIME_GetCompositionWindow_Proxy(
   4107     IActiveIMMIME* This,
   4108     HIMC hIMC,
   4109     COMPOSITIONFORM *pCompForm);
   4110 void __RPC_STUB IActiveIMMIME_GetCompositionWindow_Stub(
   4111     IRpcStubBuffer* This,
   4112     IRpcChannelBuffer* pRpcChannelBuffer,
   4113     PRPC_MESSAGE pRpcMessage,
   4114     DWORD* pdwStubPhase);
   4115 HRESULT STDMETHODCALLTYPE IActiveIMMIME_GetContext_Proxy(
   4116     IActiveIMMIME* This,
   4117     HWND hWnd,
   4118     HIMC *phIMC);
   4119 void __RPC_STUB IActiveIMMIME_GetContext_Stub(
   4120     IRpcStubBuffer* This,
   4121     IRpcChannelBuffer* pRpcChannelBuffer,
   4122     PRPC_MESSAGE pRpcMessage,
   4123     DWORD* pdwStubPhase);
   4124 HRESULT STDMETHODCALLTYPE IActiveIMMIME_GetConversionListA_Proxy(
   4125     IActiveIMMIME* This,
   4126     HKL hKL,
   4127     HIMC hIMC,
   4128     LPSTR pSrc,
   4129     UINT uBufLen,
   4130     UINT uFlag,
   4131     CANDIDATELIST *pDst,
   4132     UINT *puCopied);
   4133 void __RPC_STUB IActiveIMMIME_GetConversionListA_Stub(
   4134     IRpcStubBuffer* This,
   4135     IRpcChannelBuffer* pRpcChannelBuffer,
   4136     PRPC_MESSAGE pRpcMessage,
   4137     DWORD* pdwStubPhase);
   4138 HRESULT STDMETHODCALLTYPE IActiveIMMIME_GetConversionListW_Proxy(
   4139     IActiveIMMIME* This,
   4140     HKL hKL,
   4141     HIMC hIMC,
   4142     LPWSTR pSrc,
   4143     UINT uBufLen,
   4144     UINT uFlag,
   4145     CANDIDATELIST *pDst,
   4146     UINT *puCopied);
   4147 void __RPC_STUB IActiveIMMIME_GetConversionListW_Stub(
   4148     IRpcStubBuffer* This,
   4149     IRpcChannelBuffer* pRpcChannelBuffer,
   4150     PRPC_MESSAGE pRpcMessage,
   4151     DWORD* pdwStubPhase);
   4152 HRESULT STDMETHODCALLTYPE IActiveIMMIME_GetConversionStatus_Proxy(
   4153     IActiveIMMIME* This,
   4154     HIMC hIMC,
   4155     DWORD *pfdwConversion,
   4156     DWORD *pfdwSentence);
   4157 void __RPC_STUB IActiveIMMIME_GetConversionStatus_Stub(
   4158     IRpcStubBuffer* This,
   4159     IRpcChannelBuffer* pRpcChannelBuffer,
   4160     PRPC_MESSAGE pRpcMessage,
   4161     DWORD* pdwStubPhase);
   4162 HRESULT STDMETHODCALLTYPE IActiveIMMIME_GetDefaultIMEWnd_Proxy(
   4163     IActiveIMMIME* This,
   4164     HWND hWnd,
   4165     HWND *phDefWnd);
   4166 void __RPC_STUB IActiveIMMIME_GetDefaultIMEWnd_Stub(
   4167     IRpcStubBuffer* This,
   4168     IRpcChannelBuffer* pRpcChannelBuffer,
   4169     PRPC_MESSAGE pRpcMessage,
   4170     DWORD* pdwStubPhase);
   4171 HRESULT STDMETHODCALLTYPE IActiveIMMIME_GetDescriptionA_Proxy(
   4172     IActiveIMMIME* This,
   4173     HKL hKL,
   4174     UINT uBufLen,
   4175     LPSTR szDescription,
   4176     UINT *puCopied);
   4177 void __RPC_STUB IActiveIMMIME_GetDescriptionA_Stub(
   4178     IRpcStubBuffer* This,
   4179     IRpcChannelBuffer* pRpcChannelBuffer,
   4180     PRPC_MESSAGE pRpcMessage,
   4181     DWORD* pdwStubPhase);
   4182 HRESULT STDMETHODCALLTYPE IActiveIMMIME_GetDescriptionW_Proxy(
   4183     IActiveIMMIME* This,
   4184     HKL hKL,
   4185     UINT uBufLen,
   4186     LPWSTR szDescription,
   4187     UINT *puCopied);
   4188 void __RPC_STUB IActiveIMMIME_GetDescriptionW_Stub(
   4189     IRpcStubBuffer* This,
   4190     IRpcChannelBuffer* pRpcChannelBuffer,
   4191     PRPC_MESSAGE pRpcMessage,
   4192     DWORD* pdwStubPhase);
   4193 HRESULT STDMETHODCALLTYPE IActiveIMMIME_GetGuideLineA_Proxy(
   4194     IActiveIMMIME* This,
   4195     HIMC hIMC,
   4196     DWORD dwIndex,
   4197     DWORD dwBufLen,
   4198     LPSTR pBuf,
   4199     DWORD *pdwResult);
   4200 void __RPC_STUB IActiveIMMIME_GetGuideLineA_Stub(
   4201     IRpcStubBuffer* This,
   4202     IRpcChannelBuffer* pRpcChannelBuffer,
   4203     PRPC_MESSAGE pRpcMessage,
   4204     DWORD* pdwStubPhase);
   4205 HRESULT STDMETHODCALLTYPE IActiveIMMIME_GetGuideLineW_Proxy(
   4206     IActiveIMMIME* This,
   4207     HIMC hIMC,
   4208     DWORD dwIndex,
   4209     DWORD dwBufLen,
   4210     LPWSTR pBuf,
   4211     DWORD *pdwResult);
   4212 void __RPC_STUB IActiveIMMIME_GetGuideLineW_Stub(
   4213     IRpcStubBuffer* This,
   4214     IRpcChannelBuffer* pRpcChannelBuffer,
   4215     PRPC_MESSAGE pRpcMessage,
   4216     DWORD* pdwStubPhase);
   4217 HRESULT STDMETHODCALLTYPE IActiveIMMIME_GetIMEFileNameA_Proxy(
   4218     IActiveIMMIME* This,
   4219     HKL hKL,
   4220     UINT uBufLen,
   4221     LPSTR szFileName,
   4222     UINT *puCopied);
   4223 void __RPC_STUB IActiveIMMIME_GetIMEFileNameA_Stub(
   4224     IRpcStubBuffer* This,
   4225     IRpcChannelBuffer* pRpcChannelBuffer,
   4226     PRPC_MESSAGE pRpcMessage,
   4227     DWORD* pdwStubPhase);
   4228 HRESULT STDMETHODCALLTYPE IActiveIMMIME_GetIMEFileNameW_Proxy(
   4229     IActiveIMMIME* This,
   4230     HKL hKL,
   4231     UINT uBufLen,
   4232     LPWSTR szFileName,
   4233     UINT *puCopied);
   4234 void __RPC_STUB IActiveIMMIME_GetIMEFileNameW_Stub(
   4235     IRpcStubBuffer* This,
   4236     IRpcChannelBuffer* pRpcChannelBuffer,
   4237     PRPC_MESSAGE pRpcMessage,
   4238     DWORD* pdwStubPhase);
   4239 HRESULT STDMETHODCALLTYPE IActiveIMMIME_GetOpenStatus_Proxy(
   4240     IActiveIMMIME* This,
   4241     HIMC hIMC);
   4242 void __RPC_STUB IActiveIMMIME_GetOpenStatus_Stub(
   4243     IRpcStubBuffer* This,
   4244     IRpcChannelBuffer* pRpcChannelBuffer,
   4245     PRPC_MESSAGE pRpcMessage,
   4246     DWORD* pdwStubPhase);
   4247 HRESULT STDMETHODCALLTYPE IActiveIMMIME_GetProperty_Proxy(
   4248     IActiveIMMIME* This,
   4249     HKL hKL,
   4250     DWORD fdwIndex,
   4251     DWORD *pdwProperty);
   4252 void __RPC_STUB IActiveIMMIME_GetProperty_Stub(
   4253     IRpcStubBuffer* This,
   4254     IRpcChannelBuffer* pRpcChannelBuffer,
   4255     PRPC_MESSAGE pRpcMessage,
   4256     DWORD* pdwStubPhase);
   4257 HRESULT STDMETHODCALLTYPE IActiveIMMIME_GetRegisterWordStyleA_Proxy(
   4258     IActiveIMMIME* This,
   4259     HKL hKL,
   4260     UINT nItem,
   4261     STYLEBUFA *pStyleBuf,
   4262     UINT *puCopied);
   4263 void __RPC_STUB IActiveIMMIME_GetRegisterWordStyleA_Stub(
   4264     IRpcStubBuffer* This,
   4265     IRpcChannelBuffer* pRpcChannelBuffer,
   4266     PRPC_MESSAGE pRpcMessage,
   4267     DWORD* pdwStubPhase);
   4268 HRESULT STDMETHODCALLTYPE IActiveIMMIME_GetRegisterWordStyleW_Proxy(
   4269     IActiveIMMIME* This,
   4270     HKL hKL,
   4271     UINT nItem,
   4272     STYLEBUFW *pStyleBuf,
   4273     UINT *puCopied);
   4274 void __RPC_STUB IActiveIMMIME_GetRegisterWordStyleW_Stub(
   4275     IRpcStubBuffer* This,
   4276     IRpcChannelBuffer* pRpcChannelBuffer,
   4277     PRPC_MESSAGE pRpcMessage,
   4278     DWORD* pdwStubPhase);
   4279 HRESULT STDMETHODCALLTYPE IActiveIMMIME_GetStatusWindowPos_Proxy(
   4280     IActiveIMMIME* This,
   4281     HIMC hIMC,
   4282     POINT *pptPos);
   4283 void __RPC_STUB IActiveIMMIME_GetStatusWindowPos_Stub(
   4284     IRpcStubBuffer* This,
   4285     IRpcChannelBuffer* pRpcChannelBuffer,
   4286     PRPC_MESSAGE pRpcMessage,
   4287     DWORD* pdwStubPhase);
   4288 HRESULT STDMETHODCALLTYPE IActiveIMMIME_GetVirtualKey_Proxy(
   4289     IActiveIMMIME* This,
   4290     HWND hWnd,
   4291     UINT *puVirtualKey);
   4292 void __RPC_STUB IActiveIMMIME_GetVirtualKey_Stub(
   4293     IRpcStubBuffer* This,
   4294     IRpcChannelBuffer* pRpcChannelBuffer,
   4295     PRPC_MESSAGE pRpcMessage,
   4296     DWORD* pdwStubPhase);
   4297 HRESULT STDMETHODCALLTYPE IActiveIMMIME_InstallIMEA_Proxy(
   4298     IActiveIMMIME* This,
   4299     LPSTR szIMEFileName,
   4300     LPSTR szLayoutText,
   4301     HKL *phKL);
   4302 void __RPC_STUB IActiveIMMIME_InstallIMEA_Stub(
   4303     IRpcStubBuffer* This,
   4304     IRpcChannelBuffer* pRpcChannelBuffer,
   4305     PRPC_MESSAGE pRpcMessage,
   4306     DWORD* pdwStubPhase);
   4307 HRESULT STDMETHODCALLTYPE IActiveIMMIME_InstallIMEW_Proxy(
   4308     IActiveIMMIME* This,
   4309     LPWSTR szIMEFileName,
   4310     LPWSTR szLayoutText,
   4311     HKL *phKL);
   4312 void __RPC_STUB IActiveIMMIME_InstallIMEW_Stub(
   4313     IRpcStubBuffer* This,
   4314     IRpcChannelBuffer* pRpcChannelBuffer,
   4315     PRPC_MESSAGE pRpcMessage,
   4316     DWORD* pdwStubPhase);
   4317 HRESULT STDMETHODCALLTYPE IActiveIMMIME_IsIME_Proxy(
   4318     IActiveIMMIME* This,
   4319     HKL hKL);
   4320 void __RPC_STUB IActiveIMMIME_IsIME_Stub(
   4321     IRpcStubBuffer* This,
   4322     IRpcChannelBuffer* pRpcChannelBuffer,
   4323     PRPC_MESSAGE pRpcMessage,
   4324     DWORD* pdwStubPhase);
   4325 HRESULT STDMETHODCALLTYPE IActiveIMMIME_IsUIMessageA_Proxy(
   4326     IActiveIMMIME* This,
   4327     HWND hWndIME,
   4328     UINT msg,
   4329     WPARAM wParam,
   4330     LPARAM lParam);
   4331 void __RPC_STUB IActiveIMMIME_IsUIMessageA_Stub(
   4332     IRpcStubBuffer* This,
   4333     IRpcChannelBuffer* pRpcChannelBuffer,
   4334     PRPC_MESSAGE pRpcMessage,
   4335     DWORD* pdwStubPhase);
   4336 HRESULT STDMETHODCALLTYPE IActiveIMMIME_IsUIMessageW_Proxy(
   4337     IActiveIMMIME* This,
   4338     HWND hWndIME,
   4339     UINT msg,
   4340     WPARAM wParam,
   4341     LPARAM lParam);
   4342 void __RPC_STUB IActiveIMMIME_IsUIMessageW_Stub(
   4343     IRpcStubBuffer* This,
   4344     IRpcChannelBuffer* pRpcChannelBuffer,
   4345     PRPC_MESSAGE pRpcMessage,
   4346     DWORD* pdwStubPhase);
   4347 HRESULT STDMETHODCALLTYPE IActiveIMMIME_NotifyIME_Proxy(
   4348     IActiveIMMIME* This,
   4349     HIMC hIMC,
   4350     DWORD dwAction,
   4351     DWORD dwIndex,
   4352     DWORD dwValue);
   4353 void __RPC_STUB IActiveIMMIME_NotifyIME_Stub(
   4354     IRpcStubBuffer* This,
   4355     IRpcChannelBuffer* pRpcChannelBuffer,
   4356     PRPC_MESSAGE pRpcMessage,
   4357     DWORD* pdwStubPhase);
   4358 HRESULT STDMETHODCALLTYPE IActiveIMMIME_RegisterWordA_Proxy(
   4359     IActiveIMMIME* This,
   4360     HKL hKL,
   4361     LPSTR szReading,
   4362     DWORD dwStyle,
   4363     LPSTR szRegister);
   4364 void __RPC_STUB IActiveIMMIME_RegisterWordA_Stub(
   4365     IRpcStubBuffer* This,
   4366     IRpcChannelBuffer* pRpcChannelBuffer,
   4367     PRPC_MESSAGE pRpcMessage,
   4368     DWORD* pdwStubPhase);
   4369 HRESULT STDMETHODCALLTYPE IActiveIMMIME_RegisterWordW_Proxy(
   4370     IActiveIMMIME* This,
   4371     HKL hKL,
   4372     LPWSTR szReading,
   4373     DWORD dwStyle,
   4374     LPWSTR szRegister);
   4375 void __RPC_STUB IActiveIMMIME_RegisterWordW_Stub(
   4376     IRpcStubBuffer* This,
   4377     IRpcChannelBuffer* pRpcChannelBuffer,
   4378     PRPC_MESSAGE pRpcMessage,
   4379     DWORD* pdwStubPhase);
   4380 HRESULT STDMETHODCALLTYPE IActiveIMMIME_ReleaseContext_Proxy(
   4381     IActiveIMMIME* This,
   4382     HWND hWnd,
   4383     HIMC hIMC);
   4384 void __RPC_STUB IActiveIMMIME_ReleaseContext_Stub(
   4385     IRpcStubBuffer* This,
   4386     IRpcChannelBuffer* pRpcChannelBuffer,
   4387     PRPC_MESSAGE pRpcMessage,
   4388     DWORD* pdwStubPhase);
   4389 HRESULT STDMETHODCALLTYPE IActiveIMMIME_SetCandidateWindow_Proxy(
   4390     IActiveIMMIME* This,
   4391     HIMC hIMC,
   4392     CANDIDATEFORM *pCandidate);
   4393 void __RPC_STUB IActiveIMMIME_SetCandidateWindow_Stub(
   4394     IRpcStubBuffer* This,
   4395     IRpcChannelBuffer* pRpcChannelBuffer,
   4396     PRPC_MESSAGE pRpcMessage,
   4397     DWORD* pdwStubPhase);
   4398 HRESULT STDMETHODCALLTYPE IActiveIMMIME_SetCompositionFontA_Proxy(
   4399     IActiveIMMIME* This,
   4400     HIMC hIMC,
   4401     LOGFONTA *plf);
   4402 void __RPC_STUB IActiveIMMIME_SetCompositionFontA_Stub(
   4403     IRpcStubBuffer* This,
   4404     IRpcChannelBuffer* pRpcChannelBuffer,
   4405     PRPC_MESSAGE pRpcMessage,
   4406     DWORD* pdwStubPhase);
   4407 HRESULT STDMETHODCALLTYPE IActiveIMMIME_SetCompositionFontW_Proxy(
   4408     IActiveIMMIME* This,
   4409     HIMC hIMC,
   4410     LOGFONTW *plf);
   4411 void __RPC_STUB IActiveIMMIME_SetCompositionFontW_Stub(
   4412     IRpcStubBuffer* This,
   4413     IRpcChannelBuffer* pRpcChannelBuffer,
   4414     PRPC_MESSAGE pRpcMessage,
   4415     DWORD* pdwStubPhase);
   4416 HRESULT STDMETHODCALLTYPE IActiveIMMIME_SetCompositionStringA_Proxy(
   4417     IActiveIMMIME* This,
   4418     HIMC hIMC,
   4419     DWORD dwIndex,
   4420     LPVOID pComp,
   4421     DWORD dwCompLen,
   4422     LPVOID pRead,
   4423     DWORD dwReadLen);
   4424 void __RPC_STUB IActiveIMMIME_SetCompositionStringA_Stub(
   4425     IRpcStubBuffer* This,
   4426     IRpcChannelBuffer* pRpcChannelBuffer,
   4427     PRPC_MESSAGE pRpcMessage,
   4428     DWORD* pdwStubPhase);
   4429 HRESULT STDMETHODCALLTYPE IActiveIMMIME_SetCompositionStringW_Proxy(
   4430     IActiveIMMIME* This,
   4431     HIMC hIMC,
   4432     DWORD dwIndex,
   4433     LPVOID pComp,
   4434     DWORD dwCompLen,
   4435     LPVOID pRead,
   4436     DWORD dwReadLen);
   4437 void __RPC_STUB IActiveIMMIME_SetCompositionStringW_Stub(
   4438     IRpcStubBuffer* This,
   4439     IRpcChannelBuffer* pRpcChannelBuffer,
   4440     PRPC_MESSAGE pRpcMessage,
   4441     DWORD* pdwStubPhase);
   4442 HRESULT STDMETHODCALLTYPE IActiveIMMIME_SetCompositionWindow_Proxy(
   4443     IActiveIMMIME* This,
   4444     HIMC hIMC,
   4445     COMPOSITIONFORM *pCompForm);
   4446 void __RPC_STUB IActiveIMMIME_SetCompositionWindow_Stub(
   4447     IRpcStubBuffer* This,
   4448     IRpcChannelBuffer* pRpcChannelBuffer,
   4449     PRPC_MESSAGE pRpcMessage,
   4450     DWORD* pdwStubPhase);
   4451 HRESULT STDMETHODCALLTYPE IActiveIMMIME_SetConversionStatus_Proxy(
   4452     IActiveIMMIME* This,
   4453     HIMC hIMC,
   4454     DWORD fdwConversion,
   4455     DWORD fdwSentence);
   4456 void __RPC_STUB IActiveIMMIME_SetConversionStatus_Stub(
   4457     IRpcStubBuffer* This,
   4458     IRpcChannelBuffer* pRpcChannelBuffer,
   4459     PRPC_MESSAGE pRpcMessage,
   4460     DWORD* pdwStubPhase);
   4461 HRESULT STDMETHODCALLTYPE IActiveIMMIME_SetOpenStatus_Proxy(
   4462     IActiveIMMIME* This,
   4463     HIMC hIMC,
   4464     WINBOOL fOpen);
   4465 void __RPC_STUB IActiveIMMIME_SetOpenStatus_Stub(
   4466     IRpcStubBuffer* This,
   4467     IRpcChannelBuffer* pRpcChannelBuffer,
   4468     PRPC_MESSAGE pRpcMessage,
   4469     DWORD* pdwStubPhase);
   4470 HRESULT STDMETHODCALLTYPE IActiveIMMIME_SetStatusWindowPos_Proxy(
   4471     IActiveIMMIME* This,
   4472     HIMC hIMC,
   4473     POINT *pptPos);
   4474 void __RPC_STUB IActiveIMMIME_SetStatusWindowPos_Stub(
   4475     IRpcStubBuffer* This,
   4476     IRpcChannelBuffer* pRpcChannelBuffer,
   4477     PRPC_MESSAGE pRpcMessage,
   4478     DWORD* pdwStubPhase);
   4479 HRESULT STDMETHODCALLTYPE IActiveIMMIME_SimulateHotKey_Proxy(
   4480     IActiveIMMIME* This,
   4481     HWND hWnd,
   4482     DWORD dwHotKeyID);
   4483 void __RPC_STUB IActiveIMMIME_SimulateHotKey_Stub(
   4484     IRpcStubBuffer* This,
   4485     IRpcChannelBuffer* pRpcChannelBuffer,
   4486     PRPC_MESSAGE pRpcMessage,
   4487     DWORD* pdwStubPhase);
   4488 HRESULT STDMETHODCALLTYPE IActiveIMMIME_UnregisterWordA_Proxy(
   4489     IActiveIMMIME* This,
   4490     HKL hKL,
   4491     LPSTR szReading,
   4492     DWORD dwStyle,
   4493     LPSTR szUnregister);
   4494 void __RPC_STUB IActiveIMMIME_UnregisterWordA_Stub(
   4495     IRpcStubBuffer* This,
   4496     IRpcChannelBuffer* pRpcChannelBuffer,
   4497     PRPC_MESSAGE pRpcMessage,
   4498     DWORD* pdwStubPhase);
   4499 HRESULT STDMETHODCALLTYPE IActiveIMMIME_UnregisterWordW_Proxy(
   4500     IActiveIMMIME* This,
   4501     HKL hKL,
   4502     LPWSTR szReading,
   4503     DWORD dwStyle,
   4504     LPWSTR szUnregister);
   4505 void __RPC_STUB IActiveIMMIME_UnregisterWordW_Stub(
   4506     IRpcStubBuffer* This,
   4507     IRpcChannelBuffer* pRpcChannelBuffer,
   4508     PRPC_MESSAGE pRpcMessage,
   4509     DWORD* pdwStubPhase);
   4510 HRESULT STDMETHODCALLTYPE IActiveIMMIME_GenerateMessage_Proxy(
   4511     IActiveIMMIME* This,
   4512     HIMC hIMC);
   4513 void __RPC_STUB IActiveIMMIME_GenerateMessage_Stub(
   4514     IRpcStubBuffer* This,
   4515     IRpcChannelBuffer* pRpcChannelBuffer,
   4516     PRPC_MESSAGE pRpcMessage,
   4517     DWORD* pdwStubPhase);
   4518 HRESULT STDMETHODCALLTYPE IActiveIMMIME_LockIMC_Proxy(
   4519     IActiveIMMIME* This,
   4520     HIMC hIMC,
   4521     INPUTCONTEXT **ppIMC);
   4522 void __RPC_STUB IActiveIMMIME_LockIMC_Stub(
   4523     IRpcStubBuffer* This,
   4524     IRpcChannelBuffer* pRpcChannelBuffer,
   4525     PRPC_MESSAGE pRpcMessage,
   4526     DWORD* pdwStubPhase);
   4527 HRESULT STDMETHODCALLTYPE IActiveIMMIME_UnlockIMC_Proxy(
   4528     IActiveIMMIME* This,
   4529     HIMC hIMC);
   4530 void __RPC_STUB IActiveIMMIME_UnlockIMC_Stub(
   4531     IRpcStubBuffer* This,
   4532     IRpcChannelBuffer* pRpcChannelBuffer,
   4533     PRPC_MESSAGE pRpcMessage,
   4534     DWORD* pdwStubPhase);
   4535 HRESULT STDMETHODCALLTYPE IActiveIMMIME_GetIMCLockCount_Proxy(
   4536     IActiveIMMIME* This,
   4537     HIMC hIMC,
   4538     DWORD *pdwLockCount);
   4539 void __RPC_STUB IActiveIMMIME_GetIMCLockCount_Stub(
   4540     IRpcStubBuffer* This,
   4541     IRpcChannelBuffer* pRpcChannelBuffer,
   4542     PRPC_MESSAGE pRpcMessage,
   4543     DWORD* pdwStubPhase);
   4544 HRESULT STDMETHODCALLTYPE IActiveIMMIME_CreateIMCC_Proxy(
   4545     IActiveIMMIME* This,
   4546     DWORD dwSize,
   4547     HIMCC *phIMCC);
   4548 void __RPC_STUB IActiveIMMIME_CreateIMCC_Stub(
   4549     IRpcStubBuffer* This,
   4550     IRpcChannelBuffer* pRpcChannelBuffer,
   4551     PRPC_MESSAGE pRpcMessage,
   4552     DWORD* pdwStubPhase);
   4553 HRESULT STDMETHODCALLTYPE IActiveIMMIME_DestroyIMCC_Proxy(
   4554     IActiveIMMIME* This,
   4555     HIMCC hIMCC);
   4556 void __RPC_STUB IActiveIMMIME_DestroyIMCC_Stub(
   4557     IRpcStubBuffer* This,
   4558     IRpcChannelBuffer* pRpcChannelBuffer,
   4559     PRPC_MESSAGE pRpcMessage,
   4560     DWORD* pdwStubPhase);
   4561 HRESULT STDMETHODCALLTYPE IActiveIMMIME_LockIMCC_Proxy(
   4562     IActiveIMMIME* This,
   4563     HIMCC hIMCC,
   4564     void **ppv);
   4565 void __RPC_STUB IActiveIMMIME_LockIMCC_Stub(
   4566     IRpcStubBuffer* This,
   4567     IRpcChannelBuffer* pRpcChannelBuffer,
   4568     PRPC_MESSAGE pRpcMessage,
   4569     DWORD* pdwStubPhase);
   4570 HRESULT STDMETHODCALLTYPE IActiveIMMIME_UnlockIMCC_Proxy(
   4571     IActiveIMMIME* This,
   4572     HIMCC hIMCC);
   4573 void __RPC_STUB IActiveIMMIME_UnlockIMCC_Stub(
   4574     IRpcStubBuffer* This,
   4575     IRpcChannelBuffer* pRpcChannelBuffer,
   4576     PRPC_MESSAGE pRpcMessage,
   4577     DWORD* pdwStubPhase);
   4578 HRESULT STDMETHODCALLTYPE IActiveIMMIME_ReSizeIMCC_Proxy(
   4579     IActiveIMMIME* This,
   4580     HIMCC hIMCC,
   4581     DWORD dwSize,
   4582     HIMCC *phIMCC);
   4583 void __RPC_STUB IActiveIMMIME_ReSizeIMCC_Stub(
   4584     IRpcStubBuffer* This,
   4585     IRpcChannelBuffer* pRpcChannelBuffer,
   4586     PRPC_MESSAGE pRpcMessage,
   4587     DWORD* pdwStubPhase);
   4588 HRESULT STDMETHODCALLTYPE IActiveIMMIME_GetIMCCSize_Proxy(
   4589     IActiveIMMIME* This,
   4590     HIMCC hIMCC,
   4591     DWORD *pdwSize);
   4592 void __RPC_STUB IActiveIMMIME_GetIMCCSize_Stub(
   4593     IRpcStubBuffer* This,
   4594     IRpcChannelBuffer* pRpcChannelBuffer,
   4595     PRPC_MESSAGE pRpcMessage,
   4596     DWORD* pdwStubPhase);
   4597 HRESULT STDMETHODCALLTYPE IActiveIMMIME_GetIMCCLockCount_Proxy(
   4598     IActiveIMMIME* This,
   4599     HIMCC hIMCC,
   4600     DWORD *pdwLockCount);
   4601 void __RPC_STUB IActiveIMMIME_GetIMCCLockCount_Stub(
   4602     IRpcStubBuffer* This,
   4603     IRpcChannelBuffer* pRpcChannelBuffer,
   4604     PRPC_MESSAGE pRpcMessage,
   4605     DWORD* pdwStubPhase);
   4606 HRESULT STDMETHODCALLTYPE IActiveIMMIME_GetHotKey_Proxy(
   4607     IActiveIMMIME* This,
   4608     DWORD dwHotKeyID,
   4609     UINT *puModifiers,
   4610     UINT *puVKey,
   4611     HKL *phKL);
   4612 void __RPC_STUB IActiveIMMIME_GetHotKey_Stub(
   4613     IRpcStubBuffer* This,
   4614     IRpcChannelBuffer* pRpcChannelBuffer,
   4615     PRPC_MESSAGE pRpcMessage,
   4616     DWORD* pdwStubPhase);
   4617 HRESULT STDMETHODCALLTYPE IActiveIMMIME_SetHotKey_Proxy(
   4618     IActiveIMMIME* This,
   4619     DWORD dwHotKeyID,
   4620     UINT uModifiers,
   4621     UINT uVKey,
   4622     HKL hKL);
   4623 void __RPC_STUB IActiveIMMIME_SetHotKey_Stub(
   4624     IRpcStubBuffer* This,
   4625     IRpcChannelBuffer* pRpcChannelBuffer,
   4626     PRPC_MESSAGE pRpcMessage,
   4627     DWORD* pdwStubPhase);
   4628 HRESULT STDMETHODCALLTYPE IActiveIMMIME_CreateSoftKeyboard_Proxy(
   4629     IActiveIMMIME* This,
   4630     UINT uType,
   4631     HWND hOwner,
   4632     int x,
   4633     int y,
   4634     HWND *phSoftKbdWnd);
   4635 void __RPC_STUB IActiveIMMIME_CreateSoftKeyboard_Stub(
   4636     IRpcStubBuffer* This,
   4637     IRpcChannelBuffer* pRpcChannelBuffer,
   4638     PRPC_MESSAGE pRpcMessage,
   4639     DWORD* pdwStubPhase);
   4640 HRESULT STDMETHODCALLTYPE IActiveIMMIME_DestroySoftKeyboard_Proxy(
   4641     IActiveIMMIME* This,
   4642     HWND hSoftKbdWnd);
   4643 void __RPC_STUB IActiveIMMIME_DestroySoftKeyboard_Stub(
   4644     IRpcStubBuffer* This,
   4645     IRpcChannelBuffer* pRpcChannelBuffer,
   4646     PRPC_MESSAGE pRpcMessage,
   4647     DWORD* pdwStubPhase);
   4648 HRESULT STDMETHODCALLTYPE IActiveIMMIME_ShowSoftKeyboard_Proxy(
   4649     IActiveIMMIME* This,
   4650     HWND hSoftKbdWnd,
   4651     int nCmdShow);
   4652 void __RPC_STUB IActiveIMMIME_ShowSoftKeyboard_Stub(
   4653     IRpcStubBuffer* This,
   4654     IRpcChannelBuffer* pRpcChannelBuffer,
   4655     PRPC_MESSAGE pRpcMessage,
   4656     DWORD* pdwStubPhase);
   4657 HRESULT STDMETHODCALLTYPE IActiveIMMIME_GetCodePageA_Proxy(
   4658     IActiveIMMIME* This,
   4659     HKL hKL,
   4660     UINT *uCodePage);
   4661 void __RPC_STUB IActiveIMMIME_GetCodePageA_Stub(
   4662     IRpcStubBuffer* This,
   4663     IRpcChannelBuffer* pRpcChannelBuffer,
   4664     PRPC_MESSAGE pRpcMessage,
   4665     DWORD* pdwStubPhase);
   4666 HRESULT STDMETHODCALLTYPE IActiveIMMIME_GetLangId_Proxy(
   4667     IActiveIMMIME* This,
   4668     HKL hKL,
   4669     LANGID *plid);
   4670 void __RPC_STUB IActiveIMMIME_GetLangId_Stub(
   4671     IRpcStubBuffer* This,
   4672     IRpcChannelBuffer* pRpcChannelBuffer,
   4673     PRPC_MESSAGE pRpcMessage,
   4674     DWORD* pdwStubPhase);
   4675 HRESULT STDMETHODCALLTYPE IActiveIMMIME_KeybdEvent_Proxy(
   4676     IActiveIMMIME* This,
   4677     LANGID lgidIME,
   4678     BYTE bVk,
   4679     BYTE bScan,
   4680     DWORD dwFlags,
   4681     DWORD dwExtraInfo);
   4682 void __RPC_STUB IActiveIMMIME_KeybdEvent_Stub(
   4683     IRpcStubBuffer* This,
   4684     IRpcChannelBuffer* pRpcChannelBuffer,
   4685     PRPC_MESSAGE pRpcMessage,
   4686     DWORD* pdwStubPhase);
   4687 HRESULT STDMETHODCALLTYPE IActiveIMMIME_LockModal_Proxy(
   4688     IActiveIMMIME* This);
   4689 void __RPC_STUB IActiveIMMIME_LockModal_Stub(
   4690     IRpcStubBuffer* This,
   4691     IRpcChannelBuffer* pRpcChannelBuffer,
   4692     PRPC_MESSAGE pRpcMessage,
   4693     DWORD* pdwStubPhase);
   4694 HRESULT STDMETHODCALLTYPE IActiveIMMIME_UnlockModal_Proxy(
   4695     IActiveIMMIME* This);
   4696 void __RPC_STUB IActiveIMMIME_UnlockModal_Stub(
   4697     IRpcStubBuffer* This,
   4698     IRpcChannelBuffer* pRpcChannelBuffer,
   4699     PRPC_MESSAGE pRpcMessage,
   4700     DWORD* pdwStubPhase);
   4701 HRESULT STDMETHODCALLTYPE IActiveIMMIME_AssociateContextEx_Proxy(
   4702     IActiveIMMIME* This,
   4703     HWND hWnd,
   4704     HIMC hIMC,
   4705     DWORD dwFlags);
   4706 void __RPC_STUB IActiveIMMIME_AssociateContextEx_Stub(
   4707     IRpcStubBuffer* This,
   4708     IRpcChannelBuffer* pRpcChannelBuffer,
   4709     PRPC_MESSAGE pRpcMessage,
   4710     DWORD* pdwStubPhase);
   4711 HRESULT STDMETHODCALLTYPE IActiveIMMIME_DisableIME_Proxy(
   4712     IActiveIMMIME* This,
   4713     DWORD idThread);
   4714 void __RPC_STUB IActiveIMMIME_DisableIME_Stub(
   4715     IRpcStubBuffer* This,
   4716     IRpcChannelBuffer* pRpcChannelBuffer,
   4717     PRPC_MESSAGE pRpcMessage,
   4718     DWORD* pdwStubPhase);
   4719 HRESULT STDMETHODCALLTYPE IActiveIMMIME_GetImeMenuItemsA_Proxy(
   4720     IActiveIMMIME* This,
   4721     HIMC hIMC,
   4722     DWORD dwFlags,
   4723     DWORD dwType,
   4724     IMEMENUITEMINFOA *pImeParentMenu,
   4725     IMEMENUITEMINFOA *pImeMenu,
   4726     DWORD dwSize,
   4727     DWORD *pdwResult);
   4728 void __RPC_STUB IActiveIMMIME_GetImeMenuItemsA_Stub(
   4729     IRpcStubBuffer* This,
   4730     IRpcChannelBuffer* pRpcChannelBuffer,
   4731     PRPC_MESSAGE pRpcMessage,
   4732     DWORD* pdwStubPhase);
   4733 HRESULT STDMETHODCALLTYPE IActiveIMMIME_GetImeMenuItemsW_Proxy(
   4734     IActiveIMMIME* This,
   4735     HIMC hIMC,
   4736     DWORD dwFlags,
   4737     DWORD dwType,
   4738     IMEMENUITEMINFOW *pImeParentMenu,
   4739     IMEMENUITEMINFOW *pImeMenu,
   4740     DWORD dwSize,
   4741     DWORD *pdwResult);
   4742 void __RPC_STUB IActiveIMMIME_GetImeMenuItemsW_Stub(
   4743     IRpcStubBuffer* This,
   4744     IRpcChannelBuffer* pRpcChannelBuffer,
   4745     PRPC_MESSAGE pRpcMessage,
   4746     DWORD* pdwStubPhase);
   4747 HRESULT STDMETHODCALLTYPE IActiveIMMIME_EnumInputContext_Proxy(
   4748     IActiveIMMIME* This,
   4749     DWORD idThread,
   4750     IEnumInputContext **ppEnum);
   4751 void __RPC_STUB IActiveIMMIME_EnumInputContext_Stub(
   4752     IRpcStubBuffer* This,
   4753     IRpcChannelBuffer* pRpcChannelBuffer,
   4754     PRPC_MESSAGE pRpcMessage,
   4755     DWORD* pdwStubPhase);
   4756 HRESULT STDMETHODCALLTYPE IActiveIMMIME_RequestMessageA_Proxy(
   4757     IActiveIMMIME* This,
   4758     HIMC hIMC,
   4759     WPARAM wParam,
   4760     LPARAM lParam,
   4761     LRESULT *plResult);
   4762 void __RPC_STUB IActiveIMMIME_RequestMessageA_Stub(
   4763     IRpcStubBuffer* This,
   4764     IRpcChannelBuffer* pRpcChannelBuffer,
   4765     PRPC_MESSAGE pRpcMessage,
   4766     DWORD* pdwStubPhase);
   4767 HRESULT STDMETHODCALLTYPE IActiveIMMIME_RequestMessageW_Proxy(
   4768     IActiveIMMIME* This,
   4769     HIMC hIMC,
   4770     WPARAM wParam,
   4771     LPARAM lParam,
   4772     LRESULT *plResult);
   4773 void __RPC_STUB IActiveIMMIME_RequestMessageW_Stub(
   4774     IRpcStubBuffer* This,
   4775     IRpcChannelBuffer* pRpcChannelBuffer,
   4776     PRPC_MESSAGE pRpcMessage,
   4777     DWORD* pdwStubPhase);
   4778 HRESULT STDMETHODCALLTYPE IActiveIMMIME_SendIMCA_Proxy(
   4779     IActiveIMMIME* This,
   4780     HWND hWnd,
   4781     UINT uMsg,
   4782     WPARAM wParam,
   4783     LPARAM lParam,
   4784     LRESULT *plResult);
   4785 void __RPC_STUB IActiveIMMIME_SendIMCA_Stub(
   4786     IRpcStubBuffer* This,
   4787     IRpcChannelBuffer* pRpcChannelBuffer,
   4788     PRPC_MESSAGE pRpcMessage,
   4789     DWORD* pdwStubPhase);
   4790 HRESULT STDMETHODCALLTYPE IActiveIMMIME_SendIMCW_Proxy(
   4791     IActiveIMMIME* This,
   4792     HWND hWnd,
   4793     UINT uMsg,
   4794     WPARAM wParam,
   4795     LPARAM lParam,
   4796     LRESULT *plResult);
   4797 void __RPC_STUB IActiveIMMIME_SendIMCW_Stub(
   4798     IRpcStubBuffer* This,
   4799     IRpcChannelBuffer* pRpcChannelBuffer,
   4800     PRPC_MESSAGE pRpcMessage,
   4801     DWORD* pdwStubPhase);
   4802 HRESULT STDMETHODCALLTYPE IActiveIMMIME_IsSleeping_Proxy(
   4803     IActiveIMMIME* This);
   4804 void __RPC_STUB IActiveIMMIME_IsSleeping_Stub(
   4805     IRpcStubBuffer* This,
   4806     IRpcChannelBuffer* pRpcChannelBuffer,
   4807     PRPC_MESSAGE pRpcMessage,
   4808     DWORD* pdwStubPhase);
   4809 
   4810 #endif  /* __IActiveIMMIME_INTERFACE_DEFINED__ */
   4811 
   4812 /*****************************************************************************
   4813  * IActiveIME interface
   4814  */
   4815 #ifndef __IActiveIME_INTERFACE_DEFINED__
   4816 #define __IActiveIME_INTERFACE_DEFINED__
   4817 
   4818 DEFINE_GUID(IID_IActiveIME, 0x6fe20962, 0xd077, 0x11d0, 0x8f,0xe7, 0x00,0xaa,0x00,0x6b,0xcc,0x59);
   4819 #if defined(__cplusplus) && !defined(CINTERFACE)
   4820 MIDL_INTERFACE("6fe20962-d077-11d0-8fe7-00aa006bcc59")
   4821 IActiveIME : public IUnknown
   4822 {
   4823     virtual HRESULT STDMETHODCALLTYPE Inquire(
   4824         DWORD dwSystemInfoFlags,
   4825         IMEINFO *pIMEInfo,
   4826         LPWSTR szWndClass,
   4827         DWORD *pdwPrivate) = 0;
   4828 
   4829     virtual HRESULT STDMETHODCALLTYPE ConversionList(
   4830         HIMC hIMC,
   4831         LPWSTR szSource,
   4832         UINT uFlag,
   4833         UINT uBufLen,
   4834         CANDIDATELIST *pDest,
   4835         UINT *puCopied) = 0;
   4836 
   4837     virtual HRESULT STDMETHODCALLTYPE Configure(
   4838         HKL hKL,
   4839         HWND hWnd,
   4840         DWORD dwMode,
   4841         REGISTERWORDW *pRegisterWord) = 0;
   4842 
   4843     virtual HRESULT STDMETHODCALLTYPE Destroy(
   4844         UINT uReserved) = 0;
   4845 
   4846     virtual HRESULT STDMETHODCALLTYPE Escape(
   4847         HIMC hIMC,
   4848         UINT uEscape,
   4849         void *pData,
   4850         LRESULT *plResult) = 0;
   4851 
   4852     virtual HRESULT STDMETHODCALLTYPE SetActiveContext(
   4853         HIMC hIMC,
   4854         WINBOOL fFlag) = 0;
   4855 
   4856     virtual HRESULT STDMETHODCALLTYPE ProcessKey(
   4857         HIMC hIMC,
   4858         UINT uVirKey,
   4859         DWORD lParam,
   4860         BYTE *pbKeyState) = 0;
   4861 
   4862     virtual HRESULT STDMETHODCALLTYPE Notify(
   4863         HIMC hIMC,
   4864         DWORD dwAction,
   4865         DWORD dwIndex,
   4866         DWORD dwValue) = 0;
   4867 
   4868     virtual HRESULT STDMETHODCALLTYPE Select(
   4869         HIMC hIMC,
   4870         WINBOOL fSelect) = 0;
   4871 
   4872     virtual HRESULT STDMETHODCALLTYPE SetCompositionString(
   4873         HIMC hIMC,
   4874         DWORD dwIndex,
   4875         void *pComp,
   4876         DWORD dwCompLen,
   4877         void *pRead,
   4878         DWORD dwReadLen) = 0;
   4879 
   4880     virtual HRESULT STDMETHODCALLTYPE ToAsciiEx(
   4881         UINT uVirKey,
   4882         UINT uScanCode,
   4883         BYTE *pbKeyState,
   4884         UINT fuState,
   4885         HIMC hIMC,
   4886         DWORD *pdwTransBuf,
   4887         UINT *puSize) = 0;
   4888 
   4889     virtual HRESULT STDMETHODCALLTYPE RegisterWord(
   4890         LPWSTR szReading,
   4891         DWORD dwStyle,
   4892         LPWSTR szString) = 0;
   4893 
   4894     virtual HRESULT STDMETHODCALLTYPE UnregisterWord(
   4895         LPWSTR szReading,
   4896         DWORD dwStyle,
   4897         LPWSTR szString) = 0;
   4898 
   4899     virtual HRESULT STDMETHODCALLTYPE GetRegisterWordStyle(
   4900         UINT nItem,
   4901         STYLEBUFW *pStyleBuf,
   4902         UINT *puBufSize) = 0;
   4903 
   4904     virtual HRESULT STDMETHODCALLTYPE EnumRegisterWord(
   4905         LPWSTR szReading,
   4906         DWORD dwStyle,
   4907         LPWSTR szRegister,
   4908         LPVOID pData,
   4909         IEnumRegisterWordW **ppEnum) = 0;
   4910 
   4911     virtual HRESULT STDMETHODCALLTYPE GetCodePageA(
   4912         UINT *uCodePage) = 0;
   4913 
   4914     virtual HRESULT STDMETHODCALLTYPE GetLangId(
   4915         LANGID *plid) = 0;
   4916 
   4917 };
   4918 #ifdef __CRT_UUID_DECL
   4919 __CRT_UUID_DECL(IActiveIME, 0x6fe20962, 0xd077, 0x11d0, 0x8f,0xe7, 0x00,0xaa,0x00,0x6b,0xcc,0x59)
   4920 #endif
   4921 #else
   4922 typedef struct IActiveIMEVtbl {
   4923     BEGIN_INTERFACE
   4924 
   4925     /*** IUnknown methods ***/
   4926     HRESULT (STDMETHODCALLTYPE *QueryInterface)(
   4927         IActiveIME* This,
   4928         REFIID riid,
   4929         void **ppvObject);
   4930 
   4931     ULONG (STDMETHODCALLTYPE *AddRef)(
   4932         IActiveIME* This);
   4933 
   4934     ULONG (STDMETHODCALLTYPE *Release)(
   4935         IActiveIME* This);
   4936 
   4937     /*** IActiveIME methods ***/
   4938     HRESULT (STDMETHODCALLTYPE *Inquire)(
   4939         IActiveIME* This,
   4940         DWORD dwSystemInfoFlags,
   4941         IMEINFO *pIMEInfo,
   4942         LPWSTR szWndClass,
   4943         DWORD *pdwPrivate);
   4944 
   4945     HRESULT (STDMETHODCALLTYPE *ConversionList)(
   4946         IActiveIME* This,
   4947         HIMC hIMC,
   4948         LPWSTR szSource,
   4949         UINT uFlag,
   4950         UINT uBufLen,
   4951         CANDIDATELIST *pDest,
   4952         UINT *puCopied);
   4953 
   4954     HRESULT (STDMETHODCALLTYPE *Configure)(
   4955         IActiveIME* This,
   4956         HKL hKL,
   4957         HWND hWnd,
   4958         DWORD dwMode,
   4959         REGISTERWORDW *pRegisterWord);
   4960 
   4961     HRESULT (STDMETHODCALLTYPE *Destroy)(
   4962         IActiveIME* This,
   4963         UINT uReserved);
   4964 
   4965     HRESULT (STDMETHODCALLTYPE *Escape)(
   4966         IActiveIME* This,
   4967         HIMC hIMC,
   4968         UINT uEscape,
   4969         void *pData,
   4970         LRESULT *plResult);
   4971 
   4972     HRESULT (STDMETHODCALLTYPE *SetActiveContext)(
   4973         IActiveIME* This,
   4974         HIMC hIMC,
   4975         WINBOOL fFlag);
   4976 
   4977     HRESULT (STDMETHODCALLTYPE *ProcessKey)(
   4978         IActiveIME* This,
   4979         HIMC hIMC,
   4980         UINT uVirKey,
   4981         DWORD lParam,
   4982         BYTE *pbKeyState);
   4983 
   4984     HRESULT (STDMETHODCALLTYPE *Notify)(
   4985         IActiveIME* This,
   4986         HIMC hIMC,
   4987         DWORD dwAction,
   4988         DWORD dwIndex,
   4989         DWORD dwValue);
   4990 
   4991     HRESULT (STDMETHODCALLTYPE *Select)(
   4992         IActiveIME* This,
   4993         HIMC hIMC,
   4994         WINBOOL fSelect);
   4995 
   4996     HRESULT (STDMETHODCALLTYPE *SetCompositionString)(
   4997         IActiveIME* This,
   4998         HIMC hIMC,
   4999         DWORD dwIndex,
   5000         void *pComp,
   5001         DWORD dwCompLen,
   5002         void *pRead,
   5003         DWORD dwReadLen);
   5004 
   5005     HRESULT (STDMETHODCALLTYPE *ToAsciiEx)(
   5006         IActiveIME* This,
   5007         UINT uVirKey,
   5008         UINT uScanCode,
   5009         BYTE *pbKeyState,
   5010         UINT fuState,
   5011         HIMC hIMC,
   5012         DWORD *pdwTransBuf,
   5013         UINT *puSize);
   5014 
   5015     HRESULT (STDMETHODCALLTYPE *RegisterWord)(
   5016         IActiveIME* This,
   5017         LPWSTR szReading,
   5018         DWORD dwStyle,
   5019         LPWSTR szString);
   5020 
   5021     HRESULT (STDMETHODCALLTYPE *UnregisterWord)(
   5022         IActiveIME* This,
   5023         LPWSTR szReading,
   5024         DWORD dwStyle,
   5025         LPWSTR szString);
   5026 
   5027     HRESULT (STDMETHODCALLTYPE *GetRegisterWordStyle)(
   5028         IActiveIME* This,
   5029         UINT nItem,
   5030         STYLEBUFW *pStyleBuf,
   5031         UINT *puBufSize);
   5032 
   5033     HRESULT (STDMETHODCALLTYPE *EnumRegisterWord)(
   5034         IActiveIME* This,
   5035         LPWSTR szReading,
   5036         DWORD dwStyle,
   5037         LPWSTR szRegister,
   5038         LPVOID pData,
   5039         IEnumRegisterWordW **ppEnum);
   5040 
   5041     HRESULT (STDMETHODCALLTYPE *GetCodePageA)(
   5042         IActiveIME* This,
   5043         UINT *uCodePage);
   5044 
   5045     HRESULT (STDMETHODCALLTYPE *GetLangId)(
   5046         IActiveIME* This,
   5047         LANGID *plid);
   5048 
   5049     END_INTERFACE
   5050 } IActiveIMEVtbl;
   5051 interface IActiveIME {
   5052     CONST_VTBL IActiveIMEVtbl* lpVtbl;
   5053 };
   5054 
   5055 #ifdef COBJMACROS
   5056 #ifndef WIDL_C_INLINE_WRAPPERS
   5057 /*** IUnknown methods ***/
   5058 #define IActiveIME_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
   5059 #define IActiveIME_AddRef(This) (This)->lpVtbl->AddRef(This)
   5060 #define IActiveIME_Release(This) (This)->lpVtbl->Release(This)
   5061 /*** IActiveIME methods ***/
   5062 #define IActiveIME_Inquire(This,dwSystemInfoFlags,pIMEInfo,szWndClass,pdwPrivate) (This)->lpVtbl->Inquire(This,dwSystemInfoFlags,pIMEInfo,szWndClass,pdwPrivate)
   5063 #define IActiveIME_ConversionList(This,hIMC,szSource,uFlag,uBufLen,pDest,puCopied) (This)->lpVtbl->ConversionList(This,hIMC,szSource,uFlag,uBufLen,pDest,puCopied)
   5064 #define IActiveIME_Configure(This,hKL,hWnd,dwMode,pRegisterWord) (This)->lpVtbl->Configure(This,hKL,hWnd,dwMode,pRegisterWord)
   5065 #define IActiveIME_Destroy(This,uReserved) (This)->lpVtbl->Destroy(This,uReserved)
   5066 #define IActiveIME_Escape(This,hIMC,uEscape,pData,plResult) (This)->lpVtbl->Escape(This,hIMC,uEscape,pData,plResult)
   5067 #define IActiveIME_SetActiveContext(This,hIMC,fFlag) (This)->lpVtbl->SetActiveContext(This,hIMC,fFlag)
   5068 #define IActiveIME_ProcessKey(This,hIMC,uVirKey,lParam,pbKeyState) (This)->lpVtbl->ProcessKey(This,hIMC,uVirKey,lParam,pbKeyState)
   5069 #define IActiveIME_Notify(This,hIMC,dwAction,dwIndex,dwValue) (This)->lpVtbl->Notify(This,hIMC,dwAction,dwIndex,dwValue)
   5070 #define IActiveIME_Select(This,hIMC,fSelect) (This)->lpVtbl->Select(This,hIMC,fSelect)
   5071 #define IActiveIME_SetCompositionString(This,hIMC,dwIndex,pComp,dwCompLen,pRead,dwReadLen) (This)->lpVtbl->SetCompositionString(This,hIMC,dwIndex,pComp,dwCompLen,pRead,dwReadLen)
   5072 #define IActiveIME_ToAsciiEx(This,uVirKey,uScanCode,pbKeyState,fuState,hIMC,pdwTransBuf,puSize) (This)->lpVtbl->ToAsciiEx(This,uVirKey,uScanCode,pbKeyState,fuState,hIMC,pdwTransBuf,puSize)
   5073 #define IActiveIME_RegisterWord(This,szReading,dwStyle,szString) (This)->lpVtbl->RegisterWord(This,szReading,dwStyle,szString)
   5074 #define IActiveIME_UnregisterWord(This,szReading,dwStyle,szString) (This)->lpVtbl->UnregisterWord(This,szReading,dwStyle,szString)
   5075 #define IActiveIME_GetRegisterWordStyle(This,nItem,pStyleBuf,puBufSize) (This)->lpVtbl->GetRegisterWordStyle(This,nItem,pStyleBuf,puBufSize)
   5076 #define IActiveIME_EnumRegisterWord(This,szReading,dwStyle,szRegister,pData,ppEnum) (This)->lpVtbl->EnumRegisterWord(This,szReading,dwStyle,szRegister,pData,ppEnum)
   5077 #define IActiveIME_GetCodePageA(This,uCodePage) (This)->lpVtbl->GetCodePageA(This,uCodePage)
   5078 #define IActiveIME_GetLangId(This,plid) (This)->lpVtbl->GetLangId(This,plid)
   5079 #else
   5080 /*** IUnknown methods ***/
   5081 static FORCEINLINE HRESULT IActiveIME_QueryInterface(IActiveIME* This,REFIID riid,void **ppvObject) {
   5082     return This->lpVtbl->QueryInterface(This,riid,ppvObject);
   5083 }
   5084 static FORCEINLINE ULONG IActiveIME_AddRef(IActiveIME* This) {
   5085     return This->lpVtbl->AddRef(This);
   5086 }
   5087 static FORCEINLINE ULONG IActiveIME_Release(IActiveIME* This) {
   5088     return This->lpVtbl->Release(This);
   5089 }
   5090 /*** IActiveIME methods ***/
   5091 static FORCEINLINE HRESULT IActiveIME_Inquire(IActiveIME* This,DWORD dwSystemInfoFlags,IMEINFO *pIMEInfo,LPWSTR szWndClass,DWORD *pdwPrivate) {
   5092     return This->lpVtbl->Inquire(This,dwSystemInfoFlags,pIMEInfo,szWndClass,pdwPrivate);
   5093 }
   5094 static FORCEINLINE HRESULT IActiveIME_ConversionList(IActiveIME* This,HIMC hIMC,LPWSTR szSource,UINT uFlag,UINT uBufLen,CANDIDATELIST *pDest,UINT *puCopied) {
   5095     return This->lpVtbl->ConversionList(This,hIMC,szSource,uFlag,uBufLen,pDest,puCopied);
   5096 }
   5097 static FORCEINLINE HRESULT IActiveIME_Configure(IActiveIME* This,HKL hKL,HWND hWnd,DWORD dwMode,REGISTERWORDW *pRegisterWord) {
   5098     return This->lpVtbl->Configure(This,hKL,hWnd,dwMode,pRegisterWord);
   5099 }
   5100 static FORCEINLINE HRESULT IActiveIME_Destroy(IActiveIME* This,UINT uReserved) {
   5101     return This->lpVtbl->Destroy(This,uReserved);
   5102 }
   5103 static FORCEINLINE HRESULT IActiveIME_Escape(IActiveIME* This,HIMC hIMC,UINT uEscape,void *pData,LRESULT *plResult) {
   5104     return This->lpVtbl->Escape(This,hIMC,uEscape,pData,plResult);
   5105 }
   5106 static FORCEINLINE HRESULT IActiveIME_SetActiveContext(IActiveIME* This,HIMC hIMC,WINBOOL fFlag) {
   5107     return This->lpVtbl->SetActiveContext(This,hIMC,fFlag);
   5108 }
   5109 static FORCEINLINE HRESULT IActiveIME_ProcessKey(IActiveIME* This,HIMC hIMC,UINT uVirKey,DWORD lParam,BYTE *pbKeyState) {
   5110     return This->lpVtbl->ProcessKey(This,hIMC,uVirKey,lParam,pbKeyState);
   5111 }
   5112 static FORCEINLINE HRESULT IActiveIME_Notify(IActiveIME* This,HIMC hIMC,DWORD dwAction,DWORD dwIndex,DWORD dwValue) {
   5113     return This->lpVtbl->Notify(This,hIMC,dwAction,dwIndex,dwValue);
   5114 }
   5115 static FORCEINLINE HRESULT IActiveIME_Select(IActiveIME* This,HIMC hIMC,WINBOOL fSelect) {
   5116     return This->lpVtbl->Select(This,hIMC,fSelect);
   5117 }
   5118 static FORCEINLINE HRESULT IActiveIME_SetCompositionString(IActiveIME* This,HIMC hIMC,DWORD dwIndex,void *pComp,DWORD dwCompLen,void *pRead,DWORD dwReadLen) {
   5119     return This->lpVtbl->SetCompositionString(This,hIMC,dwIndex,pComp,dwCompLen,pRead,dwReadLen);
   5120 }
   5121 static FORCEINLINE HRESULT IActiveIME_ToAsciiEx(IActiveIME* This,UINT uVirKey,UINT uScanCode,BYTE *pbKeyState,UINT fuState,HIMC hIMC,DWORD *pdwTransBuf,UINT *puSize) {
   5122     return This->lpVtbl->ToAsciiEx(This,uVirKey,uScanCode,pbKeyState,fuState,hIMC,pdwTransBuf,puSize);
   5123 }
   5124 static FORCEINLINE HRESULT IActiveIME_RegisterWord(IActiveIME* This,LPWSTR szReading,DWORD dwStyle,LPWSTR szString) {
   5125     return This->lpVtbl->RegisterWord(This,szReading,dwStyle,szString);
   5126 }
   5127 static FORCEINLINE HRESULT IActiveIME_UnregisterWord(IActiveIME* This,LPWSTR szReading,DWORD dwStyle,LPWSTR szString) {
   5128     return This->lpVtbl->UnregisterWord(This,szReading,dwStyle,szString);
   5129 }
   5130 static FORCEINLINE HRESULT IActiveIME_GetRegisterWordStyle(IActiveIME* This,UINT nItem,STYLEBUFW *pStyleBuf,UINT *puBufSize) {
   5131     return This->lpVtbl->GetRegisterWordStyle(This,nItem,pStyleBuf,puBufSize);
   5132 }
   5133 static FORCEINLINE HRESULT IActiveIME_EnumRegisterWord(IActiveIME* This,LPWSTR szReading,DWORD dwStyle,LPWSTR szRegister,LPVOID pData,IEnumRegisterWordW **ppEnum) {
   5134     return This->lpVtbl->EnumRegisterWord(This,szReading,dwStyle,szRegister,pData,ppEnum);
   5135 }
   5136 static FORCEINLINE HRESULT IActiveIME_GetCodePageA(IActiveIME* This,UINT *uCodePage) {
   5137     return This->lpVtbl->GetCodePageA(This,uCodePage);
   5138 }
   5139 static FORCEINLINE HRESULT IActiveIME_GetLangId(IActiveIME* This,LANGID *plid) {
   5140     return This->lpVtbl->GetLangId(This,plid);
   5141 }
   5142 #endif
   5143 #endif
   5144 
   5145 #endif
   5146 
   5147 HRESULT STDMETHODCALLTYPE IActiveIME_Inquire_Proxy(
   5148     IActiveIME* This,
   5149     DWORD dwSystemInfoFlags,
   5150     IMEINFO *pIMEInfo,
   5151     LPWSTR szWndClass,
   5152     DWORD *pdwPrivate);
   5153 void __RPC_STUB IActiveIME_Inquire_Stub(
   5154     IRpcStubBuffer* This,
   5155     IRpcChannelBuffer* pRpcChannelBuffer,
   5156     PRPC_MESSAGE pRpcMessage,
   5157     DWORD* pdwStubPhase);
   5158 HRESULT STDMETHODCALLTYPE IActiveIME_ConversionList_Proxy(
   5159     IActiveIME* This,
   5160     HIMC hIMC,
   5161     LPWSTR szSource,
   5162     UINT uFlag,
   5163     UINT uBufLen,
   5164     CANDIDATELIST *pDest,
   5165     UINT *puCopied);
   5166 void __RPC_STUB IActiveIME_ConversionList_Stub(
   5167     IRpcStubBuffer* This,
   5168     IRpcChannelBuffer* pRpcChannelBuffer,
   5169     PRPC_MESSAGE pRpcMessage,
   5170     DWORD* pdwStubPhase);
   5171 HRESULT STDMETHODCALLTYPE IActiveIME_Configure_Proxy(
   5172     IActiveIME* This,
   5173     HKL hKL,
   5174     HWND hWnd,
   5175     DWORD dwMode,
   5176     REGISTERWORDW *pRegisterWord);
   5177 void __RPC_STUB IActiveIME_Configure_Stub(
   5178     IRpcStubBuffer* This,
   5179     IRpcChannelBuffer* pRpcChannelBuffer,
   5180     PRPC_MESSAGE pRpcMessage,
   5181     DWORD* pdwStubPhase);
   5182 HRESULT STDMETHODCALLTYPE IActiveIME_Destroy_Proxy(
   5183     IActiveIME* This,
   5184     UINT uReserved);
   5185 void __RPC_STUB IActiveIME_Destroy_Stub(
   5186     IRpcStubBuffer* This,
   5187     IRpcChannelBuffer* pRpcChannelBuffer,
   5188     PRPC_MESSAGE pRpcMessage,
   5189     DWORD* pdwStubPhase);
   5190 HRESULT STDMETHODCALLTYPE IActiveIME_Escape_Proxy(
   5191     IActiveIME* This,
   5192     HIMC hIMC,
   5193     UINT uEscape,
   5194     void *pData,
   5195     LRESULT *plResult);
   5196 void __RPC_STUB IActiveIME_Escape_Stub(
   5197     IRpcStubBuffer* This,
   5198     IRpcChannelBuffer* pRpcChannelBuffer,
   5199     PRPC_MESSAGE pRpcMessage,
   5200     DWORD* pdwStubPhase);
   5201 HRESULT STDMETHODCALLTYPE IActiveIME_SetActiveContext_Proxy(
   5202     IActiveIME* This,
   5203     HIMC hIMC,
   5204     WINBOOL fFlag);
   5205 void __RPC_STUB IActiveIME_SetActiveContext_Stub(
   5206     IRpcStubBuffer* This,
   5207     IRpcChannelBuffer* pRpcChannelBuffer,
   5208     PRPC_MESSAGE pRpcMessage,
   5209     DWORD* pdwStubPhase);
   5210 HRESULT STDMETHODCALLTYPE IActiveIME_ProcessKey_Proxy(
   5211     IActiveIME* This,
   5212     HIMC hIMC,
   5213     UINT uVirKey,
   5214     DWORD lParam,
   5215     BYTE *pbKeyState);
   5216 void __RPC_STUB IActiveIME_ProcessKey_Stub(
   5217     IRpcStubBuffer* This,
   5218     IRpcChannelBuffer* pRpcChannelBuffer,
   5219     PRPC_MESSAGE pRpcMessage,
   5220     DWORD* pdwStubPhase);
   5221 HRESULT STDMETHODCALLTYPE IActiveIME_Notify_Proxy(
   5222     IActiveIME* This,
   5223     HIMC hIMC,
   5224     DWORD dwAction,
   5225     DWORD dwIndex,
   5226     DWORD dwValue);
   5227 void __RPC_STUB IActiveIME_Notify_Stub(
   5228     IRpcStubBuffer* This,
   5229     IRpcChannelBuffer* pRpcChannelBuffer,
   5230     PRPC_MESSAGE pRpcMessage,
   5231     DWORD* pdwStubPhase);
   5232 HRESULT STDMETHODCALLTYPE IActiveIME_Select_Proxy(
   5233     IActiveIME* This,
   5234     HIMC hIMC,
   5235     WINBOOL fSelect);
   5236 void __RPC_STUB IActiveIME_Select_Stub(
   5237     IRpcStubBuffer* This,
   5238     IRpcChannelBuffer* pRpcChannelBuffer,
   5239     PRPC_MESSAGE pRpcMessage,
   5240     DWORD* pdwStubPhase);
   5241 HRESULT STDMETHODCALLTYPE IActiveIME_SetCompositionString_Proxy(
   5242     IActiveIME* This,
   5243     HIMC hIMC,
   5244     DWORD dwIndex,
   5245     void *pComp,
   5246     DWORD dwCompLen,
   5247     void *pRead,
   5248     DWORD dwReadLen);
   5249 void __RPC_STUB IActiveIME_SetCompositionString_Stub(
   5250     IRpcStubBuffer* This,
   5251     IRpcChannelBuffer* pRpcChannelBuffer,
   5252     PRPC_MESSAGE pRpcMessage,
   5253     DWORD* pdwStubPhase);
   5254 HRESULT STDMETHODCALLTYPE IActiveIME_ToAsciiEx_Proxy(
   5255     IActiveIME* This,
   5256     UINT uVirKey,
   5257     UINT uScanCode,
   5258     BYTE *pbKeyState,
   5259     UINT fuState,
   5260     HIMC hIMC,
   5261     DWORD *pdwTransBuf,
   5262     UINT *puSize);
   5263 void __RPC_STUB IActiveIME_ToAsciiEx_Stub(
   5264     IRpcStubBuffer* This,
   5265     IRpcChannelBuffer* pRpcChannelBuffer,
   5266     PRPC_MESSAGE pRpcMessage,
   5267     DWORD* pdwStubPhase);
   5268 HRESULT STDMETHODCALLTYPE IActiveIME_RegisterWord_Proxy(
   5269     IActiveIME* This,
   5270     LPWSTR szReading,
   5271     DWORD dwStyle,
   5272     LPWSTR szString);
   5273 void __RPC_STUB IActiveIME_RegisterWord_Stub(
   5274     IRpcStubBuffer* This,
   5275     IRpcChannelBuffer* pRpcChannelBuffer,
   5276     PRPC_MESSAGE pRpcMessage,
   5277     DWORD* pdwStubPhase);
   5278 HRESULT STDMETHODCALLTYPE IActiveIME_UnregisterWord_Proxy(
   5279     IActiveIME* This,
   5280     LPWSTR szReading,
   5281     DWORD dwStyle,
   5282     LPWSTR szString);
   5283 void __RPC_STUB IActiveIME_UnregisterWord_Stub(
   5284     IRpcStubBuffer* This,
   5285     IRpcChannelBuffer* pRpcChannelBuffer,
   5286     PRPC_MESSAGE pRpcMessage,
   5287     DWORD* pdwStubPhase);
   5288 HRESULT STDMETHODCALLTYPE IActiveIME_GetRegisterWordStyle_Proxy(
   5289     IActiveIME* This,
   5290     UINT nItem,
   5291     STYLEBUFW *pStyleBuf,
   5292     UINT *puBufSize);
   5293 void __RPC_STUB IActiveIME_GetRegisterWordStyle_Stub(
   5294     IRpcStubBuffer* This,
   5295     IRpcChannelBuffer* pRpcChannelBuffer,
   5296     PRPC_MESSAGE pRpcMessage,
   5297     DWORD* pdwStubPhase);
   5298 HRESULT STDMETHODCALLTYPE IActiveIME_EnumRegisterWord_Proxy(
   5299     IActiveIME* This,
   5300     LPWSTR szReading,
   5301     DWORD dwStyle,
   5302     LPWSTR szRegister,
   5303     LPVOID pData,
   5304     IEnumRegisterWordW **ppEnum);
   5305 void __RPC_STUB IActiveIME_EnumRegisterWord_Stub(
   5306     IRpcStubBuffer* This,
   5307     IRpcChannelBuffer* pRpcChannelBuffer,
   5308     PRPC_MESSAGE pRpcMessage,
   5309     DWORD* pdwStubPhase);
   5310 HRESULT STDMETHODCALLTYPE IActiveIME_GetCodePageA_Proxy(
   5311     IActiveIME* This,
   5312     UINT *uCodePage);
   5313 void __RPC_STUB IActiveIME_GetCodePageA_Stub(
   5314     IRpcStubBuffer* This,
   5315     IRpcChannelBuffer* pRpcChannelBuffer,
   5316     PRPC_MESSAGE pRpcMessage,
   5317     DWORD* pdwStubPhase);
   5318 HRESULT STDMETHODCALLTYPE IActiveIME_GetLangId_Proxy(
   5319     IActiveIME* This,
   5320     LANGID *plid);
   5321 void __RPC_STUB IActiveIME_GetLangId_Stub(
   5322     IRpcStubBuffer* This,
   5323     IRpcChannelBuffer* pRpcChannelBuffer,
   5324     PRPC_MESSAGE pRpcMessage,
   5325     DWORD* pdwStubPhase);
   5326 
   5327 #endif  /* __IActiveIME_INTERFACE_DEFINED__ */
   5328 
   5329 /*****************************************************************************
   5330  * IActiveIME2 interface
   5331  */
   5332 #ifndef __IActiveIME2_INTERFACE_DEFINED__
   5333 #define __IActiveIME2_INTERFACE_DEFINED__
   5334 
   5335 DEFINE_GUID(IID_IActiveIME2, 0xe1c4bf0e, 0x2d53, 0x11d2, 0x93,0xe1, 0x00,0x60,0xb0,0x67,0xb8,0x6e);
   5336 #if defined(__cplusplus) && !defined(CINTERFACE)
   5337 MIDL_INTERFACE("e1c4bf0e-2d53-11d2-93e1-0060b067b86e")
   5338 IActiveIME2 : public IActiveIME
   5339 {
   5340     virtual HRESULT STDMETHODCALLTYPE Sleep(
   5341         ) = 0;
   5342 
   5343     virtual HRESULT STDMETHODCALLTYPE Unsleep(
   5344         WINBOOL fDead) = 0;
   5345 
   5346 };
   5347 #ifdef __CRT_UUID_DECL
   5348 __CRT_UUID_DECL(IActiveIME2, 0xe1c4bf0e, 0x2d53, 0x11d2, 0x93,0xe1, 0x00,0x60,0xb0,0x67,0xb8,0x6e)
   5349 #endif
   5350 #else
   5351 typedef struct IActiveIME2Vtbl {
   5352     BEGIN_INTERFACE
   5353 
   5354     /*** IUnknown methods ***/
   5355     HRESULT (STDMETHODCALLTYPE *QueryInterface)(
   5356         IActiveIME2* This,
   5357         REFIID riid,
   5358         void **ppvObject);
   5359 
   5360     ULONG (STDMETHODCALLTYPE *AddRef)(
   5361         IActiveIME2* This);
   5362 
   5363     ULONG (STDMETHODCALLTYPE *Release)(
   5364         IActiveIME2* This);
   5365 
   5366     /*** IActiveIME methods ***/
   5367     HRESULT (STDMETHODCALLTYPE *Inquire)(
   5368         IActiveIME2* This,
   5369         DWORD dwSystemInfoFlags,
   5370         IMEINFO *pIMEInfo,
   5371         LPWSTR szWndClass,
   5372         DWORD *pdwPrivate);
   5373 
   5374     HRESULT (STDMETHODCALLTYPE *ConversionList)(
   5375         IActiveIME2* This,
   5376         HIMC hIMC,
   5377         LPWSTR szSource,
   5378         UINT uFlag,
   5379         UINT uBufLen,
   5380         CANDIDATELIST *pDest,
   5381         UINT *puCopied);
   5382 
   5383     HRESULT (STDMETHODCALLTYPE *Configure)(
   5384         IActiveIME2* This,
   5385         HKL hKL,
   5386         HWND hWnd,
   5387         DWORD dwMode,
   5388         REGISTERWORDW *pRegisterWord);
   5389 
   5390     HRESULT (STDMETHODCALLTYPE *Destroy)(
   5391         IActiveIME2* This,
   5392         UINT uReserved);
   5393 
   5394     HRESULT (STDMETHODCALLTYPE *Escape)(
   5395         IActiveIME2* This,
   5396         HIMC hIMC,
   5397         UINT uEscape,
   5398         void *pData,
   5399         LRESULT *plResult);
   5400 
   5401     HRESULT (STDMETHODCALLTYPE *SetActiveContext)(
   5402         IActiveIME2* This,
   5403         HIMC hIMC,
   5404         WINBOOL fFlag);
   5405 
   5406     HRESULT (STDMETHODCALLTYPE *ProcessKey)(
   5407         IActiveIME2* This,
   5408         HIMC hIMC,
   5409         UINT uVirKey,
   5410         DWORD lParam,
   5411         BYTE *pbKeyState);
   5412 
   5413     HRESULT (STDMETHODCALLTYPE *Notify)(
   5414         IActiveIME2* This,
   5415         HIMC hIMC,
   5416         DWORD dwAction,
   5417         DWORD dwIndex,
   5418         DWORD dwValue);
   5419 
   5420     HRESULT (STDMETHODCALLTYPE *Select)(
   5421         IActiveIME2* This,
   5422         HIMC hIMC,
   5423         WINBOOL fSelect);
   5424 
   5425     HRESULT (STDMETHODCALLTYPE *SetCompositionString)(
   5426         IActiveIME2* This,
   5427         HIMC hIMC,
   5428         DWORD dwIndex,
   5429         void *pComp,
   5430         DWORD dwCompLen,
   5431         void *pRead,
   5432         DWORD dwReadLen);
   5433 
   5434     HRESULT (STDMETHODCALLTYPE *ToAsciiEx)(
   5435         IActiveIME2* This,
   5436         UINT uVirKey,
   5437         UINT uScanCode,
   5438         BYTE *pbKeyState,
   5439         UINT fuState,
   5440         HIMC hIMC,
   5441         DWORD *pdwTransBuf,
   5442         UINT *puSize);
   5443 
   5444     HRESULT (STDMETHODCALLTYPE *RegisterWord)(
   5445         IActiveIME2* This,
   5446         LPWSTR szReading,
   5447         DWORD dwStyle,
   5448         LPWSTR szString);
   5449 
   5450     HRESULT (STDMETHODCALLTYPE *UnregisterWord)(
   5451         IActiveIME2* This,
   5452         LPWSTR szReading,
   5453         DWORD dwStyle,
   5454         LPWSTR szString);
   5455 
   5456     HRESULT (STDMETHODCALLTYPE *GetRegisterWordStyle)(
   5457         IActiveIME2* This,
   5458         UINT nItem,
   5459         STYLEBUFW *pStyleBuf,
   5460         UINT *puBufSize);
   5461 
   5462     HRESULT (STDMETHODCALLTYPE *EnumRegisterWord)(
   5463         IActiveIME2* This,
   5464         LPWSTR szReading,
   5465         DWORD dwStyle,
   5466         LPWSTR szRegister,
   5467         LPVOID pData,
   5468         IEnumRegisterWordW **ppEnum);
   5469 
   5470     HRESULT (STDMETHODCALLTYPE *GetCodePageA)(
   5471         IActiveIME2* This,
   5472         UINT *uCodePage);
   5473 
   5474     HRESULT (STDMETHODCALLTYPE *GetLangId)(
   5475         IActiveIME2* This,
   5476         LANGID *plid);
   5477 
   5478     /*** IActiveIME2 methods ***/
   5479     HRESULT (STDMETHODCALLTYPE *Sleep)(
   5480         IActiveIME2* This);
   5481 
   5482     HRESULT (STDMETHODCALLTYPE *Unsleep)(
   5483         IActiveIME2* This,
   5484         WINBOOL fDead);
   5485 
   5486     END_INTERFACE
   5487 } IActiveIME2Vtbl;
   5488 interface IActiveIME2 {
   5489     CONST_VTBL IActiveIME2Vtbl* lpVtbl;
   5490 };
   5491 
   5492 #ifdef COBJMACROS
   5493 #ifndef WIDL_C_INLINE_WRAPPERS
   5494 /*** IUnknown methods ***/
   5495 #define IActiveIME2_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
   5496 #define IActiveIME2_AddRef(This) (This)->lpVtbl->AddRef(This)
   5497 #define IActiveIME2_Release(This) (This)->lpVtbl->Release(This)
   5498 /*** IActiveIME methods ***/
   5499 #define IActiveIME2_Inquire(This,dwSystemInfoFlags,pIMEInfo,szWndClass,pdwPrivate) (This)->lpVtbl->Inquire(This,dwSystemInfoFlags,pIMEInfo,szWndClass,pdwPrivate)
   5500 #define IActiveIME2_ConversionList(This,hIMC,szSource,uFlag,uBufLen,pDest,puCopied) (This)->lpVtbl->ConversionList(This,hIMC,szSource,uFlag,uBufLen,pDest,puCopied)
   5501 #define IActiveIME2_Configure(This,hKL,hWnd,dwMode,pRegisterWord) (This)->lpVtbl->Configure(This,hKL,hWnd,dwMode,pRegisterWord)
   5502 #define IActiveIME2_Destroy(This,uReserved) (This)->lpVtbl->Destroy(This,uReserved)
   5503 #define IActiveIME2_Escape(This,hIMC,uEscape,pData,plResult) (This)->lpVtbl->Escape(This,hIMC,uEscape,pData,plResult)
   5504 #define IActiveIME2_SetActiveContext(This,hIMC,fFlag) (This)->lpVtbl->SetActiveContext(This,hIMC,fFlag)
   5505 #define IActiveIME2_ProcessKey(This,hIMC,uVirKey,lParam,pbKeyState) (This)->lpVtbl->ProcessKey(This,hIMC,uVirKey,lParam,pbKeyState)
   5506 #define IActiveIME2_Notify(This,hIMC,dwAction,dwIndex,dwValue) (This)->lpVtbl->Notify(This,hIMC,dwAction,dwIndex,dwValue)
   5507 #define IActiveIME2_Select(This,hIMC,fSelect) (This)->lpVtbl->Select(This,hIMC,fSelect)
   5508 #define IActiveIME2_SetCompositionString(This,hIMC,dwIndex,pComp,dwCompLen,pRead,dwReadLen) (This)->lpVtbl->SetCompositionString(This,hIMC,dwIndex,pComp,dwCompLen,pRead,dwReadLen)
   5509 #define IActiveIME2_ToAsciiEx(This,uVirKey,uScanCode,pbKeyState,fuState,hIMC,pdwTransBuf,puSize) (This)->lpVtbl->ToAsciiEx(This,uVirKey,uScanCode,pbKeyState,fuState,hIMC,pdwTransBuf,puSize)
   5510 #define IActiveIME2_RegisterWord(This,szReading,dwStyle,szString) (This)->lpVtbl->RegisterWord(This,szReading,dwStyle,szString)
   5511 #define IActiveIME2_UnregisterWord(This,szReading,dwStyle,szString) (This)->lpVtbl->UnregisterWord(This,szReading,dwStyle,szString)
   5512 #define IActiveIME2_GetRegisterWordStyle(This,nItem,pStyleBuf,puBufSize) (This)->lpVtbl->GetRegisterWordStyle(This,nItem,pStyleBuf,puBufSize)
   5513 #define IActiveIME2_EnumRegisterWord(This,szReading,dwStyle,szRegister,pData,ppEnum) (This)->lpVtbl->EnumRegisterWord(This,szReading,dwStyle,szRegister,pData,ppEnum)
   5514 #define IActiveIME2_GetCodePageA(This,uCodePage) (This)->lpVtbl->GetCodePageA(This,uCodePage)
   5515 #define IActiveIME2_GetLangId(This,plid) (This)->lpVtbl->GetLangId(This,plid)
   5516 /*** IActiveIME2 methods ***/
   5517 #define IActiveIME2_Sleep(This) (This)->lpVtbl->Sleep(This)
   5518 #define IActiveIME2_Unsleep(This,fDead) (This)->lpVtbl->Unsleep(This,fDead)
   5519 #else
   5520 /*** IUnknown methods ***/
   5521 static FORCEINLINE HRESULT IActiveIME2_QueryInterface(IActiveIME2* This,REFIID riid,void **ppvObject) {
   5522     return This->lpVtbl->QueryInterface(This,riid,ppvObject);
   5523 }
   5524 static FORCEINLINE ULONG IActiveIME2_AddRef(IActiveIME2* This) {
   5525     return This->lpVtbl->AddRef(This);
   5526 }
   5527 static FORCEINLINE ULONG IActiveIME2_Release(IActiveIME2* This) {
   5528     return This->lpVtbl->Release(This);
   5529 }
   5530 /*** IActiveIME methods ***/
   5531 static FORCEINLINE HRESULT IActiveIME2_Inquire(IActiveIME2* This,DWORD dwSystemInfoFlags,IMEINFO *pIMEInfo,LPWSTR szWndClass,DWORD *pdwPrivate) {
   5532     return This->lpVtbl->Inquire(This,dwSystemInfoFlags,pIMEInfo,szWndClass,pdwPrivate);
   5533 }
   5534 static FORCEINLINE HRESULT IActiveIME2_ConversionList(IActiveIME2* This,HIMC hIMC,LPWSTR szSource,UINT uFlag,UINT uBufLen,CANDIDATELIST *pDest,UINT *puCopied) {
   5535     return This->lpVtbl->ConversionList(This,hIMC,szSource,uFlag,uBufLen,pDest,puCopied);
   5536 }
   5537 static FORCEINLINE HRESULT IActiveIME2_Configure(IActiveIME2* This,HKL hKL,HWND hWnd,DWORD dwMode,REGISTERWORDW *pRegisterWord) {
   5538     return This->lpVtbl->Configure(This,hKL,hWnd,dwMode,pRegisterWord);
   5539 }
   5540 static FORCEINLINE HRESULT IActiveIME2_Destroy(IActiveIME2* This,UINT uReserved) {
   5541     return This->lpVtbl->Destroy(This,uReserved);
   5542 }
   5543 static FORCEINLINE HRESULT IActiveIME2_Escape(IActiveIME2* This,HIMC hIMC,UINT uEscape,void *pData,LRESULT *plResult) {
   5544     return This->lpVtbl->Escape(This,hIMC,uEscape,pData,plResult);
   5545 }
   5546 static FORCEINLINE HRESULT IActiveIME2_SetActiveContext(IActiveIME2* This,HIMC hIMC,WINBOOL fFlag) {
   5547     return This->lpVtbl->SetActiveContext(This,hIMC,fFlag);
   5548 }
   5549 static FORCEINLINE HRESULT IActiveIME2_ProcessKey(IActiveIME2* This,HIMC hIMC,UINT uVirKey,DWORD lParam,BYTE *pbKeyState) {
   5550     return This->lpVtbl->ProcessKey(This,hIMC,uVirKey,lParam,pbKeyState);
   5551 }
   5552 static FORCEINLINE HRESULT IActiveIME2_Notify(IActiveIME2* This,HIMC hIMC,DWORD dwAction,DWORD dwIndex,DWORD dwValue) {
   5553     return This->lpVtbl->Notify(This,hIMC,dwAction,dwIndex,dwValue);
   5554 }
   5555 static FORCEINLINE HRESULT IActiveIME2_Select(IActiveIME2* This,HIMC hIMC,WINBOOL fSelect) {
   5556     return This->lpVtbl->Select(This,hIMC,fSelect);
   5557 }
   5558 static FORCEINLINE HRESULT IActiveIME2_SetCompositionString(IActiveIME2* This,HIMC hIMC,DWORD dwIndex,void *pComp,DWORD dwCompLen,void *pRead,DWORD dwReadLen) {
   5559     return This->lpVtbl->SetCompositionString(This,hIMC,dwIndex,pComp,dwCompLen,pRead,dwReadLen);
   5560 }
   5561 static FORCEINLINE HRESULT IActiveIME2_ToAsciiEx(IActiveIME2* This,UINT uVirKey,UINT uScanCode,BYTE *pbKeyState,UINT fuState,HIMC hIMC,DWORD *pdwTransBuf,UINT *puSize) {
   5562     return This->lpVtbl->ToAsciiEx(This,uVirKey,uScanCode,pbKeyState,fuState,hIMC,pdwTransBuf,puSize);
   5563 }
   5564 static FORCEINLINE HRESULT IActiveIME2_RegisterWord(IActiveIME2* This,LPWSTR szReading,DWORD dwStyle,LPWSTR szString) {
   5565     return This->lpVtbl->RegisterWord(This,szReading,dwStyle,szString);
   5566 }
   5567 static FORCEINLINE HRESULT IActiveIME2_UnregisterWord(IActiveIME2* This,LPWSTR szReading,DWORD dwStyle,LPWSTR szString) {
   5568     return This->lpVtbl->UnregisterWord(This,szReading,dwStyle,szString);
   5569 }
   5570 static FORCEINLINE HRESULT IActiveIME2_GetRegisterWordStyle(IActiveIME2* This,UINT nItem,STYLEBUFW *pStyleBuf,UINT *puBufSize) {
   5571     return This->lpVtbl->GetRegisterWordStyle(This,nItem,pStyleBuf,puBufSize);
   5572 }
   5573 static FORCEINLINE HRESULT IActiveIME2_EnumRegisterWord(IActiveIME2* This,LPWSTR szReading,DWORD dwStyle,LPWSTR szRegister,LPVOID pData,IEnumRegisterWordW **ppEnum) {
   5574     return This->lpVtbl->EnumRegisterWord(This,szReading,dwStyle,szRegister,pData,ppEnum);
   5575 }
   5576 static FORCEINLINE HRESULT IActiveIME2_GetCodePageA(IActiveIME2* This,UINT *uCodePage) {
   5577     return This->lpVtbl->GetCodePageA(This,uCodePage);
   5578 }
   5579 static FORCEINLINE HRESULT IActiveIME2_GetLangId(IActiveIME2* This,LANGID *plid) {
   5580     return This->lpVtbl->GetLangId(This,plid);
   5581 }
   5582 /*** IActiveIME2 methods ***/
   5583 static FORCEINLINE HRESULT IActiveIME2_Sleep(IActiveIME2* This) {
   5584     return This->lpVtbl->Sleep(This);
   5585 }
   5586 static FORCEINLINE HRESULT IActiveIME2_Unsleep(IActiveIME2* This,WINBOOL fDead) {
   5587     return This->lpVtbl->Unsleep(This,fDead);
   5588 }
   5589 #endif
   5590 #endif
   5591 
   5592 #endif
   5593 
   5594 HRESULT STDMETHODCALLTYPE IActiveIME2_Sleep_Proxy(
   5595     IActiveIME2* This);
   5596 void __RPC_STUB IActiveIME2_Sleep_Stub(
   5597     IRpcStubBuffer* This,
   5598     IRpcChannelBuffer* pRpcChannelBuffer,
   5599     PRPC_MESSAGE pRpcMessage,
   5600     DWORD* pdwStubPhase);
   5601 HRESULT STDMETHODCALLTYPE IActiveIME2_Unsleep_Proxy(
   5602     IActiveIME2* This,
   5603     WINBOOL fDead);
   5604 void __RPC_STUB IActiveIME2_Unsleep_Stub(
   5605     IRpcStubBuffer* This,
   5606     IRpcChannelBuffer* pRpcChannelBuffer,
   5607     PRPC_MESSAGE pRpcMessage,
   5608     DWORD* pdwStubPhase);
   5609 
   5610 #endif  /* __IActiveIME2_INTERFACE_DEFINED__ */
   5611 
   5612 /*****************************************************************************
   5613  * IEnumRegisterWordA interface
   5614  */
   5615 #ifndef __IEnumRegisterWordA_INTERFACE_DEFINED__
   5616 #define __IEnumRegisterWordA_INTERFACE_DEFINED__
   5617 
   5618 DEFINE_GUID(IID_IEnumRegisterWordA, 0x08c03412, 0xf96b, 0x11d0, 0xa4,0x75, 0x00,0xaa,0x00,0x6b,0xcc,0x59);
   5619 #if defined(__cplusplus) && !defined(CINTERFACE)
   5620 MIDL_INTERFACE("08c03412-f96b-11d0-a475-00aa006bcc59")
   5621 IEnumRegisterWordA : public IUnknown
   5622 {
   5623     virtual HRESULT STDMETHODCALLTYPE Clone(
   5624         IEnumRegisterWordA **ppEnum) = 0;
   5625 
   5626     virtual HRESULT STDMETHODCALLTYPE Next(
   5627         ULONG ulCount,
   5628         REGISTERWORDA *rgRegisterWord,
   5629         ULONG *pcFetched) = 0;
   5630 
   5631     virtual HRESULT STDMETHODCALLTYPE Reset(
   5632         ) = 0;
   5633 
   5634     virtual HRESULT STDMETHODCALLTYPE Skip(
   5635         ULONG ulCount) = 0;
   5636 
   5637 };
   5638 #ifdef __CRT_UUID_DECL
   5639 __CRT_UUID_DECL(IEnumRegisterWordA, 0x08c03412, 0xf96b, 0x11d0, 0xa4,0x75, 0x00,0xaa,0x00,0x6b,0xcc,0x59)
   5640 #endif
   5641 #else
   5642 typedef struct IEnumRegisterWordAVtbl {
   5643     BEGIN_INTERFACE
   5644 
   5645     /*** IUnknown methods ***/
   5646     HRESULT (STDMETHODCALLTYPE *QueryInterface)(
   5647         IEnumRegisterWordA* This,
   5648         REFIID riid,
   5649         void **ppvObject);
   5650 
   5651     ULONG (STDMETHODCALLTYPE *AddRef)(
   5652         IEnumRegisterWordA* This);
   5653 
   5654     ULONG (STDMETHODCALLTYPE *Release)(
   5655         IEnumRegisterWordA* This);
   5656 
   5657     /*** IEnumRegisterWordA methods ***/
   5658     HRESULT (STDMETHODCALLTYPE *Clone)(
   5659         IEnumRegisterWordA* This,
   5660         IEnumRegisterWordA **ppEnum);
   5661 
   5662     HRESULT (STDMETHODCALLTYPE *Next)(
   5663         IEnumRegisterWordA* This,
   5664         ULONG ulCount,
   5665         REGISTERWORDA *rgRegisterWord,
   5666         ULONG *pcFetched);
   5667 
   5668     HRESULT (STDMETHODCALLTYPE *Reset)(
   5669         IEnumRegisterWordA* This);
   5670 
   5671     HRESULT (STDMETHODCALLTYPE *Skip)(
   5672         IEnumRegisterWordA* This,
   5673         ULONG ulCount);
   5674 
   5675     END_INTERFACE
   5676 } IEnumRegisterWordAVtbl;
   5677 interface IEnumRegisterWordA {
   5678     CONST_VTBL IEnumRegisterWordAVtbl* lpVtbl;
   5679 };
   5680 
   5681 #ifdef COBJMACROS
   5682 #ifndef WIDL_C_INLINE_WRAPPERS
   5683 /*** IUnknown methods ***/
   5684 #define IEnumRegisterWordA_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
   5685 #define IEnumRegisterWordA_AddRef(This) (This)->lpVtbl->AddRef(This)
   5686 #define IEnumRegisterWordA_Release(This) (This)->lpVtbl->Release(This)
   5687 /*** IEnumRegisterWordA methods ***/
   5688 #define IEnumRegisterWordA_Clone(This,ppEnum) (This)->lpVtbl->Clone(This,ppEnum)
   5689 #define IEnumRegisterWordA_Next(This,ulCount,rgRegisterWord,pcFetched) (This)->lpVtbl->Next(This,ulCount,rgRegisterWord,pcFetched)
   5690 #define IEnumRegisterWordA_Reset(This) (This)->lpVtbl->Reset(This)
   5691 #define IEnumRegisterWordA_Skip(This,ulCount) (This)->lpVtbl->Skip(This,ulCount)
   5692 #else
   5693 /*** IUnknown methods ***/
   5694 static FORCEINLINE HRESULT IEnumRegisterWordA_QueryInterface(IEnumRegisterWordA* This,REFIID riid,void **ppvObject) {
   5695     return This->lpVtbl->QueryInterface(This,riid,ppvObject);
   5696 }
   5697 static FORCEINLINE ULONG IEnumRegisterWordA_AddRef(IEnumRegisterWordA* This) {
   5698     return This->lpVtbl->AddRef(This);
   5699 }
   5700 static FORCEINLINE ULONG IEnumRegisterWordA_Release(IEnumRegisterWordA* This) {
   5701     return This->lpVtbl->Release(This);
   5702 }
   5703 /*** IEnumRegisterWordA methods ***/
   5704 static FORCEINLINE HRESULT IEnumRegisterWordA_Clone(IEnumRegisterWordA* This,IEnumRegisterWordA **ppEnum) {
   5705     return This->lpVtbl->Clone(This,ppEnum);
   5706 }
   5707 static FORCEINLINE HRESULT IEnumRegisterWordA_Next(IEnumRegisterWordA* This,ULONG ulCount,REGISTERWORDA *rgRegisterWord,ULONG *pcFetched) {
   5708     return This->lpVtbl->Next(This,ulCount,rgRegisterWord,pcFetched);
   5709 }
   5710 static FORCEINLINE HRESULT IEnumRegisterWordA_Reset(IEnumRegisterWordA* This) {
   5711     return This->lpVtbl->Reset(This);
   5712 }
   5713 static FORCEINLINE HRESULT IEnumRegisterWordA_Skip(IEnumRegisterWordA* This,ULONG ulCount) {
   5714     return This->lpVtbl->Skip(This,ulCount);
   5715 }
   5716 #endif
   5717 #endif
   5718 
   5719 #endif
   5720 
   5721 HRESULT STDMETHODCALLTYPE IEnumRegisterWordA_Clone_Proxy(
   5722     IEnumRegisterWordA* This,
   5723     IEnumRegisterWordA **ppEnum);
   5724 void __RPC_STUB IEnumRegisterWordA_Clone_Stub(
   5725     IRpcStubBuffer* This,
   5726     IRpcChannelBuffer* pRpcChannelBuffer,
   5727     PRPC_MESSAGE pRpcMessage,
   5728     DWORD* pdwStubPhase);
   5729 HRESULT STDMETHODCALLTYPE IEnumRegisterWordA_Next_Proxy(
   5730     IEnumRegisterWordA* This,
   5731     ULONG ulCount,
   5732     REGISTERWORDA *rgRegisterWord,
   5733     ULONG *pcFetched);
   5734 void __RPC_STUB IEnumRegisterWordA_Next_Stub(
   5735     IRpcStubBuffer* This,
   5736     IRpcChannelBuffer* pRpcChannelBuffer,
   5737     PRPC_MESSAGE pRpcMessage,
   5738     DWORD* pdwStubPhase);
   5739 HRESULT STDMETHODCALLTYPE IEnumRegisterWordA_Reset_Proxy(
   5740     IEnumRegisterWordA* This);
   5741 void __RPC_STUB IEnumRegisterWordA_Reset_Stub(
   5742     IRpcStubBuffer* This,
   5743     IRpcChannelBuffer* pRpcChannelBuffer,
   5744     PRPC_MESSAGE pRpcMessage,
   5745     DWORD* pdwStubPhase);
   5746 HRESULT STDMETHODCALLTYPE IEnumRegisterWordA_Skip_Proxy(
   5747     IEnumRegisterWordA* This,
   5748     ULONG ulCount);
   5749 void __RPC_STUB IEnumRegisterWordA_Skip_Stub(
   5750     IRpcStubBuffer* This,
   5751     IRpcChannelBuffer* pRpcChannelBuffer,
   5752     PRPC_MESSAGE pRpcMessage,
   5753     DWORD* pdwStubPhase);
   5754 
   5755 #endif  /* __IEnumRegisterWordA_INTERFACE_DEFINED__ */
   5756 
   5757 /*****************************************************************************
   5758  * IEnumRegisterWordW interface
   5759  */
   5760 #ifndef __IEnumRegisterWordW_INTERFACE_DEFINED__
   5761 #define __IEnumRegisterWordW_INTERFACE_DEFINED__
   5762 
   5763 DEFINE_GUID(IID_IEnumRegisterWordW, 0x4955dd31, 0xb159, 0x11d0, 0x8f,0xcf, 0x00,0xaa,0x00,0x6b,0xcc,0x59);
   5764 #if defined(__cplusplus) && !defined(CINTERFACE)
   5765 MIDL_INTERFACE("4955dd31-b159-11d0-8fcf-00aa006bcc59")
   5766 IEnumRegisterWordW : public IUnknown
   5767 {
   5768     virtual HRESULT STDMETHODCALLTYPE Clone(
   5769         IEnumRegisterWordW **ppEnum) = 0;
   5770 
   5771     virtual HRESULT STDMETHODCALLTYPE Next(
   5772         ULONG ulCount,
   5773         REGISTERWORDW *rgRegisterWord,
   5774         ULONG *pcFetched) = 0;
   5775 
   5776     virtual HRESULT STDMETHODCALLTYPE Reset(
   5777         ) = 0;
   5778 
   5779     virtual HRESULT STDMETHODCALLTYPE Skip(
   5780         ULONG ulCount) = 0;
   5781 
   5782 };
   5783 #ifdef __CRT_UUID_DECL
   5784 __CRT_UUID_DECL(IEnumRegisterWordW, 0x4955dd31, 0xb159, 0x11d0, 0x8f,0xcf, 0x00,0xaa,0x00,0x6b,0xcc,0x59)
   5785 #endif
   5786 #else
   5787 typedef struct IEnumRegisterWordWVtbl {
   5788     BEGIN_INTERFACE
   5789 
   5790     /*** IUnknown methods ***/
   5791     HRESULT (STDMETHODCALLTYPE *QueryInterface)(
   5792         IEnumRegisterWordW* This,
   5793         REFIID riid,
   5794         void **ppvObject);
   5795 
   5796     ULONG (STDMETHODCALLTYPE *AddRef)(
   5797         IEnumRegisterWordW* This);
   5798 
   5799     ULONG (STDMETHODCALLTYPE *Release)(
   5800         IEnumRegisterWordW* This);
   5801 
   5802     /*** IEnumRegisterWordW methods ***/
   5803     HRESULT (STDMETHODCALLTYPE *Clone)(
   5804         IEnumRegisterWordW* This,
   5805         IEnumRegisterWordW **ppEnum);
   5806 
   5807     HRESULT (STDMETHODCALLTYPE *Next)(
   5808         IEnumRegisterWordW* This,
   5809         ULONG ulCount,
   5810         REGISTERWORDW *rgRegisterWord,
   5811         ULONG *pcFetched);
   5812 
   5813     HRESULT (STDMETHODCALLTYPE *Reset)(
   5814         IEnumRegisterWordW* This);
   5815 
   5816     HRESULT (STDMETHODCALLTYPE *Skip)(
   5817         IEnumRegisterWordW* This,
   5818         ULONG ulCount);
   5819 
   5820     END_INTERFACE
   5821 } IEnumRegisterWordWVtbl;
   5822 interface IEnumRegisterWordW {
   5823     CONST_VTBL IEnumRegisterWordWVtbl* lpVtbl;
   5824 };
   5825 
   5826 #ifdef COBJMACROS
   5827 #ifndef WIDL_C_INLINE_WRAPPERS
   5828 /*** IUnknown methods ***/
   5829 #define IEnumRegisterWordW_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
   5830 #define IEnumRegisterWordW_AddRef(This) (This)->lpVtbl->AddRef(This)
   5831 #define IEnumRegisterWordW_Release(This) (This)->lpVtbl->Release(This)
   5832 /*** IEnumRegisterWordW methods ***/
   5833 #define IEnumRegisterWordW_Clone(This,ppEnum) (This)->lpVtbl->Clone(This,ppEnum)
   5834 #define IEnumRegisterWordW_Next(This,ulCount,rgRegisterWord,pcFetched) (This)->lpVtbl->Next(This,ulCount,rgRegisterWord,pcFetched)
   5835 #define IEnumRegisterWordW_Reset(This) (This)->lpVtbl->Reset(This)
   5836 #define IEnumRegisterWordW_Skip(This,ulCount) (This)->lpVtbl->Skip(This,ulCount)
   5837 #else
   5838 /*** IUnknown methods ***/
   5839 static FORCEINLINE HRESULT IEnumRegisterWordW_QueryInterface(IEnumRegisterWordW* This,REFIID riid,void **ppvObject) {
   5840     return This->lpVtbl->QueryInterface(This,riid,ppvObject);
   5841 }
   5842 static FORCEINLINE ULONG IEnumRegisterWordW_AddRef(IEnumRegisterWordW* This) {
   5843     return This->lpVtbl->AddRef(This);
   5844 }
   5845 static FORCEINLINE ULONG IEnumRegisterWordW_Release(IEnumRegisterWordW* This) {
   5846     return This->lpVtbl->Release(This);
   5847 }
   5848 /*** IEnumRegisterWordW methods ***/
   5849 static FORCEINLINE HRESULT IEnumRegisterWordW_Clone(IEnumRegisterWordW* This,IEnumRegisterWordW **ppEnum) {
   5850     return This->lpVtbl->Clone(This,ppEnum);
   5851 }
   5852 static FORCEINLINE HRESULT IEnumRegisterWordW_Next(IEnumRegisterWordW* This,ULONG ulCount,REGISTERWORDW *rgRegisterWord,ULONG *pcFetched) {
   5853     return This->lpVtbl->Next(This,ulCount,rgRegisterWord,pcFetched);
   5854 }
   5855 static FORCEINLINE HRESULT IEnumRegisterWordW_Reset(IEnumRegisterWordW* This) {
   5856     return This->lpVtbl->Reset(This);
   5857 }
   5858 static FORCEINLINE HRESULT IEnumRegisterWordW_Skip(IEnumRegisterWordW* This,ULONG ulCount) {
   5859     return This->lpVtbl->Skip(This,ulCount);
   5860 }
   5861 #endif
   5862 #endif
   5863 
   5864 #endif
   5865 
   5866 HRESULT STDMETHODCALLTYPE IEnumRegisterWordW_Clone_Proxy(
   5867     IEnumRegisterWordW* This,
   5868     IEnumRegisterWordW **ppEnum);
   5869 void __RPC_STUB IEnumRegisterWordW_Clone_Stub(
   5870     IRpcStubBuffer* This,
   5871     IRpcChannelBuffer* pRpcChannelBuffer,
   5872     PRPC_MESSAGE pRpcMessage,
   5873     DWORD* pdwStubPhase);
   5874 HRESULT STDMETHODCALLTYPE IEnumRegisterWordW_Next_Proxy(
   5875     IEnumRegisterWordW* This,
   5876     ULONG ulCount,
   5877     REGISTERWORDW *rgRegisterWord,
   5878     ULONG *pcFetched);
   5879 void __RPC_STUB IEnumRegisterWordW_Next_Stub(
   5880     IRpcStubBuffer* This,
   5881     IRpcChannelBuffer* pRpcChannelBuffer,
   5882     PRPC_MESSAGE pRpcMessage,
   5883     DWORD* pdwStubPhase);
   5884 HRESULT STDMETHODCALLTYPE IEnumRegisterWordW_Reset_Proxy(
   5885     IEnumRegisterWordW* This);
   5886 void __RPC_STUB IEnumRegisterWordW_Reset_Stub(
   5887     IRpcStubBuffer* This,
   5888     IRpcChannelBuffer* pRpcChannelBuffer,
   5889     PRPC_MESSAGE pRpcMessage,
   5890     DWORD* pdwStubPhase);
   5891 HRESULT STDMETHODCALLTYPE IEnumRegisterWordW_Skip_Proxy(
   5892     IEnumRegisterWordW* This,
   5893     ULONG ulCount);
   5894 void __RPC_STUB IEnumRegisterWordW_Skip_Stub(
   5895     IRpcStubBuffer* This,
   5896     IRpcChannelBuffer* pRpcChannelBuffer,
   5897     PRPC_MESSAGE pRpcMessage,
   5898     DWORD* pdwStubPhase);
   5899 
   5900 #endif  /* __IEnumRegisterWordW_INTERFACE_DEFINED__ */
   5901 
   5902 /*****************************************************************************
   5903  * CActiveIMM coclass
   5904  */
   5905 
   5906 DEFINE_GUID(CLSID_CActiveIMM, 0x4955dd33, 0xb159, 0x11d0, 0x8f,0xcf, 0x00,0xaa,0x00,0x6b,0xcc,0x59);
   5907 
   5908 #ifdef __cplusplus
   5909 class DECLSPEC_UUID("4955dd33-b159-11d0-8fcf-00aa006bcc59") CActiveIMM;
   5910 #ifdef __CRT_UUID_DECL
   5911 __CRT_UUID_DECL(CActiveIMM, 0x4955dd33, 0xb159, 0x11d0, 0x8f,0xcf, 0x00,0xaa,0x00,0x6b,0xcc,0x59)
   5912 #endif
   5913 #endif
   5914 
   5915 #endif
   5916 /* Begin additional prototypes for all interfaces */
   5917 
   5918 ULONG           __RPC_USER HWND_UserSize     (ULONG *, ULONG, HWND *);
   5919 unsigned char * __RPC_USER HWND_UserMarshal  (ULONG *, unsigned char *, HWND *);
   5920 unsigned char * __RPC_USER HWND_UserUnmarshal(ULONG *, unsigned char *, HWND *);
   5921 void            __RPC_USER HWND_UserFree     (ULONG *, HWND *);
   5922 ULONG           __RPC_USER HBITMAP_UserSize     (ULONG *, ULONG, HBITMAP *);
   5923 unsigned char * __RPC_USER HBITMAP_UserMarshal  (ULONG *, unsigned char *, HBITMAP *);
   5924 unsigned char * __RPC_USER HBITMAP_UserUnmarshal(ULONG *, unsigned char *, HBITMAP *);
   5925 void            __RPC_USER HBITMAP_UserFree     (ULONG *, HBITMAP *);
   5926 
   5927 /* End additional prototypes */
   5928 
   5929 #ifdef __cplusplus
   5930 }
   5931 #endif
   5932 
   5933 #endif /* __dimm_h__ */
   5934