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__
22typedef interface IEnumInputContext IEnumInputContext;
23#endif
24
25#ifndef __IActiveIMMRegistrar_FWD_DEFINED__
26#define __IActiveIMMRegistrar_FWD_DEFINED__
27typedef interface IActiveIMMRegistrar IActiveIMMRegistrar;
28#endif
29
30#ifndef __IActiveIMMMessagePumpOwner_FWD_DEFINED__
31#define __IActiveIMMMessagePumpOwner_FWD_DEFINED__
32typedef interface IActiveIMMMessagePumpOwner IActiveIMMMessagePumpOwner;
33#endif
34
35#ifndef __IActiveIMMApp_FWD_DEFINED__
36#define __IActiveIMMApp_FWD_DEFINED__
37typedef interface IActiveIMMApp IActiveIMMApp;
38#endif
39
40#ifndef __IActiveIMMIME_FWD_DEFINED__
41#define __IActiveIMMIME_FWD_DEFINED__
42typedef interface IActiveIMMIME IActiveIMMIME;
43#endif
44
45#ifndef __IActiveIME_FWD_DEFINED__
46#define __IActiveIME_FWD_DEFINED__
47typedef interface IActiveIME IActiveIME;
48#endif
49
50#ifndef __IActiveIME2_FWD_DEFINED__
51#define __IActiveIME2_FWD_DEFINED__
52typedef interface IActiveIME2 IActiveIME2;
53#endif
54
55#ifndef __IEnumRegisterWordA_FWD_DEFINED__
56#define __IEnumRegisterWordA_FWD_DEFINED__
57typedef interface IEnumRegisterWordA IEnumRegisterWordA;
58#endif
59
60#ifndef __IEnumRegisterWordW_FWD_DEFINED__
61#define __IEnumRegisterWordW_FWD_DEFINED__
62typedef interface IEnumRegisterWordW IEnumRegisterWordW;
63#endif
64
65#ifndef __CActiveIMM_FWD_DEFINED__
66#define __CActiveIMM_FWD_DEFINED__
67#ifdef __cplusplus
68typedef class CActiveIMM CActiveIMM;
69#else
70typedef 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
79extern "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__
89typedef interface IEnumRegisterWordA IEnumRegisterWordA;
90#endif
91
92#ifndef __IEnumRegisterWordW_FWD_DEFINED__
93#define __IEnumRegisterWordW_FWD_DEFINED__
94typedef interface IEnumRegisterWordW IEnumRegisterWordW;
95#endif
96
97#include <winapifamily.h>
98
99#if WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_DESKTOP)
100
101DEFINE_GUID(LIBID_ActiveIMM, 0x4955dd30, 0xb159, 0x11d0, 0x8f,0xcf, 0x00,0xaa,0x00,0x6b,0xcc,0x59);
102
103#include <imm.h>
104#if 0
105typedef WORD LANGID;
106typedef struct __WIDL_dimm_generated_name_00000002 {
107    LPSTR lpReading;
108    LPSTR lpWord;
109} REGISTERWORDA;
110typedef struct __WIDL_dimm_generated_name_00000003 {
111    LPWSTR lpReading;
112    LPWSTR lpWord;
113} REGISTERWORDW;
114typedef 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;
130typedef 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;
146typedef DWORD HIMC;
147typedef DWORD HIMCC;
148typedef struct __WIDL_dimm_generated_name_00000006 {
149    DWORD dwIndex;
150    DWORD dwStyle;
151    POINT ptCurrentPos;
152    RECT rcArea;
153} CANDIDATEFORM;
154typedef struct __WIDL_dimm_generated_name_00000007 {
155    DWORD dwStyle;
156    POINT ptCurrentPos;
157    RECT rcArea;
158} COMPOSITIONFORM;
159typedef 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;
168typedef struct __WIDL_dimm_generated_name_00000009 {
169    DWORD dwStyle;
170    CHAR szDescription[32];
171} STYLEBUFA;
172typedef struct __WIDL_dimm_generated_name_0000000A {
173    DWORD dwStyle;
174    WCHAR szDescription[32];
175} STYLEBUFW;
176typedef WORD ATOM;
177typedef 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;
188typedef 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_
201typedef 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;
223typedef 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
239DEFINE_GUID(IID_IEnumInputContext, 0x09b5eab0, 0xf997, 0x11d1, 0x93,0xd4, 0x00,0x60,0xb0,0x67,0xb8,0x6e);
240#if defined(__cplusplus) && !defined(CINTERFACE)
241MIDL_INTERFACE("09b5eab0-f997-11d1-93d4-0060b067b86e")
242IEnumInputContext : 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
263typedef 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;
298interface 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 ***/
315static FORCEINLINE HRESULT IEnumInputContext_QueryInterface(IEnumInputContext* This,REFIID riid,void **ppvObject) {
316    return This->lpVtbl->QueryInterface(This,riid,ppvObject);
317}
318static FORCEINLINE ULONG IEnumInputContext_AddRef(IEnumInputContext* This) {
319    return This->lpVtbl->AddRef(This);
320}
321static FORCEINLINE ULONG IEnumInputContext_Release(IEnumInputContext* This) {
322    return This->lpVtbl->Release(This);
323}
324/*** IEnumInputContext methods ***/
325static FORCEINLINE HRESULT IEnumInputContext_Clone(IEnumInputContext* This,IEnumInputContext **ppEnum) {
326    return This->lpVtbl->Clone(This,ppEnum);
327}
328static FORCEINLINE HRESULT IEnumInputContext_Next(IEnumInputContext* This,ULONG ulCount,HIMC *rgInputContext,ULONG *pcFetched) {
329    return This->lpVtbl->Next(This,ulCount,rgInputContext,pcFetched);
330}
331static FORCEINLINE HRESULT IEnumInputContext_Reset(IEnumInputContext* This) {
332    return This->lpVtbl->Reset(This);
333}
334static FORCEINLINE HRESULT IEnumInputContext_Skip(IEnumInputContext* This,ULONG ulCount) {
335    return This->lpVtbl->Skip(This,ulCount);
336}
337#endif
338#endif
339
340#endif
341
342HRESULT STDMETHODCALLTYPE IEnumInputContext_Clone_Proxy(
343    IEnumInputContext* This,
344    IEnumInputContext **ppEnum);
345void __RPC_STUB IEnumInputContext_Clone_Stub(
346    IRpcStubBuffer* This,
347    IRpcChannelBuffer* pRpcChannelBuffer,
348    PRPC_MESSAGE pRpcMessage,
349    DWORD* pdwStubPhase);
350HRESULT STDMETHODCALLTYPE IEnumInputContext_Next_Proxy(
351    IEnumInputContext* This,
352    ULONG ulCount,
353    HIMC *rgInputContext,
354    ULONG *pcFetched);
355void __RPC_STUB IEnumInputContext_Next_Stub(
356    IRpcStubBuffer* This,
357    IRpcChannelBuffer* pRpcChannelBuffer,
358    PRPC_MESSAGE pRpcMessage,
359    DWORD* pdwStubPhase);
360HRESULT STDMETHODCALLTYPE IEnumInputContext_Reset_Proxy(
361    IEnumInputContext* This);
362void __RPC_STUB IEnumInputContext_Reset_Stub(
363    IRpcStubBuffer* This,
364    IRpcChannelBuffer* pRpcChannelBuffer,
365    PRPC_MESSAGE pRpcMessage,
366    DWORD* pdwStubPhase);
367HRESULT STDMETHODCALLTYPE IEnumInputContext_Skip_Proxy(
368    IEnumInputContext* This,
369    ULONG ulCount);
370void __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
384DEFINE_GUID(IID_IActiveIMMRegistrar, 0xb3458082, 0xbd00, 0x11d1, 0x93,0x9b, 0x00,0x60,0xb0,0x67,0xb8,0x6e);
385#if defined(__cplusplus) && !defined(CINTERFACE)
386MIDL_INTERFACE("b3458082-bd00-11d1-939b-0060b067b86e")
387IActiveIMMRegistrar : 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
403typedef 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;
432interface 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 ***/
447static FORCEINLINE HRESULT IActiveIMMRegistrar_QueryInterface(IActiveIMMRegistrar* This,REFIID riid,void **ppvObject) {
448    return This->lpVtbl->QueryInterface(This,riid,ppvObject);
449}
450static FORCEINLINE ULONG IActiveIMMRegistrar_AddRef(IActiveIMMRegistrar* This) {
451    return This->lpVtbl->AddRef(This);
452}
453static FORCEINLINE ULONG IActiveIMMRegistrar_Release(IActiveIMMRegistrar* This) {
454    return This->lpVtbl->Release(This);
455}
456/*** IActiveIMMRegistrar methods ***/
457static 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}
460static FORCEINLINE HRESULT IActiveIMMRegistrar_UnregisterIME(IActiveIMMRegistrar* This,REFCLSID rclsid) {
461    return This->lpVtbl->UnregisterIME(This,rclsid);
462}
463#endif
464#endif
465
466#endif
467
468HRESULT STDMETHODCALLTYPE IActiveIMMRegistrar_RegisterIME_Proxy(
469    IActiveIMMRegistrar* This,
470    REFCLSID rclsid,
471    LANGID lgid,
472    LPCWSTR pszIconFile,
473    LPCWSTR pszDesc);
474void __RPC_STUB IActiveIMMRegistrar_RegisterIME_Stub(
475    IRpcStubBuffer* This,
476    IRpcChannelBuffer* pRpcChannelBuffer,
477    PRPC_MESSAGE pRpcMessage,
478    DWORD* pdwStubPhase);
479HRESULT STDMETHODCALLTYPE IActiveIMMRegistrar_UnregisterIME_Proxy(
480    IActiveIMMRegistrar* This,
481    REFCLSID rclsid);
482void __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
496DEFINE_GUID(IID_IActiveIMMMessagePumpOwner, 0xb5cf2cfa, 0x8aeb, 0x11d1, 0x93,0x64, 0x00,0x60,0xb0,0x67,0xb8,0x6e);
497#if defined(__cplusplus) && !defined(CINTERFACE)
498MIDL_INTERFACE("b5cf2cfa-8aeb-11d1-9364-0060b067b86e")
499IActiveIMMMessagePumpOwner : 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
521typedef 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;
557interface 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 ***/
575static FORCEINLINE HRESULT IActiveIMMMessagePumpOwner_QueryInterface(IActiveIMMMessagePumpOwner* This,REFIID riid,void **ppvObject) {
576    return This->lpVtbl->QueryInterface(This,riid,ppvObject);
577}
578static FORCEINLINE ULONG IActiveIMMMessagePumpOwner_AddRef(IActiveIMMMessagePumpOwner* This) {
579    return This->lpVtbl->AddRef(This);
580}
581static FORCEINLINE ULONG IActiveIMMMessagePumpOwner_Release(IActiveIMMMessagePumpOwner* This) {
582    return This->lpVtbl->Release(This);
583}
584/*** IActiveIMMMessagePumpOwner methods ***/
585static FORCEINLINE HRESULT IActiveIMMMessagePumpOwner_Start(IActiveIMMMessagePumpOwner* This) {
586    return This->lpVtbl->Start(This);
587}
588static FORCEINLINE HRESULT IActiveIMMMessagePumpOwner_End(IActiveIMMMessagePumpOwner* This) {
589    return This->lpVtbl->End(This);
590}
591static FORCEINLINE HRESULT IActiveIMMMessagePumpOwner_OnTranslateMessage(IActiveIMMMessagePumpOwner* This,const MSG *pMsg) {
592    return This->lpVtbl->OnTranslateMessage(This,pMsg);
593}
594static FORCEINLINE HRESULT IActiveIMMMessagePumpOwner_Pause(IActiveIMMMessagePumpOwner* This,DWORD *pdwCookie) {
595    return This->lpVtbl->Pause(This,pdwCookie);
596}
597static FORCEINLINE HRESULT IActiveIMMMessagePumpOwner_Resume(IActiveIMMMessagePumpOwner* This,DWORD dwCookie) {
598    return This->lpVtbl->Resume(This,dwCookie);
599}
600#endif
601#endif
602
603#endif
604
605HRESULT STDMETHODCALLTYPE IActiveIMMMessagePumpOwner_Start_Proxy(
606    IActiveIMMMessagePumpOwner* This);
607void __RPC_STUB IActiveIMMMessagePumpOwner_Start_Stub(
608    IRpcStubBuffer* This,
609    IRpcChannelBuffer* pRpcChannelBuffer,
610    PRPC_MESSAGE pRpcMessage,
611    DWORD* pdwStubPhase);
612HRESULT STDMETHODCALLTYPE IActiveIMMMessagePumpOwner_End_Proxy(
613    IActiveIMMMessagePumpOwner* This);
614void __RPC_STUB IActiveIMMMessagePumpOwner_End_Stub(
615    IRpcStubBuffer* This,
616    IRpcChannelBuffer* pRpcChannelBuffer,
617    PRPC_MESSAGE pRpcMessage,
618    DWORD* pdwStubPhase);
619HRESULT STDMETHODCALLTYPE IActiveIMMMessagePumpOwner_OnTranslateMessage_Proxy(
620    IActiveIMMMessagePumpOwner* This,
621    const MSG *pMsg);
622void __RPC_STUB IActiveIMMMessagePumpOwner_OnTranslateMessage_Stub(
623    IRpcStubBuffer* This,
624    IRpcChannelBuffer* pRpcChannelBuffer,
625    PRPC_MESSAGE pRpcMessage,
626    DWORD* pdwStubPhase);
627HRESULT STDMETHODCALLTYPE IActiveIMMMessagePumpOwner_Pause_Proxy(
628    IActiveIMMMessagePumpOwner* This,
629    DWORD *pdwCookie);
630void __RPC_STUB IActiveIMMMessagePumpOwner_Pause_Stub(
631    IRpcStubBuffer* This,
632    IRpcChannelBuffer* pRpcChannelBuffer,
633    PRPC_MESSAGE pRpcMessage,
634    DWORD* pdwStubPhase);
635HRESULT STDMETHODCALLTYPE IActiveIMMMessagePumpOwner_Resume_Proxy(
636    IActiveIMMMessagePumpOwner* This,
637    DWORD dwCookie);
638void __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
652DEFINE_GUID(IID_IActiveIMMApp, 0x08c0e040, 0x62d1, 0x11d1, 0x93,0x26, 0x00,0x60,0xb0,0x67,0xb8,0x6e);
653#if defined(__cplusplus) && !defined(CINTERFACE)
654MIDL_INTERFACE("08c0e040-62d1-11d1-9326-0060b067b86e")
655IActiveIMMApp : 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
1030typedef 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;
1483interface 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 ***/
1564static FORCEINLINE HRESULT IActiveIMMApp_QueryInterface(IActiveIMMApp* This,REFIID riid,void **ppvObject) {
1565    return This->lpVtbl->QueryInterface(This,riid,ppvObject);
1566}
1567static FORCEINLINE ULONG IActiveIMMApp_AddRef(IActiveIMMApp* This) {
1568    return This->lpVtbl->AddRef(This);
1569}
1570static FORCEINLINE ULONG IActiveIMMApp_Release(IActiveIMMApp* This) {
1571    return This->lpVtbl->Release(This);
1572}
1573/*** IActiveIMMApp methods ***/
1574static FORCEINLINE HRESULT IActiveIMMApp_AssociateContext(IActiveIMMApp* This,HWND hWnd,HIMC hIME,HIMC *phPrev) {
1575    return This->lpVtbl->AssociateContext(This,hWnd,hIME,phPrev);
1576}
1577static 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}
1580static 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}
1583static FORCEINLINE HRESULT IActiveIMMApp_CreateContext(IActiveIMMApp* This,HIMC *phIMC) {
1584    return This->lpVtbl->CreateContext(This,phIMC);
1585}
1586static FORCEINLINE HRESULT IActiveIMMApp_DestroyContext(IActiveIMMApp* This,HIMC hIME) {
1587    return This->lpVtbl->DestroyContext(This,hIME);
1588}
1589static 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}
1592static 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}
1595static 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}
1598static 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}
1601static 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}
1604static 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}
1607static FORCEINLINE HRESULT IActiveIMMApp_GetCandidateListCountA(IActiveIMMApp* This,HIMC hIMC,DWORD *pdwListSize,DWORD *pdwBufLen) {
1608    return This->lpVtbl->GetCandidateListCountA(This,hIMC,pdwListSize,pdwBufLen);
1609}
1610static FORCEINLINE HRESULT IActiveIMMApp_GetCandidateListCountW(IActiveIMMApp* This,HIMC hIMC,DWORD *pdwListSize,DWORD *pdwBufLen) {
1611    return This->lpVtbl->GetCandidateListCountW(This,hIMC,pdwListSize,pdwBufLen);
1612}
1613static FORCEINLINE HRESULT IActiveIMMApp_GetCandidateWindow(IActiveIMMApp* This,HIMC hIMC,DWORD dwIndex,CANDIDATEFORM *pCandidate) {
1614    return This->lpVtbl->GetCandidateWindow(This,hIMC,dwIndex,pCandidate);
1615}
1616static FORCEINLINE HRESULT IActiveIMMApp_GetCompositionFontA(IActiveIMMApp* This,HIMC hIMC,LOGFONTA *plf) {
1617    return This->lpVtbl->GetCompositionFontA(This,hIMC,plf);
1618}
1619static FORCEINLINE HRESULT IActiveIMMApp_GetCompositionFontW(IActiveIMMApp* This,HIMC hIMC,LOGFONTW *plf) {
1620    return This->lpVtbl->GetCompositionFontW(This,hIMC,plf);
1621}
1622static 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}
1625static 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}
1628static FORCEINLINE HRESULT IActiveIMMApp_GetCompositionWindow(IActiveIMMApp* This,HIMC hIMC,COMPOSITIONFORM *pCompForm) {
1629    return This->lpVtbl->GetCompositionWindow(This,hIMC,pCompForm);
1630}
1631static FORCEINLINE HRESULT IActiveIMMApp_GetContext(IActiveIMMApp* This,HWND hWnd,HIMC *phIMC) {
1632    return This->lpVtbl->GetContext(This,hWnd,phIMC);
1633}
1634static 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}
1637static 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}
1640static FORCEINLINE HRESULT IActiveIMMApp_GetConversionStatus(IActiveIMMApp* This,HIMC hIMC,DWORD *pfdwConversion,DWORD *pfdwSentence) {
1641    return This->lpVtbl->GetConversionStatus(This,hIMC,pfdwConversion,pfdwSentence);
1642}
1643static FORCEINLINE HRESULT IActiveIMMApp_GetDefaultIMEWnd(IActiveIMMApp* This,HWND hWnd,HWND *phDefWnd) {
1644    return This->lpVtbl->GetDefaultIMEWnd(This,hWnd,phDefWnd);
1645}
1646static 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}
1649static 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}
1652static 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}
1655static 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}
1658static 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}
1661static 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}
1664static FORCEINLINE HRESULT IActiveIMMApp_GetOpenStatus(IActiveIMMApp* This,HIMC hIMC) {
1665    return This->lpVtbl->GetOpenStatus(This,hIMC);
1666}
1667static FORCEINLINE HRESULT IActiveIMMApp_GetProperty(IActiveIMMApp* This,HKL hKL,DWORD fdwIndex,DWORD *pdwProperty) {
1668    return This->lpVtbl->GetProperty(This,hKL,fdwIndex,pdwProperty);
1669}
1670static 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}
1673static 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}
1676static FORCEINLINE HRESULT IActiveIMMApp_GetStatusWindowPos(IActiveIMMApp* This,HIMC hIMC,POINT *pptPos) {
1677    return This->lpVtbl->GetStatusWindowPos(This,hIMC,pptPos);
1678}
1679static FORCEINLINE HRESULT IActiveIMMApp_GetVirtualKey(IActiveIMMApp* This,HWND hWnd,UINT *puVirtualKey) {
1680    return This->lpVtbl->GetVirtualKey(This,hWnd,puVirtualKey);
1681}
1682static FORCEINLINE HRESULT IActiveIMMApp_InstallIMEA(IActiveIMMApp* This,LPSTR szIMEFileName,LPSTR szLayoutText,HKL *phKL) {
1683    return This->lpVtbl->InstallIMEA(This,szIMEFileName,szLayoutText,phKL);
1684}
1685static FORCEINLINE HRESULT IActiveIMMApp_InstallIMEW(IActiveIMMApp* This,LPWSTR szIMEFileName,LPWSTR szLayoutText,HKL *phKL) {
1686    return This->lpVtbl->InstallIMEW(This,szIMEFileName,szLayoutText,phKL);
1687}
1688static FORCEINLINE HRESULT IActiveIMMApp_IsIME(IActiveIMMApp* This,HKL hKL) {
1689    return This->lpVtbl->IsIME(This,hKL);
1690}
1691static 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}
1694static 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}
1697static 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}
1700static 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}
1703static 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}
1706static FORCEINLINE HRESULT IActiveIMMApp_ReleaseContext(IActiveIMMApp* This,HWND hWnd,HIMC hIMC) {
1707    return This->lpVtbl->ReleaseContext(This,hWnd,hIMC);
1708}
1709static FORCEINLINE HRESULT IActiveIMMApp_SetCandidateWindow(IActiveIMMApp* This,HIMC hIMC,CANDIDATEFORM *pCandidate) {
1710    return This->lpVtbl->SetCandidateWindow(This,hIMC,pCandidate);
1711}
1712static FORCEINLINE HRESULT IActiveIMMApp_SetCompositionFontA(IActiveIMMApp* This,HIMC hIMC,LOGFONTA *plf) {
1713    return This->lpVtbl->SetCompositionFontA(This,hIMC,plf);
1714}
1715static FORCEINLINE HRESULT IActiveIMMApp_SetCompositionFontW(IActiveIMMApp* This,HIMC hIMC,LOGFONTW *plf) {
1716    return This->lpVtbl->SetCompositionFontW(This,hIMC,plf);
1717}
1718static 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}
1721static 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}
1724static FORCEINLINE HRESULT IActiveIMMApp_SetCompositionWindow(IActiveIMMApp* This,HIMC hIMC,COMPOSITIONFORM *pCompForm) {
1725    return This->lpVtbl->SetCompositionWindow(This,hIMC,pCompForm);
1726}
1727static FORCEINLINE HRESULT IActiveIMMApp_SetConversionStatus(IActiveIMMApp* This,HIMC hIMC,DWORD fdwConversion,DWORD fdwSentence) {
1728    return This->lpVtbl->SetConversionStatus(This,hIMC,fdwConversion,fdwSentence);
1729}
1730static FORCEINLINE HRESULT IActiveIMMApp_SetOpenStatus(IActiveIMMApp* This,HIMC hIMC,WINBOOL fOpen) {
1731    return This->lpVtbl->SetOpenStatus(This,hIMC,fOpen);
1732}
1733static FORCEINLINE HRESULT IActiveIMMApp_SetStatusWindowPos(IActiveIMMApp* This,HIMC hIMC,POINT *pptPos) {
1734    return This->lpVtbl->SetStatusWindowPos(This,hIMC,pptPos);
1735}
1736static FORCEINLINE HRESULT IActiveIMMApp_SimulateHotKey(IActiveIMMApp* This,HWND hWnd,DWORD dwHotKeyID) {
1737    return This->lpVtbl->SimulateHotKey(This,hWnd,dwHotKeyID);
1738}
1739static 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}
1742static 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}
1745static FORCEINLINE HRESULT IActiveIMMApp_Activate(IActiveIMMApp* This,WINBOOL fRestoreLayout) {
1746    return This->lpVtbl->Activate(This,fRestoreLayout);
1747}
1748static FORCEINLINE HRESULT IActiveIMMApp_Deactivate(IActiveIMMApp* This) {
1749    return This->lpVtbl->Deactivate(This);
1750}
1751static 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}
1754static FORCEINLINE HRESULT IActiveIMMApp_FilterClientWindows(IActiveIMMApp* This,ATOM *aaClassList,UINT uSize) {
1755    return This->lpVtbl->FilterClientWindows(This,aaClassList,uSize);
1756}
1757static FORCEINLINE HRESULT IActiveIMMApp_GetCodePageA(IActiveIMMApp* This,HKL hKL,UINT *uCodePage) {
1758    return This->lpVtbl->GetCodePageA(This,hKL,uCodePage);
1759}
1760static FORCEINLINE HRESULT IActiveIMMApp_GetLangId(IActiveIMMApp* This,HKL hKL,LANGID *plid) {
1761    return This->lpVtbl->GetLangId(This,hKL,plid);
1762}
1763static FORCEINLINE HRESULT IActiveIMMApp_AssociateContextEx(IActiveIMMApp* This,HWND hWnd,HIMC hIMC,DWORD dwFlags) {
1764    return This->lpVtbl->AssociateContextEx(This,hWnd,hIMC,dwFlags);
1765}
1766static FORCEINLINE HRESULT IActiveIMMApp_DisableIME(IActiveIMMApp* This,DWORD idThread) {
1767    return This->lpVtbl->DisableIME(This,idThread);
1768}
1769static 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}
1772static 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}
1775static 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
1783HRESULT STDMETHODCALLTYPE IActiveIMMApp_AssociateContext_Proxy(
1784    IActiveIMMApp* This,
1785    HWND hWnd,
1786    HIMC hIME,
1787    HIMC *phPrev);
1788void __RPC_STUB IActiveIMMApp_AssociateContext_Stub(
1789    IRpcStubBuffer* This,
1790    IRpcChannelBuffer* pRpcChannelBuffer,
1791    PRPC_MESSAGE pRpcMessage,
1792    DWORD* pdwStubPhase);
1793HRESULT STDMETHODCALLTYPE IActiveIMMApp_ConfigureIMEA_Proxy(
1794    IActiveIMMApp* This,
1795    HKL hKL,
1796    HWND hWnd,
1797    DWORD dwMode,
1798    REGISTERWORDA *pData);
1799void __RPC_STUB IActiveIMMApp_ConfigureIMEA_Stub(
1800    IRpcStubBuffer* This,
1801    IRpcChannelBuffer* pRpcChannelBuffer,
1802    PRPC_MESSAGE pRpcMessage,
1803    DWORD* pdwStubPhase);
1804HRESULT STDMETHODCALLTYPE IActiveIMMApp_ConfigureIMEW_Proxy(
1805    IActiveIMMApp* This,
1806    HKL hKL,
1807    HWND hWnd,
1808    DWORD dwMode,
1809    REGISTERWORDW *pData);
1810void __RPC_STUB IActiveIMMApp_ConfigureIMEW_Stub(
1811    IRpcStubBuffer* This,
1812    IRpcChannelBuffer* pRpcChannelBuffer,
1813    PRPC_MESSAGE pRpcMessage,
1814    DWORD* pdwStubPhase);
1815HRESULT STDMETHODCALLTYPE IActiveIMMApp_CreateContext_Proxy(
1816    IActiveIMMApp* This,
1817    HIMC *phIMC);
1818void __RPC_STUB IActiveIMMApp_CreateContext_Stub(
1819    IRpcStubBuffer* This,
1820    IRpcChannelBuffer* pRpcChannelBuffer,
1821    PRPC_MESSAGE pRpcMessage,
1822    DWORD* pdwStubPhase);
1823HRESULT STDMETHODCALLTYPE IActiveIMMApp_DestroyContext_Proxy(
1824    IActiveIMMApp* This,
1825    HIMC hIME);
1826void __RPC_STUB IActiveIMMApp_DestroyContext_Stub(
1827    IRpcStubBuffer* This,
1828    IRpcChannelBuffer* pRpcChannelBuffer,
1829    PRPC_MESSAGE pRpcMessage,
1830    DWORD* pdwStubPhase);
1831HRESULT 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);
1839void __RPC_STUB IActiveIMMApp_EnumRegisterWordA_Stub(
1840    IRpcStubBuffer* This,
1841    IRpcChannelBuffer* pRpcChannelBuffer,
1842    PRPC_MESSAGE pRpcMessage,
1843    DWORD* pdwStubPhase);
1844HRESULT 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);
1852void __RPC_STUB IActiveIMMApp_EnumRegisterWordW_Stub(
1853    IRpcStubBuffer* This,
1854    IRpcChannelBuffer* pRpcChannelBuffer,
1855    PRPC_MESSAGE pRpcMessage,
1856    DWORD* pdwStubPhase);
1857HRESULT STDMETHODCALLTYPE IActiveIMMApp_EscapeA_Proxy(
1858    IActiveIMMApp* This,
1859    HKL hKL,
1860    HIMC hIMC,
1861    UINT uEscape,
1862    LPVOID pData,
1863    LRESULT *plResult);
1864void __RPC_STUB IActiveIMMApp_EscapeA_Stub(
1865    IRpcStubBuffer* This,
1866    IRpcChannelBuffer* pRpcChannelBuffer,
1867    PRPC_MESSAGE pRpcMessage,
1868    DWORD* pdwStubPhase);
1869HRESULT STDMETHODCALLTYPE IActiveIMMApp_EscapeW_Proxy(
1870    IActiveIMMApp* This,
1871    HKL hKL,
1872    HIMC hIMC,
1873    UINT uEscape,
1874    LPVOID pData,
1875    LRESULT *plResult);
1876void __RPC_STUB IActiveIMMApp_EscapeW_Stub(
1877    IRpcStubBuffer* This,
1878    IRpcChannelBuffer* pRpcChannelBuffer,
1879    PRPC_MESSAGE pRpcMessage,
1880    DWORD* pdwStubPhase);
1881HRESULT STDMETHODCALLTYPE IActiveIMMApp_GetCandidateListA_Proxy(
1882    IActiveIMMApp* This,
1883    HIMC hIMC,
1884    DWORD dwIndex,
1885    UINT uBufLen,
1886    CANDIDATELIST *pCandList,
1887    UINT *puCopied);
1888void __RPC_STUB IActiveIMMApp_GetCandidateListA_Stub(
1889    IRpcStubBuffer* This,
1890    IRpcChannelBuffer* pRpcChannelBuffer,
1891    PRPC_MESSAGE pRpcMessage,
1892    DWORD* pdwStubPhase);
1893HRESULT STDMETHODCALLTYPE IActiveIMMApp_GetCandidateListW_Proxy(
1894    IActiveIMMApp* This,
1895    HIMC hIMC,
1896    DWORD dwIndex,
1897    UINT uBufLen,
1898    CANDIDATELIST *pCandList,
1899    UINT *puCopied);
1900void __RPC_STUB IActiveIMMApp_GetCandidateListW_Stub(
1901    IRpcStubBuffer* This,
1902    IRpcChannelBuffer* pRpcChannelBuffer,
1903    PRPC_MESSAGE pRpcMessage,
1904    DWORD* pdwStubPhase);
1905HRESULT STDMETHODCALLTYPE IActiveIMMApp_GetCandidateListCountA_Proxy(
1906    IActiveIMMApp* This,
1907    HIMC hIMC,
1908    DWORD *pdwListSize,
1909    DWORD *pdwBufLen);
1910void __RPC_STUB IActiveIMMApp_GetCandidateListCountA_Stub(
1911    IRpcStubBuffer* This,
1912    IRpcChannelBuffer* pRpcChannelBuffer,
1913    PRPC_MESSAGE pRpcMessage,
1914    DWORD* pdwStubPhase);
1915HRESULT STDMETHODCALLTYPE IActiveIMMApp_GetCandidateListCountW_Proxy(
1916    IActiveIMMApp* This,
1917    HIMC hIMC,
1918    DWORD *pdwListSize,
1919    DWORD *pdwBufLen);
1920void __RPC_STUB IActiveIMMApp_GetCandidateListCountW_Stub(
1921    IRpcStubBuffer* This,
1922    IRpcChannelBuffer* pRpcChannelBuffer,
1923    PRPC_MESSAGE pRpcMessage,
1924    DWORD* pdwStubPhase);
1925HRESULT STDMETHODCALLTYPE IActiveIMMApp_GetCandidateWindow_Proxy(
1926    IActiveIMMApp* This,
1927    HIMC hIMC,
1928    DWORD dwIndex,
1929    CANDIDATEFORM *pCandidate);
1930void __RPC_STUB IActiveIMMApp_GetCandidateWindow_Stub(
1931    IRpcStubBuffer* This,
1932    IRpcChannelBuffer* pRpcChannelBuffer,
1933    PRPC_MESSAGE pRpcMessage,
1934    DWORD* pdwStubPhase);
1935HRESULT STDMETHODCALLTYPE IActiveIMMApp_GetCompositionFontA_Proxy(
1936    IActiveIMMApp* This,
1937    HIMC hIMC,
1938    LOGFONTA *plf);
1939void __RPC_STUB IActiveIMMApp_GetCompositionFontA_Stub(
1940    IRpcStubBuffer* This,
1941    IRpcChannelBuffer* pRpcChannelBuffer,
1942    PRPC_MESSAGE pRpcMessage,
1943    DWORD* pdwStubPhase);
1944HRESULT STDMETHODCALLTYPE IActiveIMMApp_GetCompositionFontW_Proxy(
1945    IActiveIMMApp* This,
1946    HIMC hIMC,
1947    LOGFONTW *plf);
1948void __RPC_STUB IActiveIMMApp_GetCompositionFontW_Stub(
1949    IRpcStubBuffer* This,
1950    IRpcChannelBuffer* pRpcChannelBuffer,
1951    PRPC_MESSAGE pRpcMessage,
1952    DWORD* pdwStubPhase);
1953HRESULT STDMETHODCALLTYPE IActiveIMMApp_GetCompositionStringA_Proxy(
1954    IActiveIMMApp* This,
1955    HIMC hIMC,
1956    DWORD dwIndex,
1957    DWORD dwBufLen,
1958    LONG *plCopied,
1959    LPVOID pBuf);
1960void __RPC_STUB IActiveIMMApp_GetCompositionStringA_Stub(
1961    IRpcStubBuffer* This,
1962    IRpcChannelBuffer* pRpcChannelBuffer,
1963    PRPC_MESSAGE pRpcMessage,
1964    DWORD* pdwStubPhase);
1965HRESULT STDMETHODCALLTYPE IActiveIMMApp_GetCompositionStringW_Proxy(
1966    IActiveIMMApp* This,
1967    HIMC hIMC,
1968    DWORD dwIndex,
1969    DWORD dwBufLen,
1970    LONG *plCopied,
1971    LPVOID pBuf);
1972void __RPC_STUB IActiveIMMApp_GetCompositionStringW_Stub(
1973    IRpcStubBuffer* This,
1974    IRpcChannelBuffer* pRpcChannelBuffer,
1975    PRPC_MESSAGE pRpcMessage,
1976    DWORD* pdwStubPhase);
1977HRESULT STDMETHODCALLTYPE IActiveIMMApp_GetCompositionWindow_Proxy(
1978    IActiveIMMApp* This,
1979    HIMC hIMC,
1980    COMPOSITIONFORM *pCompForm);
1981void __RPC_STUB IActiveIMMApp_GetCompositionWindow_Stub(
1982    IRpcStubBuffer* This,
1983    IRpcChannelBuffer* pRpcChannelBuffer,
1984    PRPC_MESSAGE pRpcMessage,
1985    DWORD* pdwStubPhase);
1986HRESULT STDMETHODCALLTYPE IActiveIMMApp_GetContext_Proxy(
1987    IActiveIMMApp* This,
1988    HWND hWnd,
1989    HIMC *phIMC);
1990void __RPC_STUB IActiveIMMApp_GetContext_Stub(
1991    IRpcStubBuffer* This,
1992    IRpcChannelBuffer* pRpcChannelBuffer,
1993    PRPC_MESSAGE pRpcMessage,
1994    DWORD* pdwStubPhase);
1995HRESULT 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);
2004void __RPC_STUB IActiveIMMApp_GetConversionListA_Stub(
2005    IRpcStubBuffer* This,
2006    IRpcChannelBuffer* pRpcChannelBuffer,
2007    PRPC_MESSAGE pRpcMessage,
2008    DWORD* pdwStubPhase);
2009HRESULT 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);
2018void __RPC_STUB IActiveIMMApp_GetConversionListW_Stub(
2019    IRpcStubBuffer* This,
2020    IRpcChannelBuffer* pRpcChannelBuffer,
2021    PRPC_MESSAGE pRpcMessage,
2022    DWORD* pdwStubPhase);
2023HRESULT STDMETHODCALLTYPE IActiveIMMApp_GetConversionStatus_Proxy(
2024    IActiveIMMApp* This,
2025    HIMC hIMC,
2026    DWORD *pfdwConversion,
2027    DWORD *pfdwSentence);
2028void __RPC_STUB IActiveIMMApp_GetConversionStatus_Stub(
2029    IRpcStubBuffer* This,
2030    IRpcChannelBuffer* pRpcChannelBuffer,
2031    PRPC_MESSAGE pRpcMessage,
2032    DWORD* pdwStubPhase);
2033HRESULT STDMETHODCALLTYPE IActiveIMMApp_GetDefaultIMEWnd_Proxy(
2034    IActiveIMMApp* This,
2035    HWND hWnd,
2036    HWND *phDefWnd);
2037void __RPC_STUB IActiveIMMApp_GetDefaultIMEWnd_Stub(
2038    IRpcStubBuffer* This,
2039    IRpcChannelBuffer* pRpcChannelBuffer,
2040    PRPC_MESSAGE pRpcMessage,
2041    DWORD* pdwStubPhase);
2042HRESULT STDMETHODCALLTYPE IActiveIMMApp_GetDescriptionA_Proxy(
2043    IActiveIMMApp* This,
2044    HKL hKL,
2045    UINT uBufLen,
2046    LPSTR szDescription,
2047    UINT *puCopied);
2048void __RPC_STUB IActiveIMMApp_GetDescriptionA_Stub(
2049    IRpcStubBuffer* This,
2050    IRpcChannelBuffer* pRpcChannelBuffer,
2051    PRPC_MESSAGE pRpcMessage,
2052    DWORD* pdwStubPhase);
2053HRESULT STDMETHODCALLTYPE IActiveIMMApp_GetDescriptionW_Proxy(
2054    IActiveIMMApp* This,
2055    HKL hKL,
2056    UINT uBufLen,
2057    LPWSTR szDescription,
2058    UINT *puCopied);
2059void __RPC_STUB IActiveIMMApp_GetDescriptionW_Stub(
2060    IRpcStubBuffer* This,
2061    IRpcChannelBuffer* pRpcChannelBuffer,
2062    PRPC_MESSAGE pRpcMessage,
2063    DWORD* pdwStubPhase);
2064HRESULT STDMETHODCALLTYPE IActiveIMMApp_GetGuideLineA_Proxy(
2065    IActiveIMMApp* This,
2066    HIMC hIMC,
2067    DWORD dwIndex,
2068    DWORD dwBufLen,
2069    LPSTR pBuf,
2070    DWORD *pdwResult);
2071void __RPC_STUB IActiveIMMApp_GetGuideLineA_Stub(
2072    IRpcStubBuffer* This,
2073    IRpcChannelBuffer* pRpcChannelBuffer,
2074    PRPC_MESSAGE pRpcMessage,
2075    DWORD* pdwStubPhase);
2076HRESULT STDMETHODCALLTYPE IActiveIMMApp_GetGuideLineW_Proxy(
2077    IActiveIMMApp* This,
2078    HIMC hIMC,
2079    DWORD dwIndex,
2080    DWORD dwBufLen,
2081    LPWSTR pBuf,
2082    DWORD *pdwResult);
2083void __RPC_STUB IActiveIMMApp_GetGuideLineW_Stub(
2084    IRpcStubBuffer* This,
2085    IRpcChannelBuffer* pRpcChannelBuffer,
2086    PRPC_MESSAGE pRpcMessage,
2087    DWORD* pdwStubPhase);
2088HRESULT STDMETHODCALLTYPE IActiveIMMApp_GetIMEFileNameA_Proxy(
2089    IActiveIMMApp* This,
2090    HKL hKL,
2091    UINT uBufLen,
2092    LPSTR szFileName,
2093    UINT *puCopied);
2094void __RPC_STUB IActiveIMMApp_GetIMEFileNameA_Stub(
2095    IRpcStubBuffer* This,
2096    IRpcChannelBuffer* pRpcChannelBuffer,
2097    PRPC_MESSAGE pRpcMessage,
2098    DWORD* pdwStubPhase);
2099HRESULT STDMETHODCALLTYPE IActiveIMMApp_GetIMEFileNameW_Proxy(
2100    IActiveIMMApp* This,
2101    HKL hKL,
2102    UINT uBufLen,
2103    LPWSTR szFileName,
2104    UINT *puCopied);
2105void __RPC_STUB IActiveIMMApp_GetIMEFileNameW_Stub(
2106    IRpcStubBuffer* This,
2107    IRpcChannelBuffer* pRpcChannelBuffer,
2108    PRPC_MESSAGE pRpcMessage,
2109    DWORD* pdwStubPhase);
2110HRESULT STDMETHODCALLTYPE IActiveIMMApp_GetOpenStatus_Proxy(
2111    IActiveIMMApp* This,
2112    HIMC hIMC);
2113void __RPC_STUB IActiveIMMApp_GetOpenStatus_Stub(
2114    IRpcStubBuffer* This,
2115    IRpcChannelBuffer* pRpcChannelBuffer,
2116    PRPC_MESSAGE pRpcMessage,
2117    DWORD* pdwStubPhase);
2118HRESULT STDMETHODCALLTYPE IActiveIMMApp_GetProperty_Proxy(
2119    IActiveIMMApp* This,
2120    HKL hKL,
2121    DWORD fdwIndex,
2122    DWORD *pdwProperty);
2123void __RPC_STUB IActiveIMMApp_GetProperty_Stub(
2124    IRpcStubBuffer* This,
2125    IRpcChannelBuffer* pRpcChannelBuffer,
2126    PRPC_MESSAGE pRpcMessage,
2127    DWORD* pdwStubPhase);
2128HRESULT STDMETHODCALLTYPE IActiveIMMApp_GetRegisterWordStyleA_Proxy(
2129    IActiveIMMApp* This,
2130    HKL hKL,
2131    UINT nItem,
2132    STYLEBUFA *pStyleBuf,
2133    UINT *puCopied);
2134void __RPC_STUB IActiveIMMApp_GetRegisterWordStyleA_Stub(
2135    IRpcStubBuffer* This,
2136    IRpcChannelBuffer* pRpcChannelBuffer,
2137    PRPC_MESSAGE pRpcMessage,
2138    DWORD* pdwStubPhase);
2139HRESULT STDMETHODCALLTYPE IActiveIMMApp_GetRegisterWordStyleW_Proxy(
2140    IActiveIMMApp* This,
2141    HKL hKL,
2142    UINT nItem,
2143    STYLEBUFW *pStyleBuf,
2144    UINT *puCopied);
2145void __RPC_STUB IActiveIMMApp_GetRegisterWordStyleW_Stub(
2146    IRpcStubBuffer* This,
2147    IRpcChannelBuffer* pRpcChannelBuffer,
2148    PRPC_MESSAGE pRpcMessage,
2149    DWORD* pdwStubPhase);
2150HRESULT STDMETHODCALLTYPE IActiveIMMApp_GetStatusWindowPos_Proxy(
2151    IActiveIMMApp* This,
2152    HIMC hIMC,
2153    POINT *pptPos);
2154void __RPC_STUB IActiveIMMApp_GetStatusWindowPos_Stub(
2155    IRpcStubBuffer* This,
2156    IRpcChannelBuffer* pRpcChannelBuffer,
2157    PRPC_MESSAGE pRpcMessage,
2158    DWORD* pdwStubPhase);
2159HRESULT STDMETHODCALLTYPE IActiveIMMApp_GetVirtualKey_Proxy(
2160    IActiveIMMApp* This,
2161    HWND hWnd,
2162    UINT *puVirtualKey);
2163void __RPC_STUB IActiveIMMApp_GetVirtualKey_Stub(
2164    IRpcStubBuffer* This,
2165    IRpcChannelBuffer* pRpcChannelBuffer,
2166    PRPC_MESSAGE pRpcMessage,
2167    DWORD* pdwStubPhase);
2168HRESULT STDMETHODCALLTYPE IActiveIMMApp_InstallIMEA_Proxy(
2169    IActiveIMMApp* This,
2170    LPSTR szIMEFileName,
2171    LPSTR szLayoutText,
2172    HKL *phKL);
2173void __RPC_STUB IActiveIMMApp_InstallIMEA_Stub(
2174    IRpcStubBuffer* This,
2175    IRpcChannelBuffer* pRpcChannelBuffer,
2176    PRPC_MESSAGE pRpcMessage,
2177    DWORD* pdwStubPhase);
2178HRESULT STDMETHODCALLTYPE IActiveIMMApp_InstallIMEW_Proxy(
2179    IActiveIMMApp* This,
2180    LPWSTR szIMEFileName,
2181    LPWSTR szLayoutText,
2182    HKL *phKL);
2183void __RPC_STUB IActiveIMMApp_InstallIMEW_Stub(
2184    IRpcStubBuffer* This,
2185    IRpcChannelBuffer* pRpcChannelBuffer,
2186    PRPC_MESSAGE pRpcMessage,
2187    DWORD* pdwStubPhase);
2188HRESULT STDMETHODCALLTYPE IActiveIMMApp_IsIME_Proxy(
2189    IActiveIMMApp* This,
2190    HKL hKL);
2191void __RPC_STUB IActiveIMMApp_IsIME_Stub(
2192    IRpcStubBuffer* This,
2193    IRpcChannelBuffer* pRpcChannelBuffer,
2194    PRPC_MESSAGE pRpcMessage,
2195    DWORD* pdwStubPhase);
2196HRESULT STDMETHODCALLTYPE IActiveIMMApp_IsUIMessageA_Proxy(
2197    IActiveIMMApp* This,
2198    HWND hWndIME,
2199    UINT msg,
2200    WPARAM wParam,
2201    LPARAM lParam);
2202void __RPC_STUB IActiveIMMApp_IsUIMessageA_Stub(
2203    IRpcStubBuffer* This,
2204    IRpcChannelBuffer* pRpcChannelBuffer,
2205    PRPC_MESSAGE pRpcMessage,
2206    DWORD* pdwStubPhase);
2207HRESULT STDMETHODCALLTYPE IActiveIMMApp_IsUIMessageW_Proxy(
2208    IActiveIMMApp* This,
2209    HWND hWndIME,
2210    UINT msg,
2211    WPARAM wParam,
2212    LPARAM lParam);
2213void __RPC_STUB IActiveIMMApp_IsUIMessageW_Stub(
2214    IRpcStubBuffer* This,
2215    IRpcChannelBuffer* pRpcChannelBuffer,
2216    PRPC_MESSAGE pRpcMessage,
2217    DWORD* pdwStubPhase);
2218HRESULT STDMETHODCALLTYPE IActiveIMMApp_NotifyIME_Proxy(
2219    IActiveIMMApp* This,
2220    HIMC hIMC,
2221    DWORD dwAction,
2222    DWORD dwIndex,
2223    DWORD dwValue);
2224void __RPC_STUB IActiveIMMApp_NotifyIME_Stub(
2225    IRpcStubBuffer* This,
2226    IRpcChannelBuffer* pRpcChannelBuffer,
2227    PRPC_MESSAGE pRpcMessage,
2228    DWORD* pdwStubPhase);
2229HRESULT STDMETHODCALLTYPE IActiveIMMApp_RegisterWordA_Proxy(
2230    IActiveIMMApp* This,
2231    HKL hKL,
2232    LPSTR szReading,
2233    DWORD dwStyle,
2234    LPSTR szRegister);
2235void __RPC_STUB IActiveIMMApp_RegisterWordA_Stub(
2236    IRpcStubBuffer* This,
2237    IRpcChannelBuffer* pRpcChannelBuffer,
2238    PRPC_MESSAGE pRpcMessage,
2239    DWORD* pdwStubPhase);
2240HRESULT STDMETHODCALLTYPE IActiveIMMApp_RegisterWordW_Proxy(
2241    IActiveIMMApp* This,
2242    HKL hKL,
2243    LPWSTR szReading,
2244    DWORD dwStyle,
2245    LPWSTR szRegister);
2246void __RPC_STUB IActiveIMMApp_RegisterWordW_Stub(
2247    IRpcStubBuffer* This,
2248    IRpcChannelBuffer* pRpcChannelBuffer,
2249    PRPC_MESSAGE pRpcMessage,
2250    DWORD* pdwStubPhase);
2251HRESULT STDMETHODCALLTYPE IActiveIMMApp_ReleaseContext_Proxy(
2252    IActiveIMMApp* This,
2253    HWND hWnd,
2254    HIMC hIMC);
2255void __RPC_STUB IActiveIMMApp_ReleaseContext_Stub(
2256    IRpcStubBuffer* This,
2257    IRpcChannelBuffer* pRpcChannelBuffer,
2258    PRPC_MESSAGE pRpcMessage,
2259    DWORD* pdwStubPhase);
2260HRESULT STDMETHODCALLTYPE IActiveIMMApp_SetCandidateWindow_Proxy(
2261    IActiveIMMApp* This,
2262    HIMC hIMC,
2263    CANDIDATEFORM *pCandidate);
2264void __RPC_STUB IActiveIMMApp_SetCandidateWindow_Stub(
2265    IRpcStubBuffer* This,
2266    IRpcChannelBuffer* pRpcChannelBuffer,
2267    PRPC_MESSAGE pRpcMessage,
2268    DWORD* pdwStubPhase);
2269HRESULT STDMETHODCALLTYPE IActiveIMMApp_SetCompositionFontA_Proxy(
2270    IActiveIMMApp* This,
2271    HIMC hIMC,
2272    LOGFONTA *plf);
2273void __RPC_STUB IActiveIMMApp_SetCompositionFontA_Stub(
2274    IRpcStubBuffer* This,
2275    IRpcChannelBuffer* pRpcChannelBuffer,
2276    PRPC_MESSAGE pRpcMessage,
2277    DWORD* pdwStubPhase);
2278HRESULT STDMETHODCALLTYPE IActiveIMMApp_SetCompositionFontW_Proxy(
2279    IActiveIMMApp* This,
2280    HIMC hIMC,
2281    LOGFONTW *plf);
2282void __RPC_STUB IActiveIMMApp_SetCompositionFontW_Stub(
2283    IRpcStubBuffer* This,
2284    IRpcChannelBuffer* pRpcChannelBuffer,
2285    PRPC_MESSAGE pRpcMessage,
2286    DWORD* pdwStubPhase);
2287HRESULT 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);
2295void __RPC_STUB IActiveIMMApp_SetCompositionStringA_Stub(
2296    IRpcStubBuffer* This,
2297    IRpcChannelBuffer* pRpcChannelBuffer,
2298    PRPC_MESSAGE pRpcMessage,
2299    DWORD* pdwStubPhase);
2300HRESULT 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);
2308void __RPC_STUB IActiveIMMApp_SetCompositionStringW_Stub(
2309    IRpcStubBuffer* This,
2310    IRpcChannelBuffer* pRpcChannelBuffer,
2311    PRPC_MESSAGE pRpcMessage,
2312    DWORD* pdwStubPhase);
2313HRESULT STDMETHODCALLTYPE IActiveIMMApp_SetCompositionWindow_Proxy(
2314    IActiveIMMApp* This,
2315    HIMC hIMC,
2316    COMPOSITIONFORM *pCompForm);
2317void __RPC_STUB IActiveIMMApp_SetCompositionWindow_Stub(
2318    IRpcStubBuffer* This,
2319    IRpcChannelBuffer* pRpcChannelBuffer,
2320    PRPC_MESSAGE pRpcMessage,
2321    DWORD* pdwStubPhase);
2322HRESULT STDMETHODCALLTYPE IActiveIMMApp_SetConversionStatus_Proxy(
2323    IActiveIMMApp* This,
2324    HIMC hIMC,
2325    DWORD fdwConversion,
2326    DWORD fdwSentence);
2327void __RPC_STUB IActiveIMMApp_SetConversionStatus_Stub(
2328    IRpcStubBuffer* This,
2329    IRpcChannelBuffer* pRpcChannelBuffer,
2330    PRPC_MESSAGE pRpcMessage,
2331    DWORD* pdwStubPhase);
2332HRESULT STDMETHODCALLTYPE IActiveIMMApp_SetOpenStatus_Proxy(
2333    IActiveIMMApp* This,
2334    HIMC hIMC,
2335    WINBOOL fOpen);
2336void __RPC_STUB IActiveIMMApp_SetOpenStatus_Stub(
2337    IRpcStubBuffer* This,
2338    IRpcChannelBuffer* pRpcChannelBuffer,
2339    PRPC_MESSAGE pRpcMessage,
2340    DWORD* pdwStubPhase);
2341HRESULT STDMETHODCALLTYPE IActiveIMMApp_SetStatusWindowPos_Proxy(
2342    IActiveIMMApp* This,
2343    HIMC hIMC,
2344    POINT *pptPos);
2345void __RPC_STUB IActiveIMMApp_SetStatusWindowPos_Stub(
2346    IRpcStubBuffer* This,
2347    IRpcChannelBuffer* pRpcChannelBuffer,
2348    PRPC_MESSAGE pRpcMessage,
2349    DWORD* pdwStubPhase);
2350HRESULT STDMETHODCALLTYPE IActiveIMMApp_SimulateHotKey_Proxy(
2351    IActiveIMMApp* This,
2352    HWND hWnd,
2353    DWORD dwHotKeyID);
2354void __RPC_STUB IActiveIMMApp_SimulateHotKey_Stub(
2355    IRpcStubBuffer* This,
2356    IRpcChannelBuffer* pRpcChannelBuffer,
2357    PRPC_MESSAGE pRpcMessage,
2358    DWORD* pdwStubPhase);
2359HRESULT STDMETHODCALLTYPE IActiveIMMApp_UnregisterWordA_Proxy(
2360    IActiveIMMApp* This,
2361    HKL hKL,
2362    LPSTR szReading,
2363    DWORD dwStyle,
2364    LPSTR szUnregister);
2365void __RPC_STUB IActiveIMMApp_UnregisterWordA_Stub(
2366    IRpcStubBuffer* This,
2367    IRpcChannelBuffer* pRpcChannelBuffer,
2368    PRPC_MESSAGE pRpcMessage,
2369    DWORD* pdwStubPhase);
2370HRESULT STDMETHODCALLTYPE IActiveIMMApp_UnregisterWordW_Proxy(
2371    IActiveIMMApp* This,
2372    HKL hKL,
2373    LPWSTR szReading,
2374    DWORD dwStyle,
2375    LPWSTR szUnregister);
2376void __RPC_STUB IActiveIMMApp_UnregisterWordW_Stub(
2377    IRpcStubBuffer* This,
2378    IRpcChannelBuffer* pRpcChannelBuffer,
2379    PRPC_MESSAGE pRpcMessage,
2380    DWORD* pdwStubPhase);
2381HRESULT STDMETHODCALLTYPE IActiveIMMApp_Activate_Proxy(
2382    IActiveIMMApp* This,
2383    WINBOOL fRestoreLayout);
2384void __RPC_STUB IActiveIMMApp_Activate_Stub(
2385    IRpcStubBuffer* This,
2386    IRpcChannelBuffer* pRpcChannelBuffer,
2387    PRPC_MESSAGE pRpcMessage,
2388    DWORD* pdwStubPhase);
2389HRESULT STDMETHODCALLTYPE IActiveIMMApp_Deactivate_Proxy(
2390    IActiveIMMApp* This);
2391void __RPC_STUB IActiveIMMApp_Deactivate_Stub(
2392    IRpcStubBuffer* This,
2393    IRpcChannelBuffer* pRpcChannelBuffer,
2394    PRPC_MESSAGE pRpcMessage,
2395    DWORD* pdwStubPhase);
2396HRESULT STDMETHODCALLTYPE IActiveIMMApp_OnDefWindowProc_Proxy(
2397    IActiveIMMApp* This,
2398    HWND hWnd,
2399    UINT Msg,
2400    WPARAM wParam,
2401    LPARAM lParam,
2402    LRESULT *plResult);
2403void __RPC_STUB IActiveIMMApp_OnDefWindowProc_Stub(
2404    IRpcStubBuffer* This,
2405    IRpcChannelBuffer* pRpcChannelBuffer,
2406    PRPC_MESSAGE pRpcMessage,
2407    DWORD* pdwStubPhase);
2408HRESULT STDMETHODCALLTYPE IActiveIMMApp_FilterClientWindows_Proxy(
2409    IActiveIMMApp* This,
2410    ATOM *aaClassList,
2411    UINT uSize);
2412void __RPC_STUB IActiveIMMApp_FilterClientWindows_Stub(
2413    IRpcStubBuffer* This,
2414    IRpcChannelBuffer* pRpcChannelBuffer,
2415    PRPC_MESSAGE pRpcMessage,
2416    DWORD* pdwStubPhase);
2417HRESULT STDMETHODCALLTYPE IActiveIMMApp_GetCodePageA_Proxy(
2418    IActiveIMMApp* This,
2419    HKL hKL,
2420    UINT *uCodePage);
2421void __RPC_STUB IActiveIMMApp_GetCodePageA_Stub(
2422    IRpcStubBuffer* This,
2423    IRpcChannelBuffer* pRpcChannelBuffer,
2424    PRPC_MESSAGE pRpcMessage,
2425    DWORD* pdwStubPhase);
2426HRESULT STDMETHODCALLTYPE IActiveIMMApp_GetLangId_Proxy(
2427    IActiveIMMApp* This,
2428    HKL hKL,
2429    LANGID *plid);
2430void __RPC_STUB IActiveIMMApp_GetLangId_Stub(
2431    IRpcStubBuffer* This,
2432    IRpcChannelBuffer* pRpcChannelBuffer,
2433    PRPC_MESSAGE pRpcMessage,
2434    DWORD* pdwStubPhase);
2435HRESULT STDMETHODCALLTYPE IActiveIMMApp_AssociateContextEx_Proxy(
2436    IActiveIMMApp* This,
2437    HWND hWnd,
2438    HIMC hIMC,
2439    DWORD dwFlags);
2440void __RPC_STUB IActiveIMMApp_AssociateContextEx_Stub(
2441    IRpcStubBuffer* This,
2442    IRpcChannelBuffer* pRpcChannelBuffer,
2443    PRPC_MESSAGE pRpcMessage,
2444    DWORD* pdwStubPhase);
2445HRESULT STDMETHODCALLTYPE IActiveIMMApp_DisableIME_Proxy(
2446    IActiveIMMApp* This,
2447    DWORD idThread);
2448void __RPC_STUB IActiveIMMApp_DisableIME_Stub(
2449    IRpcStubBuffer* This,
2450    IRpcChannelBuffer* pRpcChannelBuffer,
2451    PRPC_MESSAGE pRpcMessage,
2452    DWORD* pdwStubPhase);
2453HRESULT 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);
2462void __RPC_STUB IActiveIMMApp_GetImeMenuItemsA_Stub(
2463    IRpcStubBuffer* This,
2464    IRpcChannelBuffer* pRpcChannelBuffer,
2465    PRPC_MESSAGE pRpcMessage,
2466    DWORD* pdwStubPhase);
2467HRESULT 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);
2476void __RPC_STUB IActiveIMMApp_GetImeMenuItemsW_Stub(
2477    IRpcStubBuffer* This,
2478    IRpcChannelBuffer* pRpcChannelBuffer,
2479    PRPC_MESSAGE pRpcMessage,
2480    DWORD* pdwStubPhase);
2481HRESULT STDMETHODCALLTYPE IActiveIMMApp_EnumInputContext_Proxy(
2482    IActiveIMMApp* This,
2483    DWORD idThread,
2484    IEnumInputContext **ppEnum);
2485void __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
2499DEFINE_GUID(IID_IActiveIMMIME, 0x08c03411, 0xf96b, 0x11d0, 0xa4,0x75, 0x00,0xaa,0x00,0x6b,0xcc,0x59);
2500#if defined(__cplusplus) && !defined(CINTERFACE)
2501MIDL_INTERFACE("08c03411-f96b-11d0-a475-00aa006bcc59")
2502IActiveIMMIME : 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
2969typedef 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;
3532interface 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 ***/
3633static FORCEINLINE HRESULT IActiveIMMIME_QueryInterface(IActiveIMMIME* This,REFIID riid,void **ppvObject) {
3634    return This->lpVtbl->QueryInterface(This,riid,ppvObject);
3635}
3636static FORCEINLINE ULONG IActiveIMMIME_AddRef(IActiveIMMIME* This) {
3637    return This->lpVtbl->AddRef(This);
3638}
3639static FORCEINLINE ULONG IActiveIMMIME_Release(IActiveIMMIME* This) {
3640    return This->lpVtbl->Release(This);
3641}
3642/*** IActiveIMMIME methods ***/
3643static FORCEINLINE HRESULT IActiveIMMIME_AssociateContext(IActiveIMMIME* This,HWND hWnd,HIMC hIME,HIMC *phPrev) {
3644    return This->lpVtbl->AssociateContext(This,hWnd,hIME,phPrev);
3645}
3646static 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}
3649static 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}
3652static FORCEINLINE HRESULT IActiveIMMIME_CreateContext(IActiveIMMIME* This,HIMC *phIMC) {
3653    return This->lpVtbl->CreateContext(This,phIMC);
3654}
3655static FORCEINLINE HRESULT IActiveIMMIME_DestroyContext(IActiveIMMIME* This,HIMC hIME) {
3656    return This->lpVtbl->DestroyContext(This,hIME);
3657}
3658static 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}
3661static 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}
3664static 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}
3667static 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}
3670static 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}
3673static 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}
3676static FORCEINLINE HRESULT IActiveIMMIME_GetCandidateListCountA(IActiveIMMIME* This,HIMC hIMC,DWORD *pdwListSize,DWORD *pdwBufLen) {
3677    return This->lpVtbl->GetCandidateListCountA(This,hIMC,pdwListSize,pdwBufLen);
3678}
3679static FORCEINLINE HRESULT IActiveIMMIME_GetCandidateListCountW(IActiveIMMIME* This,HIMC hIMC,DWORD *pdwListSize,DWORD *pdwBufLen) {
3680    return This->lpVtbl->GetCandidateListCountW(This,hIMC,pdwListSize,pdwBufLen);
3681}
3682static FORCEINLINE HRESULT IActiveIMMIME_GetCandidateWindow(IActiveIMMIME* This,HIMC hIMC,DWORD dwIndex,CANDIDATEFORM *pCandidate) {
3683    return This->lpVtbl->GetCandidateWindow(This,hIMC,dwIndex,pCandidate);
3684}
3685static FORCEINLINE HRESULT IActiveIMMIME_GetCompositionFontA(IActiveIMMIME* This,HIMC hIMC,LOGFONTA *plf) {
3686    return This->lpVtbl->GetCompositionFontA(This,hIMC,plf);
3687}
3688static FORCEINLINE HRESULT IActiveIMMIME_GetCompositionFontW(IActiveIMMIME* This,HIMC hIMC,LOGFONTW *plf) {
3689    return This->lpVtbl->GetCompositionFontW(This,hIMC,plf);
3690}
3691static 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}
3694static 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}
3697static FORCEINLINE HRESULT IActiveIMMIME_GetCompositionWindow(IActiveIMMIME* This,HIMC hIMC,COMPOSITIONFORM *pCompForm) {
3698    return This->lpVtbl->GetCompositionWindow(This,hIMC,pCompForm);
3699}
3700static FORCEINLINE HRESULT IActiveIMMIME_GetContext(IActiveIMMIME* This,HWND hWnd,HIMC *phIMC) {
3701    return This->lpVtbl->GetContext(This,hWnd,phIMC);
3702}
3703static 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}
3706static 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}
3709static FORCEINLINE HRESULT IActiveIMMIME_GetConversionStatus(IActiveIMMIME* This,HIMC hIMC,DWORD *pfdwConversion,DWORD *pfdwSentence) {
3710    return This->lpVtbl->GetConversionStatus(This,hIMC,pfdwConversion,pfdwSentence);
3711}
3712static FORCEINLINE HRESULT IActiveIMMIME_GetDefaultIMEWnd(IActiveIMMIME* This,HWND hWnd,HWND *phDefWnd) {
3713    return This->lpVtbl->GetDefaultIMEWnd(This,hWnd,phDefWnd);
3714}
3715static 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}
3718static 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}
3721static 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}
3724static 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}
3727static 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}
3730static 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}
3733static FORCEINLINE HRESULT IActiveIMMIME_GetOpenStatus(IActiveIMMIME* This,HIMC hIMC) {
3734    return This->lpVtbl->GetOpenStatus(This,hIMC);
3735}
3736static FORCEINLINE HRESULT IActiveIMMIME_GetProperty(IActiveIMMIME* This,HKL hKL,DWORD fdwIndex,DWORD *pdwProperty) {
3737    return This->lpVtbl->GetProperty(This,hKL,fdwIndex,pdwProperty);
3738}
3739static 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}
3742static 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}
3745static FORCEINLINE HRESULT IActiveIMMIME_GetStatusWindowPos(IActiveIMMIME* This,HIMC hIMC,POINT *pptPos) {
3746    return This->lpVtbl->GetStatusWindowPos(This,hIMC,pptPos);
3747}
3748static FORCEINLINE HRESULT IActiveIMMIME_GetVirtualKey(IActiveIMMIME* This,HWND hWnd,UINT *puVirtualKey) {
3749    return This->lpVtbl->GetVirtualKey(This,hWnd,puVirtualKey);
3750}
3751static FORCEINLINE HRESULT IActiveIMMIME_InstallIMEA(IActiveIMMIME* This,LPSTR szIMEFileName,LPSTR szLayoutText,HKL *phKL) {
3752    return This->lpVtbl->InstallIMEA(This,szIMEFileName,szLayoutText,phKL);
3753}
3754static FORCEINLINE HRESULT IActiveIMMIME_InstallIMEW(IActiveIMMIME* This,LPWSTR szIMEFileName,LPWSTR szLayoutText,HKL *phKL) {
3755    return This->lpVtbl->InstallIMEW(This,szIMEFileName,szLayoutText,phKL);
3756}
3757static FORCEINLINE HRESULT IActiveIMMIME_IsIME(IActiveIMMIME* This,HKL hKL) {
3758    return This->lpVtbl->IsIME(This,hKL);
3759}
3760static 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}
3763static 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}
3766static 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}
3769static 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}
3772static 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}
3775static FORCEINLINE HRESULT IActiveIMMIME_ReleaseContext(IActiveIMMIME* This,HWND hWnd,HIMC hIMC) {
3776    return This->lpVtbl->ReleaseContext(This,hWnd,hIMC);
3777}
3778static FORCEINLINE HRESULT IActiveIMMIME_SetCandidateWindow(IActiveIMMIME* This,HIMC hIMC,CANDIDATEFORM *pCandidate) {
3779    return This->lpVtbl->SetCandidateWindow(This,hIMC,pCandidate);
3780}
3781static FORCEINLINE HRESULT IActiveIMMIME_SetCompositionFontA(IActiveIMMIME* This,HIMC hIMC,LOGFONTA *plf) {
3782    return This->lpVtbl->SetCompositionFontA(This,hIMC,plf);
3783}
3784static FORCEINLINE HRESULT IActiveIMMIME_SetCompositionFontW(IActiveIMMIME* This,HIMC hIMC,LOGFONTW *plf) {
3785    return This->lpVtbl->SetCompositionFontW(This,hIMC,plf);
3786}
3787static 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}
3790static 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}
3793static FORCEINLINE HRESULT IActiveIMMIME_SetCompositionWindow(IActiveIMMIME* This,HIMC hIMC,COMPOSITIONFORM *pCompForm) {
3794    return This->lpVtbl->SetCompositionWindow(This,hIMC,pCompForm);
3795}
3796static FORCEINLINE HRESULT IActiveIMMIME_SetConversionStatus(IActiveIMMIME* This,HIMC hIMC,DWORD fdwConversion,DWORD fdwSentence) {
3797    return This->lpVtbl->SetConversionStatus(This,hIMC,fdwConversion,fdwSentence);
3798}
3799static FORCEINLINE HRESULT IActiveIMMIME_SetOpenStatus(IActiveIMMIME* This,HIMC hIMC,WINBOOL fOpen) {
3800    return This->lpVtbl->SetOpenStatus(This,hIMC,fOpen);
3801}
3802static FORCEINLINE HRESULT IActiveIMMIME_SetStatusWindowPos(IActiveIMMIME* This,HIMC hIMC,POINT *pptPos) {
3803    return This->lpVtbl->SetStatusWindowPos(This,hIMC,pptPos);
3804}
3805static FORCEINLINE HRESULT IActiveIMMIME_SimulateHotKey(IActiveIMMIME* This,HWND hWnd,DWORD dwHotKeyID) {
3806    return This->lpVtbl->SimulateHotKey(This,hWnd,dwHotKeyID);
3807}
3808static 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}
3811static 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}
3814static FORCEINLINE HRESULT IActiveIMMIME_GenerateMessage(IActiveIMMIME* This,HIMC hIMC) {
3815    return This->lpVtbl->GenerateMessage(This,hIMC);
3816}
3817static FORCEINLINE HRESULT IActiveIMMIME_LockIMC(IActiveIMMIME* This,HIMC hIMC,INPUTCONTEXT **ppIMC) {
3818    return This->lpVtbl->LockIMC(This,hIMC,ppIMC);
3819}
3820static FORCEINLINE HRESULT IActiveIMMIME_UnlockIMC(IActiveIMMIME* This,HIMC hIMC) {
3821    return This->lpVtbl->UnlockIMC(This,hIMC);
3822}
3823static FORCEINLINE HRESULT IActiveIMMIME_GetIMCLockCount(IActiveIMMIME* This,HIMC hIMC,DWORD *pdwLockCount) {
3824    return This->lpVtbl->GetIMCLockCount(This,hIMC,pdwLockCount);
3825}
3826static FORCEINLINE HRESULT IActiveIMMIME_CreateIMCC(IActiveIMMIME* This,DWORD dwSize,HIMCC *phIMCC) {
3827    return This->lpVtbl->CreateIMCC(This,dwSize,phIMCC);
3828}
3829static FORCEINLINE HRESULT IActiveIMMIME_DestroyIMCC(IActiveIMMIME* This,HIMCC hIMCC) {
3830    return This->lpVtbl->DestroyIMCC(This,hIMCC);
3831}
3832static FORCEINLINE HRESULT IActiveIMMIME_LockIMCC(IActiveIMMIME* This,HIMCC hIMCC,void **ppv) {
3833    return This->lpVtbl->LockIMCC(This,hIMCC,ppv);
3834}
3835static FORCEINLINE HRESULT IActiveIMMIME_UnlockIMCC(IActiveIMMIME* This,HIMCC hIMCC) {
3836    return This->lpVtbl->UnlockIMCC(This,hIMCC);
3837}
3838static FORCEINLINE HRESULT IActiveIMMIME_ReSizeIMCC(IActiveIMMIME* This,HIMCC hIMCC,DWORD dwSize,HIMCC *phIMCC) {
3839    return This->lpVtbl->ReSizeIMCC(This,hIMCC,dwSize,phIMCC);
3840}
3841static FORCEINLINE HRESULT IActiveIMMIME_GetIMCCSize(IActiveIMMIME* This,HIMCC hIMCC,DWORD *pdwSize) {
3842    return This->lpVtbl->GetIMCCSize(This,hIMCC,pdwSize);
3843}
3844static FORCEINLINE HRESULT IActiveIMMIME_GetIMCCLockCount(IActiveIMMIME* This,HIMCC hIMCC,DWORD *pdwLockCount) {
3845    return This->lpVtbl->GetIMCCLockCount(This,hIMCC,pdwLockCount);
3846}
3847static 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}
3850static 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}
3853static 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}
3856static FORCEINLINE HRESULT IActiveIMMIME_DestroySoftKeyboard(IActiveIMMIME* This,HWND hSoftKbdWnd) {
3857    return This->lpVtbl->DestroySoftKeyboard(This,hSoftKbdWnd);
3858}
3859static FORCEINLINE HRESULT IActiveIMMIME_ShowSoftKeyboard(IActiveIMMIME* This,HWND hSoftKbdWnd,int nCmdShow) {
3860    return This->lpVtbl->ShowSoftKeyboard(This,hSoftKbdWnd,nCmdShow);
3861}
3862static FORCEINLINE HRESULT IActiveIMMIME_GetCodePageA(IActiveIMMIME* This,HKL hKL,UINT *uCodePage) {
3863    return This->lpVtbl->GetCodePageA(This,hKL,uCodePage);
3864}
3865static FORCEINLINE HRESULT IActiveIMMIME_GetLangId(IActiveIMMIME* This,HKL hKL,LANGID *plid) {
3866    return This->lpVtbl->GetLangId(This,hKL,plid);
3867}
3868static 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}
3871static FORCEINLINE HRESULT IActiveIMMIME_LockModal(IActiveIMMIME* This) {
3872    return This->lpVtbl->LockModal(This);
3873}
3874static FORCEINLINE HRESULT IActiveIMMIME_UnlockModal(IActiveIMMIME* This) {
3875    return This->lpVtbl->UnlockModal(This);
3876}
3877static FORCEINLINE HRESULT IActiveIMMIME_AssociateContextEx(IActiveIMMIME* This,HWND hWnd,HIMC hIMC,DWORD dwFlags) {
3878    return This->lpVtbl->AssociateContextEx(This,hWnd,hIMC,dwFlags);
3879}
3880static FORCEINLINE HRESULT IActiveIMMIME_DisableIME(IActiveIMMIME* This,DWORD idThread) {
3881    return This->lpVtbl->DisableIME(This,idThread);
3882}
3883static 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}
3886static 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}
3889static FORCEINLINE HRESULT IActiveIMMIME_EnumInputContext(IActiveIMMIME* This,DWORD idThread,IEnumInputContext **ppEnum) {
3890    return This->lpVtbl->EnumInputContext(This,idThread,ppEnum);
3891}
3892static 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}
3895static 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}
3898static 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}
3901static 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}
3904static FORCEINLINE HRESULT IActiveIMMIME_IsSleeping(IActiveIMMIME* This) {
3905    return This->lpVtbl->IsSleeping(This);
3906}
3907#endif
3908#endif
3909
3910#endif
3911
3912HRESULT STDMETHODCALLTYPE IActiveIMMIME_AssociateContext_Proxy(
3913    IActiveIMMIME* This,
3914    HWND hWnd,
3915    HIMC hIME,
3916    HIMC *phPrev);
3917void __RPC_STUB IActiveIMMIME_AssociateContext_Stub(
3918    IRpcStubBuffer* This,
3919    IRpcChannelBuffer* pRpcChannelBuffer,
3920    PRPC_MESSAGE pRpcMessage,
3921    DWORD* pdwStubPhase);
3922HRESULT STDMETHODCALLTYPE IActiveIMMIME_ConfigureIMEA_Proxy(
3923    IActiveIMMIME* This,
3924    HKL hKL,
3925    HWND hWnd,
3926    DWORD dwMode,
3927    REGISTERWORDA *pData);
3928void __RPC_STUB IActiveIMMIME_ConfigureIMEA_Stub(
3929    IRpcStubBuffer* This,
3930    IRpcChannelBuffer* pRpcChannelBuffer,
3931    PRPC_MESSAGE pRpcMessage,
3932    DWORD* pdwStubPhase);
3933HRESULT STDMETHODCALLTYPE IActiveIMMIME_ConfigureIMEW_Proxy(
3934    IActiveIMMIME* This,
3935    HKL hKL,
3936    HWND hWnd,
3937    DWORD dwMode,
3938    REGISTERWORDW *pData);
3939void __RPC_STUB IActiveIMMIME_ConfigureIMEW_Stub(
3940    IRpcStubBuffer* This,
3941    IRpcChannelBuffer* pRpcChannelBuffer,
3942    PRPC_MESSAGE pRpcMessage,
3943    DWORD* pdwStubPhase);
3944HRESULT STDMETHODCALLTYPE IActiveIMMIME_CreateContext_Proxy(
3945    IActiveIMMIME* This,
3946    HIMC *phIMC);
3947void __RPC_STUB IActiveIMMIME_CreateContext_Stub(
3948    IRpcStubBuffer* This,
3949    IRpcChannelBuffer* pRpcChannelBuffer,
3950    PRPC_MESSAGE pRpcMessage,
3951    DWORD* pdwStubPhase);
3952HRESULT STDMETHODCALLTYPE IActiveIMMIME_DestroyContext_Proxy(
3953    IActiveIMMIME* This,
3954    HIMC hIME);
3955void __RPC_STUB IActiveIMMIME_DestroyContext_Stub(
3956    IRpcStubBuffer* This,
3957    IRpcChannelBuffer* pRpcChannelBuffer,
3958    PRPC_MESSAGE pRpcMessage,
3959    DWORD* pdwStubPhase);
3960HRESULT 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);
3968void __RPC_STUB IActiveIMMIME_EnumRegisterWordA_Stub(
3969    IRpcStubBuffer* This,
3970    IRpcChannelBuffer* pRpcChannelBuffer,
3971    PRPC_MESSAGE pRpcMessage,
3972    DWORD* pdwStubPhase);
3973HRESULT 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);
3981void __RPC_STUB IActiveIMMIME_EnumRegisterWordW_Stub(
3982    IRpcStubBuffer* This,
3983    IRpcChannelBuffer* pRpcChannelBuffer,
3984    PRPC_MESSAGE pRpcMessage,
3985    DWORD* pdwStubPhase);
3986HRESULT STDMETHODCALLTYPE IActiveIMMIME_EscapeA_Proxy(
3987    IActiveIMMIME* This,
3988    HKL hKL,
3989    HIMC hIMC,
3990    UINT uEscape,
3991    LPVOID pData,
3992    LRESULT *plResult);
3993void __RPC_STUB IActiveIMMIME_EscapeA_Stub(
3994    IRpcStubBuffer* This,
3995    IRpcChannelBuffer* pRpcChannelBuffer,
3996    PRPC_MESSAGE pRpcMessage,
3997    DWORD* pdwStubPhase);
3998HRESULT STDMETHODCALLTYPE IActiveIMMIME_EscapeW_Proxy(
3999    IActiveIMMIME* This,
4000    HKL hKL,
4001    HIMC hIMC,
4002    UINT uEscape,
4003    LPVOID pData,
4004    LRESULT *plResult);
4005void __RPC_STUB IActiveIMMIME_EscapeW_Stub(
4006    IRpcStubBuffer* This,
4007    IRpcChannelBuffer* pRpcChannelBuffer,
4008    PRPC_MESSAGE pRpcMessage,
4009    DWORD* pdwStubPhase);
4010HRESULT STDMETHODCALLTYPE IActiveIMMIME_GetCandidateListA_Proxy(
4011    IActiveIMMIME* This,
4012    HIMC hIMC,
4013    DWORD dwIndex,
4014    UINT uBufLen,
4015    CANDIDATELIST *pCandList,
4016    UINT *puCopied);
4017void __RPC_STUB IActiveIMMIME_GetCandidateListA_Stub(
4018    IRpcStubBuffer* This,
4019    IRpcChannelBuffer* pRpcChannelBuffer,
4020    PRPC_MESSAGE pRpcMessage,
4021    DWORD* pdwStubPhase);
4022HRESULT STDMETHODCALLTYPE IActiveIMMIME_GetCandidateListW_Proxy(
4023    IActiveIMMIME* This,
4024    HIMC hIMC,
4025    DWORD dwIndex,
4026    UINT uBufLen,
4027    CANDIDATELIST *pCandList,
4028    UINT *puCopied);
4029void __RPC_STUB IActiveIMMIME_GetCandidateListW_Stub(
4030    IRpcStubBuffer* This,
4031    IRpcChannelBuffer* pRpcChannelBuffer,
4032    PRPC_MESSAGE pRpcMessage,
4033    DWORD* pdwStubPhase);
4034HRESULT STDMETHODCALLTYPE IActiveIMMIME_GetCandidateListCountA_Proxy(
4035    IActiveIMMIME* This,
4036    HIMC hIMC,
4037    DWORD *pdwListSize,
4038    DWORD *pdwBufLen);
4039void __RPC_STUB IActiveIMMIME_GetCandidateListCountA_Stub(
4040    IRpcStubBuffer* This,
4041    IRpcChannelBuffer* pRpcChannelBuffer,
4042    PRPC_MESSAGE pRpcMessage,
4043    DWORD* pdwStubPhase);
4044HRESULT STDMETHODCALLTYPE IActiveIMMIME_GetCandidateListCountW_Proxy(
4045    IActiveIMMIME* This,
4046    HIMC hIMC,
4047    DWORD *pdwListSize,
4048    DWORD *pdwBufLen);
4049void __RPC_STUB IActiveIMMIME_GetCandidateListCountW_Stub(
4050    IRpcStubBuffer* This,
4051    IRpcChannelBuffer* pRpcChannelBuffer,
4052    PRPC_MESSAGE pRpcMessage,
4053    DWORD* pdwStubPhase);
4054HRESULT STDMETHODCALLTYPE IActiveIMMIME_GetCandidateWindow_Proxy(
4055    IActiveIMMIME* This,
4056    HIMC hIMC,
4057    DWORD dwIndex,
4058    CANDIDATEFORM *pCandidate);
4059void __RPC_STUB IActiveIMMIME_GetCandidateWindow_Stub(
4060    IRpcStubBuffer* This,
4061    IRpcChannelBuffer* pRpcChannelBuffer,
4062    PRPC_MESSAGE pRpcMessage,
4063    DWORD* pdwStubPhase);
4064HRESULT STDMETHODCALLTYPE IActiveIMMIME_GetCompositionFontA_Proxy(
4065    IActiveIMMIME* This,
4066    HIMC hIMC,
4067    LOGFONTA *plf);
4068void __RPC_STUB IActiveIMMIME_GetCompositionFontA_Stub(
4069    IRpcStubBuffer* This,
4070    IRpcChannelBuffer* pRpcChannelBuffer,
4071    PRPC_MESSAGE pRpcMessage,
4072    DWORD* pdwStubPhase);
4073HRESULT STDMETHODCALLTYPE IActiveIMMIME_GetCompositionFontW_Proxy(
4074    IActiveIMMIME* This,
4075    HIMC hIMC,
4076    LOGFONTW *plf);
4077void __RPC_STUB IActiveIMMIME_GetCompositionFontW_Stub(
4078    IRpcStubBuffer* This,
4079    IRpcChannelBuffer* pRpcChannelBuffer,
4080    PRPC_MESSAGE pRpcMessage,
4081    DWORD* pdwStubPhase);
4082HRESULT STDMETHODCALLTYPE IActiveIMMIME_GetCompositionStringA_Proxy(
4083    IActiveIMMIME* This,
4084    HIMC hIMC,
4085    DWORD dwIndex,
4086    DWORD dwBufLen,
4087    LONG *plCopied,
4088    LPVOID pBuf);
4089void __RPC_STUB IActiveIMMIME_GetCompositionStringA_Stub(
4090    IRpcStubBuffer* This,
4091    IRpcChannelBuffer* pRpcChannelBuffer,
4092    PRPC_MESSAGE pRpcMessage,
4093    DWORD* pdwStubPhase);
4094HRESULT STDMETHODCALLTYPE IActiveIMMIME_GetCompositionStringW_Proxy(
4095    IActiveIMMIME* This,
4096    HIMC hIMC,
4097    DWORD dwIndex,
4098    DWORD dwBufLen,
4099    LONG *plCopied,
4100    LPVOID pBuf);
4101void __RPC_STUB IActiveIMMIME_GetCompositionStringW_Stub(
4102    IRpcStubBuffer* This,
4103    IRpcChannelBuffer* pRpcChannelBuffer,
4104    PRPC_MESSAGE pRpcMessage,
4105    DWORD* pdwStubPhase);
4106HRESULT STDMETHODCALLTYPE IActiveIMMIME_GetCompositionWindow_Proxy(
4107    IActiveIMMIME* This,
4108    HIMC hIMC,
4109    COMPOSITIONFORM *pCompForm);
4110void __RPC_STUB IActiveIMMIME_GetCompositionWindow_Stub(
4111    IRpcStubBuffer* This,
4112    IRpcChannelBuffer* pRpcChannelBuffer,
4113    PRPC_MESSAGE pRpcMessage,
4114    DWORD* pdwStubPhase);
4115HRESULT STDMETHODCALLTYPE IActiveIMMIME_GetContext_Proxy(
4116    IActiveIMMIME* This,
4117    HWND hWnd,
4118    HIMC *phIMC);
4119void __RPC_STUB IActiveIMMIME_GetContext_Stub(
4120    IRpcStubBuffer* This,
4121    IRpcChannelBuffer* pRpcChannelBuffer,
4122    PRPC_MESSAGE pRpcMessage,
4123    DWORD* pdwStubPhase);
4124HRESULT 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);
4133void __RPC_STUB IActiveIMMIME_GetConversionListA_Stub(
4134    IRpcStubBuffer* This,
4135    IRpcChannelBuffer* pRpcChannelBuffer,
4136    PRPC_MESSAGE pRpcMessage,
4137    DWORD* pdwStubPhase);
4138HRESULT 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);
4147void __RPC_STUB IActiveIMMIME_GetConversionListW_Stub(
4148    IRpcStubBuffer* This,
4149    IRpcChannelBuffer* pRpcChannelBuffer,
4150    PRPC_MESSAGE pRpcMessage,
4151    DWORD* pdwStubPhase);
4152HRESULT STDMETHODCALLTYPE IActiveIMMIME_GetConversionStatus_Proxy(
4153    IActiveIMMIME* This,
4154    HIMC hIMC,
4155    DWORD *pfdwConversion,
4156    DWORD *pfdwSentence);
4157void __RPC_STUB IActiveIMMIME_GetConversionStatus_Stub(
4158    IRpcStubBuffer* This,
4159    IRpcChannelBuffer* pRpcChannelBuffer,
4160    PRPC_MESSAGE pRpcMessage,
4161    DWORD* pdwStubPhase);
4162HRESULT STDMETHODCALLTYPE IActiveIMMIME_GetDefaultIMEWnd_Proxy(
4163    IActiveIMMIME* This,
4164    HWND hWnd,
4165    HWND *phDefWnd);
4166void __RPC_STUB IActiveIMMIME_GetDefaultIMEWnd_Stub(
4167    IRpcStubBuffer* This,
4168    IRpcChannelBuffer* pRpcChannelBuffer,
4169    PRPC_MESSAGE pRpcMessage,
4170    DWORD* pdwStubPhase);
4171HRESULT STDMETHODCALLTYPE IActiveIMMIME_GetDescriptionA_Proxy(
4172    IActiveIMMIME* This,
4173    HKL hKL,
4174    UINT uBufLen,
4175    LPSTR szDescription,
4176    UINT *puCopied);
4177void __RPC_STUB IActiveIMMIME_GetDescriptionA_Stub(
4178    IRpcStubBuffer* This,
4179    IRpcChannelBuffer* pRpcChannelBuffer,
4180    PRPC_MESSAGE pRpcMessage,
4181    DWORD* pdwStubPhase);
4182HRESULT STDMETHODCALLTYPE IActiveIMMIME_GetDescriptionW_Proxy(
4183    IActiveIMMIME* This,
4184    HKL hKL,
4185    UINT uBufLen,
4186    LPWSTR szDescription,
4187    UINT *puCopied);
4188void __RPC_STUB IActiveIMMIME_GetDescriptionW_Stub(
4189    IRpcStubBuffer* This,
4190    IRpcChannelBuffer* pRpcChannelBuffer,
4191    PRPC_MESSAGE pRpcMessage,
4192    DWORD* pdwStubPhase);
4193HRESULT STDMETHODCALLTYPE IActiveIMMIME_GetGuideLineA_Proxy(
4194    IActiveIMMIME* This,
4195    HIMC hIMC,
4196    DWORD dwIndex,
4197    DWORD dwBufLen,
4198    LPSTR pBuf,
4199    DWORD *pdwResult);
4200void __RPC_STUB IActiveIMMIME_GetGuideLineA_Stub(
4201    IRpcStubBuffer* This,
4202    IRpcChannelBuffer* pRpcChannelBuffer,
4203    PRPC_MESSAGE pRpcMessage,
4204    DWORD* pdwStubPhase);
4205HRESULT STDMETHODCALLTYPE IActiveIMMIME_GetGuideLineW_Proxy(
4206    IActiveIMMIME* This,
4207    HIMC hIMC,
4208    DWORD dwIndex,
4209    DWORD dwBufLen,
4210    LPWSTR pBuf,
4211    DWORD *pdwResult);
4212void __RPC_STUB IActiveIMMIME_GetGuideLineW_Stub(
4213    IRpcStubBuffer* This,
4214    IRpcChannelBuffer* pRpcChannelBuffer,
4215    PRPC_MESSAGE pRpcMessage,
4216    DWORD* pdwStubPhase);
4217HRESULT STDMETHODCALLTYPE IActiveIMMIME_GetIMEFileNameA_Proxy(
4218    IActiveIMMIME* This,
4219    HKL hKL,
4220    UINT uBufLen,
4221    LPSTR szFileName,
4222    UINT *puCopied);
4223void __RPC_STUB IActiveIMMIME_GetIMEFileNameA_Stub(
4224    IRpcStubBuffer* This,
4225    IRpcChannelBuffer* pRpcChannelBuffer,
4226    PRPC_MESSAGE pRpcMessage,
4227    DWORD* pdwStubPhase);
4228HRESULT STDMETHODCALLTYPE IActiveIMMIME_GetIMEFileNameW_Proxy(
4229    IActiveIMMIME* This,
4230    HKL hKL,
4231    UINT uBufLen,
4232    LPWSTR szFileName,
4233    UINT *puCopied);
4234void __RPC_STUB IActiveIMMIME_GetIMEFileNameW_Stub(
4235    IRpcStubBuffer* This,
4236    IRpcChannelBuffer* pRpcChannelBuffer,
4237    PRPC_MESSAGE pRpcMessage,
4238    DWORD* pdwStubPhase);
4239HRESULT STDMETHODCALLTYPE IActiveIMMIME_GetOpenStatus_Proxy(
4240    IActiveIMMIME* This,
4241    HIMC hIMC);
4242void __RPC_STUB IActiveIMMIME_GetOpenStatus_Stub(
4243    IRpcStubBuffer* This,
4244    IRpcChannelBuffer* pRpcChannelBuffer,
4245    PRPC_MESSAGE pRpcMessage,
4246    DWORD* pdwStubPhase);
4247HRESULT STDMETHODCALLTYPE IActiveIMMIME_GetProperty_Proxy(
4248    IActiveIMMIME* This,
4249    HKL hKL,
4250    DWORD fdwIndex,
4251    DWORD *pdwProperty);
4252void __RPC_STUB IActiveIMMIME_GetProperty_Stub(
4253    IRpcStubBuffer* This,
4254    IRpcChannelBuffer* pRpcChannelBuffer,
4255    PRPC_MESSAGE pRpcMessage,
4256    DWORD* pdwStubPhase);
4257HRESULT STDMETHODCALLTYPE IActiveIMMIME_GetRegisterWordStyleA_Proxy(
4258    IActiveIMMIME* This,
4259    HKL hKL,
4260    UINT nItem,
4261    STYLEBUFA *pStyleBuf,
4262    UINT *puCopied);
4263void __RPC_STUB IActiveIMMIME_GetRegisterWordStyleA_Stub(
4264    IRpcStubBuffer* This,
4265    IRpcChannelBuffer* pRpcChannelBuffer,
4266    PRPC_MESSAGE pRpcMessage,
4267    DWORD* pdwStubPhase);
4268HRESULT STDMETHODCALLTYPE IActiveIMMIME_GetRegisterWordStyleW_Proxy(
4269    IActiveIMMIME* This,
4270    HKL hKL,
4271    UINT nItem,
4272    STYLEBUFW *pStyleBuf,
4273    UINT *puCopied);
4274void __RPC_STUB IActiveIMMIME_GetRegisterWordStyleW_Stub(
4275    IRpcStubBuffer* This,
4276    IRpcChannelBuffer* pRpcChannelBuffer,
4277    PRPC_MESSAGE pRpcMessage,
4278    DWORD* pdwStubPhase);
4279HRESULT STDMETHODCALLTYPE IActiveIMMIME_GetStatusWindowPos_Proxy(
4280    IActiveIMMIME* This,
4281    HIMC hIMC,
4282    POINT *pptPos);
4283void __RPC_STUB IActiveIMMIME_GetStatusWindowPos_Stub(
4284    IRpcStubBuffer* This,
4285    IRpcChannelBuffer* pRpcChannelBuffer,
4286    PRPC_MESSAGE pRpcMessage,
4287    DWORD* pdwStubPhase);
4288HRESULT STDMETHODCALLTYPE IActiveIMMIME_GetVirtualKey_Proxy(
4289    IActiveIMMIME* This,
4290    HWND hWnd,
4291    UINT *puVirtualKey);
4292void __RPC_STUB IActiveIMMIME_GetVirtualKey_Stub(
4293    IRpcStubBuffer* This,
4294    IRpcChannelBuffer* pRpcChannelBuffer,
4295    PRPC_MESSAGE pRpcMessage,
4296    DWORD* pdwStubPhase);
4297HRESULT STDMETHODCALLTYPE IActiveIMMIME_InstallIMEA_Proxy(
4298    IActiveIMMIME* This,
4299    LPSTR szIMEFileName,
4300    LPSTR szLayoutText,
4301    HKL *phKL);
4302void __RPC_STUB IActiveIMMIME_InstallIMEA_Stub(
4303    IRpcStubBuffer* This,
4304    IRpcChannelBuffer* pRpcChannelBuffer,
4305    PRPC_MESSAGE pRpcMessage,
4306    DWORD* pdwStubPhase);
4307HRESULT STDMETHODCALLTYPE IActiveIMMIME_InstallIMEW_Proxy(
4308    IActiveIMMIME* This,
4309    LPWSTR szIMEFileName,
4310    LPWSTR szLayoutText,
4311    HKL *phKL);
4312void __RPC_STUB IActiveIMMIME_InstallIMEW_Stub(
4313    IRpcStubBuffer* This,
4314    IRpcChannelBuffer* pRpcChannelBuffer,
4315    PRPC_MESSAGE pRpcMessage,
4316    DWORD* pdwStubPhase);
4317HRESULT STDMETHODCALLTYPE IActiveIMMIME_IsIME_Proxy(
4318    IActiveIMMIME* This,
4319    HKL hKL);
4320void __RPC_STUB IActiveIMMIME_IsIME_Stub(
4321    IRpcStubBuffer* This,
4322    IRpcChannelBuffer* pRpcChannelBuffer,
4323    PRPC_MESSAGE pRpcMessage,
4324    DWORD* pdwStubPhase);
4325HRESULT STDMETHODCALLTYPE IActiveIMMIME_IsUIMessageA_Proxy(
4326    IActiveIMMIME* This,
4327    HWND hWndIME,
4328    UINT msg,
4329    WPARAM wParam,
4330    LPARAM lParam);
4331void __RPC_STUB IActiveIMMIME_IsUIMessageA_Stub(
4332    IRpcStubBuffer* This,
4333    IRpcChannelBuffer* pRpcChannelBuffer,
4334    PRPC_MESSAGE pRpcMessage,
4335    DWORD* pdwStubPhase);
4336HRESULT STDMETHODCALLTYPE IActiveIMMIME_IsUIMessageW_Proxy(
4337    IActiveIMMIME* This,
4338    HWND hWndIME,
4339    UINT msg,
4340    WPARAM wParam,
4341    LPARAM lParam);
4342void __RPC_STUB IActiveIMMIME_IsUIMessageW_Stub(
4343    IRpcStubBuffer* This,
4344    IRpcChannelBuffer* pRpcChannelBuffer,
4345    PRPC_MESSAGE pRpcMessage,
4346    DWORD* pdwStubPhase);
4347HRESULT STDMETHODCALLTYPE IActiveIMMIME_NotifyIME_Proxy(
4348    IActiveIMMIME* This,
4349    HIMC hIMC,
4350    DWORD dwAction,
4351    DWORD dwIndex,
4352    DWORD dwValue);
4353void __RPC_STUB IActiveIMMIME_NotifyIME_Stub(
4354    IRpcStubBuffer* This,
4355    IRpcChannelBuffer* pRpcChannelBuffer,
4356    PRPC_MESSAGE pRpcMessage,
4357    DWORD* pdwStubPhase);
4358HRESULT STDMETHODCALLTYPE IActiveIMMIME_RegisterWordA_Proxy(
4359    IActiveIMMIME* This,
4360    HKL hKL,
4361    LPSTR szReading,
4362    DWORD dwStyle,
4363    LPSTR szRegister);
4364void __RPC_STUB IActiveIMMIME_RegisterWordA_Stub(
4365    IRpcStubBuffer* This,
4366    IRpcChannelBuffer* pRpcChannelBuffer,
4367    PRPC_MESSAGE pRpcMessage,
4368    DWORD* pdwStubPhase);
4369HRESULT STDMETHODCALLTYPE IActiveIMMIME_RegisterWordW_Proxy(
4370    IActiveIMMIME* This,
4371    HKL hKL,
4372    LPWSTR szReading,
4373    DWORD dwStyle,
4374    LPWSTR szRegister);
4375void __RPC_STUB IActiveIMMIME_RegisterWordW_Stub(
4376    IRpcStubBuffer* This,
4377    IRpcChannelBuffer* pRpcChannelBuffer,
4378    PRPC_MESSAGE pRpcMessage,
4379    DWORD* pdwStubPhase);
4380HRESULT STDMETHODCALLTYPE IActiveIMMIME_ReleaseContext_Proxy(
4381    IActiveIMMIME* This,
4382    HWND hWnd,
4383    HIMC hIMC);
4384void __RPC_STUB IActiveIMMIME_ReleaseContext_Stub(
4385    IRpcStubBuffer* This,
4386    IRpcChannelBuffer* pRpcChannelBuffer,
4387    PRPC_MESSAGE pRpcMessage,
4388    DWORD* pdwStubPhase);
4389HRESULT STDMETHODCALLTYPE IActiveIMMIME_SetCandidateWindow_Proxy(
4390    IActiveIMMIME* This,
4391    HIMC hIMC,
4392    CANDIDATEFORM *pCandidate);
4393void __RPC_STUB IActiveIMMIME_SetCandidateWindow_Stub(
4394    IRpcStubBuffer* This,
4395    IRpcChannelBuffer* pRpcChannelBuffer,
4396    PRPC_MESSAGE pRpcMessage,
4397    DWORD* pdwStubPhase);
4398HRESULT STDMETHODCALLTYPE IActiveIMMIME_SetCompositionFontA_Proxy(
4399    IActiveIMMIME* This,
4400    HIMC hIMC,
4401    LOGFONTA *plf);
4402void __RPC_STUB IActiveIMMIME_SetCompositionFontA_Stub(
4403    IRpcStubBuffer* This,
4404    IRpcChannelBuffer* pRpcChannelBuffer,
4405    PRPC_MESSAGE pRpcMessage,
4406    DWORD* pdwStubPhase);
4407HRESULT STDMETHODCALLTYPE IActiveIMMIME_SetCompositionFontW_Proxy(
4408    IActiveIMMIME* This,
4409    HIMC hIMC,
4410    LOGFONTW *plf);
4411void __RPC_STUB IActiveIMMIME_SetCompositionFontW_Stub(
4412    IRpcStubBuffer* This,
4413    IRpcChannelBuffer* pRpcChannelBuffer,
4414    PRPC_MESSAGE pRpcMessage,
4415    DWORD* pdwStubPhase);
4416HRESULT 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);
4424void __RPC_STUB IActiveIMMIME_SetCompositionStringA_Stub(
4425    IRpcStubBuffer* This,
4426    IRpcChannelBuffer* pRpcChannelBuffer,
4427    PRPC_MESSAGE pRpcMessage,
4428    DWORD* pdwStubPhase);
4429HRESULT 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);
4437void __RPC_STUB IActiveIMMIME_SetCompositionStringW_Stub(
4438    IRpcStubBuffer* This,
4439    IRpcChannelBuffer* pRpcChannelBuffer,
4440    PRPC_MESSAGE pRpcMessage,
4441    DWORD* pdwStubPhase);
4442HRESULT STDMETHODCALLTYPE IActiveIMMIME_SetCompositionWindow_Proxy(
4443    IActiveIMMIME* This,
4444    HIMC hIMC,
4445    COMPOSITIONFORM *pCompForm);
4446void __RPC_STUB IActiveIMMIME_SetCompositionWindow_Stub(
4447    IRpcStubBuffer* This,
4448    IRpcChannelBuffer* pRpcChannelBuffer,
4449    PRPC_MESSAGE pRpcMessage,
4450    DWORD* pdwStubPhase);
4451HRESULT STDMETHODCALLTYPE IActiveIMMIME_SetConversionStatus_Proxy(
4452    IActiveIMMIME* This,
4453    HIMC hIMC,
4454    DWORD fdwConversion,
4455    DWORD fdwSentence);
4456void __RPC_STUB IActiveIMMIME_SetConversionStatus_Stub(
4457    IRpcStubBuffer* This,
4458    IRpcChannelBuffer* pRpcChannelBuffer,
4459    PRPC_MESSAGE pRpcMessage,
4460    DWORD* pdwStubPhase);
4461HRESULT STDMETHODCALLTYPE IActiveIMMIME_SetOpenStatus_Proxy(
4462    IActiveIMMIME* This,
4463    HIMC hIMC,
4464    WINBOOL fOpen);
4465void __RPC_STUB IActiveIMMIME_SetOpenStatus_Stub(
4466    IRpcStubBuffer* This,
4467    IRpcChannelBuffer* pRpcChannelBuffer,
4468    PRPC_MESSAGE pRpcMessage,
4469    DWORD* pdwStubPhase);
4470HRESULT STDMETHODCALLTYPE IActiveIMMIME_SetStatusWindowPos_Proxy(
4471    IActiveIMMIME* This,
4472    HIMC hIMC,
4473    POINT *pptPos);
4474void __RPC_STUB IActiveIMMIME_SetStatusWindowPos_Stub(
4475    IRpcStubBuffer* This,
4476    IRpcChannelBuffer* pRpcChannelBuffer,
4477    PRPC_MESSAGE pRpcMessage,
4478    DWORD* pdwStubPhase);
4479HRESULT STDMETHODCALLTYPE IActiveIMMIME_SimulateHotKey_Proxy(
4480    IActiveIMMIME* This,
4481    HWND hWnd,
4482    DWORD dwHotKeyID);
4483void __RPC_STUB IActiveIMMIME_SimulateHotKey_Stub(
4484    IRpcStubBuffer* This,
4485    IRpcChannelBuffer* pRpcChannelBuffer,
4486    PRPC_MESSAGE pRpcMessage,
4487    DWORD* pdwStubPhase);
4488HRESULT STDMETHODCALLTYPE IActiveIMMIME_UnregisterWordA_Proxy(
4489    IActiveIMMIME* This,
4490    HKL hKL,
4491    LPSTR szReading,
4492    DWORD dwStyle,
4493    LPSTR szUnregister);
4494void __RPC_STUB IActiveIMMIME_UnregisterWordA_Stub(
4495    IRpcStubBuffer* This,
4496    IRpcChannelBuffer* pRpcChannelBuffer,
4497    PRPC_MESSAGE pRpcMessage,
4498    DWORD* pdwStubPhase);
4499HRESULT STDMETHODCALLTYPE IActiveIMMIME_UnregisterWordW_Proxy(
4500    IActiveIMMIME* This,
4501    HKL hKL,
4502    LPWSTR szReading,
4503    DWORD dwStyle,
4504    LPWSTR szUnregister);
4505void __RPC_STUB IActiveIMMIME_UnregisterWordW_Stub(
4506    IRpcStubBuffer* This,
4507    IRpcChannelBuffer* pRpcChannelBuffer,
4508    PRPC_MESSAGE pRpcMessage,
4509    DWORD* pdwStubPhase);
4510HRESULT STDMETHODCALLTYPE IActiveIMMIME_GenerateMessage_Proxy(
4511    IActiveIMMIME* This,
4512    HIMC hIMC);
4513void __RPC_STUB IActiveIMMIME_GenerateMessage_Stub(
4514    IRpcStubBuffer* This,
4515    IRpcChannelBuffer* pRpcChannelBuffer,
4516    PRPC_MESSAGE pRpcMessage,
4517    DWORD* pdwStubPhase);
4518HRESULT STDMETHODCALLTYPE IActiveIMMIME_LockIMC_Proxy(
4519    IActiveIMMIME* This,
4520    HIMC hIMC,
4521    INPUTCONTEXT **ppIMC);
4522void __RPC_STUB IActiveIMMIME_LockIMC_Stub(
4523    IRpcStubBuffer* This,
4524    IRpcChannelBuffer* pRpcChannelBuffer,
4525    PRPC_MESSAGE pRpcMessage,
4526    DWORD* pdwStubPhase);
4527HRESULT STDMETHODCALLTYPE IActiveIMMIME_UnlockIMC_Proxy(
4528    IActiveIMMIME* This,
4529    HIMC hIMC);
4530void __RPC_STUB IActiveIMMIME_UnlockIMC_Stub(
4531    IRpcStubBuffer* This,
4532    IRpcChannelBuffer* pRpcChannelBuffer,
4533    PRPC_MESSAGE pRpcMessage,
4534    DWORD* pdwStubPhase);
4535HRESULT STDMETHODCALLTYPE IActiveIMMIME_GetIMCLockCount_Proxy(
4536    IActiveIMMIME* This,
4537    HIMC hIMC,
4538    DWORD *pdwLockCount);
4539void __RPC_STUB IActiveIMMIME_GetIMCLockCount_Stub(
4540    IRpcStubBuffer* This,
4541    IRpcChannelBuffer* pRpcChannelBuffer,
4542    PRPC_MESSAGE pRpcMessage,
4543    DWORD* pdwStubPhase);
4544HRESULT STDMETHODCALLTYPE IActiveIMMIME_CreateIMCC_Proxy(
4545    IActiveIMMIME* This,
4546    DWORD dwSize,
4547    HIMCC *phIMCC);
4548void __RPC_STUB IActiveIMMIME_CreateIMCC_Stub(
4549    IRpcStubBuffer* This,
4550    IRpcChannelBuffer* pRpcChannelBuffer,
4551    PRPC_MESSAGE pRpcMessage,
4552    DWORD* pdwStubPhase);
4553HRESULT STDMETHODCALLTYPE IActiveIMMIME_DestroyIMCC_Proxy(
4554    IActiveIMMIME* This,
4555    HIMCC hIMCC);
4556void __RPC_STUB IActiveIMMIME_DestroyIMCC_Stub(
4557    IRpcStubBuffer* This,
4558    IRpcChannelBuffer* pRpcChannelBuffer,
4559    PRPC_MESSAGE pRpcMessage,
4560    DWORD* pdwStubPhase);
4561HRESULT STDMETHODCALLTYPE IActiveIMMIME_LockIMCC_Proxy(
4562    IActiveIMMIME* This,
4563    HIMCC hIMCC,
4564    void **ppv);
4565void __RPC_STUB IActiveIMMIME_LockIMCC_Stub(
4566    IRpcStubBuffer* This,
4567    IRpcChannelBuffer* pRpcChannelBuffer,
4568    PRPC_MESSAGE pRpcMessage,
4569    DWORD* pdwStubPhase);
4570HRESULT STDMETHODCALLTYPE IActiveIMMIME_UnlockIMCC_Proxy(
4571    IActiveIMMIME* This,
4572    HIMCC hIMCC);
4573void __RPC_STUB IActiveIMMIME_UnlockIMCC_Stub(
4574    IRpcStubBuffer* This,
4575    IRpcChannelBuffer* pRpcChannelBuffer,
4576    PRPC_MESSAGE pRpcMessage,
4577    DWORD* pdwStubPhase);
4578HRESULT STDMETHODCALLTYPE IActiveIMMIME_ReSizeIMCC_Proxy(
4579    IActiveIMMIME* This,
4580    HIMCC hIMCC,
4581    DWORD dwSize,
4582    HIMCC *phIMCC);
4583void __RPC_STUB IActiveIMMIME_ReSizeIMCC_Stub(
4584    IRpcStubBuffer* This,
4585    IRpcChannelBuffer* pRpcChannelBuffer,
4586    PRPC_MESSAGE pRpcMessage,
4587    DWORD* pdwStubPhase);
4588HRESULT STDMETHODCALLTYPE IActiveIMMIME_GetIMCCSize_Proxy(
4589    IActiveIMMIME* This,
4590    HIMCC hIMCC,
4591    DWORD *pdwSize);
4592void __RPC_STUB IActiveIMMIME_GetIMCCSize_Stub(
4593    IRpcStubBuffer* This,
4594    IRpcChannelBuffer* pRpcChannelBuffer,
4595    PRPC_MESSAGE pRpcMessage,
4596    DWORD* pdwStubPhase);
4597HRESULT STDMETHODCALLTYPE IActiveIMMIME_GetIMCCLockCount_Proxy(
4598    IActiveIMMIME* This,
4599    HIMCC hIMCC,
4600    DWORD *pdwLockCount);
4601void __RPC_STUB IActiveIMMIME_GetIMCCLockCount_Stub(
4602    IRpcStubBuffer* This,
4603    IRpcChannelBuffer* pRpcChannelBuffer,
4604    PRPC_MESSAGE pRpcMessage,
4605    DWORD* pdwStubPhase);
4606HRESULT STDMETHODCALLTYPE IActiveIMMIME_GetHotKey_Proxy(
4607    IActiveIMMIME* This,
4608    DWORD dwHotKeyID,
4609    UINT *puModifiers,
4610    UINT *puVKey,
4611    HKL *phKL);
4612void __RPC_STUB IActiveIMMIME_GetHotKey_Stub(
4613    IRpcStubBuffer* This,
4614    IRpcChannelBuffer* pRpcChannelBuffer,
4615    PRPC_MESSAGE pRpcMessage,
4616    DWORD* pdwStubPhase);
4617HRESULT STDMETHODCALLTYPE IActiveIMMIME_SetHotKey_Proxy(
4618    IActiveIMMIME* This,
4619    DWORD dwHotKeyID,
4620    UINT uModifiers,
4621    UINT uVKey,
4622    HKL hKL);
4623void __RPC_STUB IActiveIMMIME_SetHotKey_Stub(
4624    IRpcStubBuffer* This,
4625    IRpcChannelBuffer* pRpcChannelBuffer,
4626    PRPC_MESSAGE pRpcMessage,
4627    DWORD* pdwStubPhase);
4628HRESULT STDMETHODCALLTYPE IActiveIMMIME_CreateSoftKeyboard_Proxy(
4629    IActiveIMMIME* This,
4630    UINT uType,
4631    HWND hOwner,
4632    int x,
4633    int y,
4634    HWND *phSoftKbdWnd);
4635void __RPC_STUB IActiveIMMIME_CreateSoftKeyboard_Stub(
4636    IRpcStubBuffer* This,
4637    IRpcChannelBuffer* pRpcChannelBuffer,
4638    PRPC_MESSAGE pRpcMessage,
4639    DWORD* pdwStubPhase);
4640HRESULT STDMETHODCALLTYPE IActiveIMMIME_DestroySoftKeyboard_Proxy(
4641    IActiveIMMIME* This,
4642    HWND hSoftKbdWnd);
4643void __RPC_STUB IActiveIMMIME_DestroySoftKeyboard_Stub(
4644    IRpcStubBuffer* This,
4645    IRpcChannelBuffer* pRpcChannelBuffer,
4646    PRPC_MESSAGE pRpcMessage,
4647    DWORD* pdwStubPhase);
4648HRESULT STDMETHODCALLTYPE IActiveIMMIME_ShowSoftKeyboard_Proxy(
4649    IActiveIMMIME* This,
4650    HWND hSoftKbdWnd,
4651    int nCmdShow);
4652void __RPC_STUB IActiveIMMIME_ShowSoftKeyboard_Stub(
4653    IRpcStubBuffer* This,
4654    IRpcChannelBuffer* pRpcChannelBuffer,
4655    PRPC_MESSAGE pRpcMessage,
4656    DWORD* pdwStubPhase);
4657HRESULT STDMETHODCALLTYPE IActiveIMMIME_GetCodePageA_Proxy(
4658    IActiveIMMIME* This,
4659    HKL hKL,
4660    UINT *uCodePage);
4661void __RPC_STUB IActiveIMMIME_GetCodePageA_Stub(
4662    IRpcStubBuffer* This,
4663    IRpcChannelBuffer* pRpcChannelBuffer,
4664    PRPC_MESSAGE pRpcMessage,
4665    DWORD* pdwStubPhase);
4666HRESULT STDMETHODCALLTYPE IActiveIMMIME_GetLangId_Proxy(
4667    IActiveIMMIME* This,
4668    HKL hKL,
4669    LANGID *plid);
4670void __RPC_STUB IActiveIMMIME_GetLangId_Stub(
4671    IRpcStubBuffer* This,
4672    IRpcChannelBuffer* pRpcChannelBuffer,
4673    PRPC_MESSAGE pRpcMessage,
4674    DWORD* pdwStubPhase);
4675HRESULT STDMETHODCALLTYPE IActiveIMMIME_KeybdEvent_Proxy(
4676    IActiveIMMIME* This,
4677    LANGID lgidIME,
4678    BYTE bVk,
4679    BYTE bScan,
4680    DWORD dwFlags,
4681    DWORD dwExtraInfo);
4682void __RPC_STUB IActiveIMMIME_KeybdEvent_Stub(
4683    IRpcStubBuffer* This,
4684    IRpcChannelBuffer* pRpcChannelBuffer,
4685    PRPC_MESSAGE pRpcMessage,
4686    DWORD* pdwStubPhase);
4687HRESULT STDMETHODCALLTYPE IActiveIMMIME_LockModal_Proxy(
4688    IActiveIMMIME* This);
4689void __RPC_STUB IActiveIMMIME_LockModal_Stub(
4690    IRpcStubBuffer* This,
4691    IRpcChannelBuffer* pRpcChannelBuffer,
4692    PRPC_MESSAGE pRpcMessage,
4693    DWORD* pdwStubPhase);
4694HRESULT STDMETHODCALLTYPE IActiveIMMIME_UnlockModal_Proxy(
4695    IActiveIMMIME* This);
4696void __RPC_STUB IActiveIMMIME_UnlockModal_Stub(
4697    IRpcStubBuffer* This,
4698    IRpcChannelBuffer* pRpcChannelBuffer,
4699    PRPC_MESSAGE pRpcMessage,
4700    DWORD* pdwStubPhase);
4701HRESULT STDMETHODCALLTYPE IActiveIMMIME_AssociateContextEx_Proxy(
4702    IActiveIMMIME* This,
4703    HWND hWnd,
4704    HIMC hIMC,
4705    DWORD dwFlags);
4706void __RPC_STUB IActiveIMMIME_AssociateContextEx_Stub(
4707    IRpcStubBuffer* This,
4708    IRpcChannelBuffer* pRpcChannelBuffer,
4709    PRPC_MESSAGE pRpcMessage,
4710    DWORD* pdwStubPhase);
4711HRESULT STDMETHODCALLTYPE IActiveIMMIME_DisableIME_Proxy(
4712    IActiveIMMIME* This,
4713    DWORD idThread);
4714void __RPC_STUB IActiveIMMIME_DisableIME_Stub(
4715    IRpcStubBuffer* This,
4716    IRpcChannelBuffer* pRpcChannelBuffer,
4717    PRPC_MESSAGE pRpcMessage,
4718    DWORD* pdwStubPhase);
4719HRESULT 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);
4728void __RPC_STUB IActiveIMMIME_GetImeMenuItemsA_Stub(
4729    IRpcStubBuffer* This,
4730    IRpcChannelBuffer* pRpcChannelBuffer,
4731    PRPC_MESSAGE pRpcMessage,
4732    DWORD* pdwStubPhase);
4733HRESULT 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);
4742void __RPC_STUB IActiveIMMIME_GetImeMenuItemsW_Stub(
4743    IRpcStubBuffer* This,
4744    IRpcChannelBuffer* pRpcChannelBuffer,
4745    PRPC_MESSAGE pRpcMessage,
4746    DWORD* pdwStubPhase);
4747HRESULT STDMETHODCALLTYPE IActiveIMMIME_EnumInputContext_Proxy(
4748    IActiveIMMIME* This,
4749    DWORD idThread,
4750    IEnumInputContext **ppEnum);
4751void __RPC_STUB IActiveIMMIME_EnumInputContext_Stub(
4752    IRpcStubBuffer* This,
4753    IRpcChannelBuffer* pRpcChannelBuffer,
4754    PRPC_MESSAGE pRpcMessage,
4755    DWORD* pdwStubPhase);
4756HRESULT STDMETHODCALLTYPE IActiveIMMIME_RequestMessageA_Proxy(
4757    IActiveIMMIME* This,
4758    HIMC hIMC,
4759    WPARAM wParam,
4760    LPARAM lParam,
4761    LRESULT *plResult);
4762void __RPC_STUB IActiveIMMIME_RequestMessageA_Stub(
4763    IRpcStubBuffer* This,
4764    IRpcChannelBuffer* pRpcChannelBuffer,
4765    PRPC_MESSAGE pRpcMessage,
4766    DWORD* pdwStubPhase);
4767HRESULT STDMETHODCALLTYPE IActiveIMMIME_RequestMessageW_Proxy(
4768    IActiveIMMIME* This,
4769    HIMC hIMC,
4770    WPARAM wParam,
4771    LPARAM lParam,
4772    LRESULT *plResult);
4773void __RPC_STUB IActiveIMMIME_RequestMessageW_Stub(
4774    IRpcStubBuffer* This,
4775    IRpcChannelBuffer* pRpcChannelBuffer,
4776    PRPC_MESSAGE pRpcMessage,
4777    DWORD* pdwStubPhase);
4778HRESULT STDMETHODCALLTYPE IActiveIMMIME_SendIMCA_Proxy(
4779    IActiveIMMIME* This,
4780    HWND hWnd,
4781    UINT uMsg,
4782    WPARAM wParam,
4783    LPARAM lParam,
4784    LRESULT *plResult);
4785void __RPC_STUB IActiveIMMIME_SendIMCA_Stub(
4786    IRpcStubBuffer* This,
4787    IRpcChannelBuffer* pRpcChannelBuffer,
4788    PRPC_MESSAGE pRpcMessage,
4789    DWORD* pdwStubPhase);
4790HRESULT STDMETHODCALLTYPE IActiveIMMIME_SendIMCW_Proxy(
4791    IActiveIMMIME* This,
4792    HWND hWnd,
4793    UINT uMsg,
4794    WPARAM wParam,
4795    LPARAM lParam,
4796    LRESULT *plResult);
4797void __RPC_STUB IActiveIMMIME_SendIMCW_Stub(
4798    IRpcStubBuffer* This,
4799    IRpcChannelBuffer* pRpcChannelBuffer,
4800    PRPC_MESSAGE pRpcMessage,
4801    DWORD* pdwStubPhase);
4802HRESULT STDMETHODCALLTYPE IActiveIMMIME_IsSleeping_Proxy(
4803    IActiveIMMIME* This);
4804void __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
4818DEFINE_GUID(IID_IActiveIME, 0x6fe20962, 0xd077, 0x11d0, 0x8f,0xe7, 0x00,0xaa,0x00,0x6b,0xcc,0x59);
4819#if defined(__cplusplus) && !defined(CINTERFACE)
4820MIDL_INTERFACE("6fe20962-d077-11d0-8fe7-00aa006bcc59")
4821IActiveIME : 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
4922typedef 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;
5051interface 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 ***/
5081static FORCEINLINE HRESULT IActiveIME_QueryInterface(IActiveIME* This,REFIID riid,void **ppvObject) {
5082    return This->lpVtbl->QueryInterface(This,riid,ppvObject);
5083}
5084static FORCEINLINE ULONG IActiveIME_AddRef(IActiveIME* This) {
5085    return This->lpVtbl->AddRef(This);
5086}
5087static FORCEINLINE ULONG IActiveIME_Release(IActiveIME* This) {
5088    return This->lpVtbl->Release(This);
5089}
5090/*** IActiveIME methods ***/
5091static 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}
5094static 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}
5097static 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}
5100static FORCEINLINE HRESULT IActiveIME_Destroy(IActiveIME* This,UINT uReserved) {
5101    return This->lpVtbl->Destroy(This,uReserved);
5102}
5103static 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}
5106static FORCEINLINE HRESULT IActiveIME_SetActiveContext(IActiveIME* This,HIMC hIMC,WINBOOL fFlag) {
5107    return This->lpVtbl->SetActiveContext(This,hIMC,fFlag);
5108}
5109static 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}
5112static 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}
5115static FORCEINLINE HRESULT IActiveIME_Select(IActiveIME* This,HIMC hIMC,WINBOOL fSelect) {
5116    return This->lpVtbl->Select(This,hIMC,fSelect);
5117}
5118static 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}
5121static 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}
5124static FORCEINLINE HRESULT IActiveIME_RegisterWord(IActiveIME* This,LPWSTR szReading,DWORD dwStyle,LPWSTR szString) {
5125    return This->lpVtbl->RegisterWord(This,szReading,dwStyle,szString);
5126}
5127static FORCEINLINE HRESULT IActiveIME_UnregisterWord(IActiveIME* This,LPWSTR szReading,DWORD dwStyle,LPWSTR szString) {
5128    return This->lpVtbl->UnregisterWord(This,szReading,dwStyle,szString);
5129}
5130static FORCEINLINE HRESULT IActiveIME_GetRegisterWordStyle(IActiveIME* This,UINT nItem,STYLEBUFW *pStyleBuf,UINT *puBufSize) {
5131    return This->lpVtbl->GetRegisterWordStyle(This,nItem,pStyleBuf,puBufSize);
5132}
5133static 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}
5136static FORCEINLINE HRESULT IActiveIME_GetCodePageA(IActiveIME* This,UINT *uCodePage) {
5137    return This->lpVtbl->GetCodePageA(This,uCodePage);
5138}
5139static FORCEINLINE HRESULT IActiveIME_GetLangId(IActiveIME* This,LANGID *plid) {
5140    return This->lpVtbl->GetLangId(This,plid);
5141}
5142#endif
5143#endif
5144
5145#endif
5146
5147HRESULT STDMETHODCALLTYPE IActiveIME_Inquire_Proxy(
5148    IActiveIME* This,
5149    DWORD dwSystemInfoFlags,
5150    IMEINFO *pIMEInfo,
5151    LPWSTR szWndClass,
5152    DWORD *pdwPrivate);
5153void __RPC_STUB IActiveIME_Inquire_Stub(
5154    IRpcStubBuffer* This,
5155    IRpcChannelBuffer* pRpcChannelBuffer,
5156    PRPC_MESSAGE pRpcMessage,
5157    DWORD* pdwStubPhase);
5158HRESULT 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);
5166void __RPC_STUB IActiveIME_ConversionList_Stub(
5167    IRpcStubBuffer* This,
5168    IRpcChannelBuffer* pRpcChannelBuffer,
5169    PRPC_MESSAGE pRpcMessage,
5170    DWORD* pdwStubPhase);
5171HRESULT STDMETHODCALLTYPE IActiveIME_Configure_Proxy(
5172    IActiveIME* This,
5173    HKL hKL,
5174    HWND hWnd,
5175    DWORD dwMode,
5176    REGISTERWORDW *pRegisterWord);
5177void __RPC_STUB IActiveIME_Configure_Stub(
5178    IRpcStubBuffer* This,
5179    IRpcChannelBuffer* pRpcChannelBuffer,
5180    PRPC_MESSAGE pRpcMessage,
5181    DWORD* pdwStubPhase);
5182HRESULT STDMETHODCALLTYPE IActiveIME_Destroy_Proxy(
5183    IActiveIME* This,
5184    UINT uReserved);
5185void __RPC_STUB IActiveIME_Destroy_Stub(
5186    IRpcStubBuffer* This,
5187    IRpcChannelBuffer* pRpcChannelBuffer,
5188    PRPC_MESSAGE pRpcMessage,
5189    DWORD* pdwStubPhase);
5190HRESULT STDMETHODCALLTYPE IActiveIME_Escape_Proxy(
5191    IActiveIME* This,
5192    HIMC hIMC,
5193    UINT uEscape,
5194    void *pData,
5195    LRESULT *plResult);
5196void __RPC_STUB IActiveIME_Escape_Stub(
5197    IRpcStubBuffer* This,
5198    IRpcChannelBuffer* pRpcChannelBuffer,
5199    PRPC_MESSAGE pRpcMessage,
5200    DWORD* pdwStubPhase);
5201HRESULT STDMETHODCALLTYPE IActiveIME_SetActiveContext_Proxy(
5202    IActiveIME* This,
5203    HIMC hIMC,
5204    WINBOOL fFlag);
5205void __RPC_STUB IActiveIME_SetActiveContext_Stub(
5206    IRpcStubBuffer* This,
5207    IRpcChannelBuffer* pRpcChannelBuffer,
5208    PRPC_MESSAGE pRpcMessage,
5209    DWORD* pdwStubPhase);
5210HRESULT STDMETHODCALLTYPE IActiveIME_ProcessKey_Proxy(
5211    IActiveIME* This,
5212    HIMC hIMC,
5213    UINT uVirKey,
5214    DWORD lParam,
5215    BYTE *pbKeyState);
5216void __RPC_STUB IActiveIME_ProcessKey_Stub(
5217    IRpcStubBuffer* This,
5218    IRpcChannelBuffer* pRpcChannelBuffer,
5219    PRPC_MESSAGE pRpcMessage,
5220    DWORD* pdwStubPhase);
5221HRESULT STDMETHODCALLTYPE IActiveIME_Notify_Proxy(
5222    IActiveIME* This,
5223    HIMC hIMC,
5224    DWORD dwAction,
5225    DWORD dwIndex,
5226    DWORD dwValue);
5227void __RPC_STUB IActiveIME_Notify_Stub(
5228    IRpcStubBuffer* This,
5229    IRpcChannelBuffer* pRpcChannelBuffer,
5230    PRPC_MESSAGE pRpcMessage,
5231    DWORD* pdwStubPhase);
5232HRESULT STDMETHODCALLTYPE IActiveIME_Select_Proxy(
5233    IActiveIME* This,
5234    HIMC hIMC,
5235    WINBOOL fSelect);
5236void __RPC_STUB IActiveIME_Select_Stub(
5237    IRpcStubBuffer* This,
5238    IRpcChannelBuffer* pRpcChannelBuffer,
5239    PRPC_MESSAGE pRpcMessage,
5240    DWORD* pdwStubPhase);
5241HRESULT 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);
5249void __RPC_STUB IActiveIME_SetCompositionString_Stub(
5250    IRpcStubBuffer* This,
5251    IRpcChannelBuffer* pRpcChannelBuffer,
5252    PRPC_MESSAGE pRpcMessage,
5253    DWORD* pdwStubPhase);
5254HRESULT 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);
5263void __RPC_STUB IActiveIME_ToAsciiEx_Stub(
5264    IRpcStubBuffer* This,
5265    IRpcChannelBuffer* pRpcChannelBuffer,
5266    PRPC_MESSAGE pRpcMessage,
5267    DWORD* pdwStubPhase);
5268HRESULT STDMETHODCALLTYPE IActiveIME_RegisterWord_Proxy(
5269    IActiveIME* This,
5270    LPWSTR szReading,
5271    DWORD dwStyle,
5272    LPWSTR szString);
5273void __RPC_STUB IActiveIME_RegisterWord_Stub(
5274    IRpcStubBuffer* This,
5275    IRpcChannelBuffer* pRpcChannelBuffer,
5276    PRPC_MESSAGE pRpcMessage,
5277    DWORD* pdwStubPhase);
5278HRESULT STDMETHODCALLTYPE IActiveIME_UnregisterWord_Proxy(
5279    IActiveIME* This,
5280    LPWSTR szReading,
5281    DWORD dwStyle,
5282    LPWSTR szString);
5283void __RPC_STUB IActiveIME_UnregisterWord_Stub(
5284    IRpcStubBuffer* This,
5285    IRpcChannelBuffer* pRpcChannelBuffer,
5286    PRPC_MESSAGE pRpcMessage,
5287    DWORD* pdwStubPhase);
5288HRESULT STDMETHODCALLTYPE IActiveIME_GetRegisterWordStyle_Proxy(
5289    IActiveIME* This,
5290    UINT nItem,
5291    STYLEBUFW *pStyleBuf,
5292    UINT *puBufSize);
5293void __RPC_STUB IActiveIME_GetRegisterWordStyle_Stub(
5294    IRpcStubBuffer* This,
5295    IRpcChannelBuffer* pRpcChannelBuffer,
5296    PRPC_MESSAGE pRpcMessage,
5297    DWORD* pdwStubPhase);
5298HRESULT STDMETHODCALLTYPE IActiveIME_EnumRegisterWord_Proxy(
5299    IActiveIME* This,
5300    LPWSTR szReading,
5301    DWORD dwStyle,
5302    LPWSTR szRegister,
5303    LPVOID pData,
5304    IEnumRegisterWordW **ppEnum);
5305void __RPC_STUB IActiveIME_EnumRegisterWord_Stub(
5306    IRpcStubBuffer* This,
5307    IRpcChannelBuffer* pRpcChannelBuffer,
5308    PRPC_MESSAGE pRpcMessage,
5309    DWORD* pdwStubPhase);
5310HRESULT STDMETHODCALLTYPE IActiveIME_GetCodePageA_Proxy(
5311    IActiveIME* This,
5312    UINT *uCodePage);
5313void __RPC_STUB IActiveIME_GetCodePageA_Stub(
5314    IRpcStubBuffer* This,
5315    IRpcChannelBuffer* pRpcChannelBuffer,
5316    PRPC_MESSAGE pRpcMessage,
5317    DWORD* pdwStubPhase);
5318HRESULT STDMETHODCALLTYPE IActiveIME_GetLangId_Proxy(
5319    IActiveIME* This,
5320    LANGID *plid);
5321void __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
5335DEFINE_GUID(IID_IActiveIME2, 0xe1c4bf0e, 0x2d53, 0x11d2, 0x93,0xe1, 0x00,0x60,0xb0,0x67,0xb8,0x6e);
5336#if defined(__cplusplus) && !defined(CINTERFACE)
5337MIDL_INTERFACE("e1c4bf0e-2d53-11d2-93e1-0060b067b86e")
5338IActiveIME2 : 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
5351typedef 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;
5488interface 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 ***/
5521static FORCEINLINE HRESULT IActiveIME2_QueryInterface(IActiveIME2* This,REFIID riid,void **ppvObject) {
5522    return This->lpVtbl->QueryInterface(This,riid,ppvObject);
5523}
5524static FORCEINLINE ULONG IActiveIME2_AddRef(IActiveIME2* This) {
5525    return This->lpVtbl->AddRef(This);
5526}
5527static FORCEINLINE ULONG IActiveIME2_Release(IActiveIME2* This) {
5528    return This->lpVtbl->Release(This);
5529}
5530/*** IActiveIME methods ***/
5531static 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}
5534static 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}
5537static 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}
5540static FORCEINLINE HRESULT IActiveIME2_Destroy(IActiveIME2* This,UINT uReserved) {
5541    return This->lpVtbl->Destroy(This,uReserved);
5542}
5543static 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}
5546static FORCEINLINE HRESULT IActiveIME2_SetActiveContext(IActiveIME2* This,HIMC hIMC,WINBOOL fFlag) {
5547    return This->lpVtbl->SetActiveContext(This,hIMC,fFlag);
5548}
5549static 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}
5552static 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}
5555static FORCEINLINE HRESULT IActiveIME2_Select(IActiveIME2* This,HIMC hIMC,WINBOOL fSelect) {
5556    return This->lpVtbl->Select(This,hIMC,fSelect);
5557}
5558static 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}
5561static 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}
5564static FORCEINLINE HRESULT IActiveIME2_RegisterWord(IActiveIME2* This,LPWSTR szReading,DWORD dwStyle,LPWSTR szString) {
5565    return This->lpVtbl->RegisterWord(This,szReading,dwStyle,szString);
5566}
5567static FORCEINLINE HRESULT IActiveIME2_UnregisterWord(IActiveIME2* This,LPWSTR szReading,DWORD dwStyle,LPWSTR szString) {
5568    return This->lpVtbl->UnregisterWord(This,szReading,dwStyle,szString);
5569}
5570static FORCEINLINE HRESULT IActiveIME2_GetRegisterWordStyle(IActiveIME2* This,UINT nItem,STYLEBUFW *pStyleBuf,UINT *puBufSize) {
5571    return This->lpVtbl->GetRegisterWordStyle(This,nItem,pStyleBuf,puBufSize);
5572}
5573static 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}
5576static FORCEINLINE HRESULT IActiveIME2_GetCodePageA(IActiveIME2* This,UINT *uCodePage) {
5577    return This->lpVtbl->GetCodePageA(This,uCodePage);
5578}
5579static FORCEINLINE HRESULT IActiveIME2_GetLangId(IActiveIME2* This,LANGID *plid) {
5580    return This->lpVtbl->GetLangId(This,plid);
5581}
5582/*** IActiveIME2 methods ***/
5583static FORCEINLINE HRESULT IActiveIME2_Sleep(IActiveIME2* This) {
5584    return This->lpVtbl->Sleep(This);
5585}
5586static FORCEINLINE HRESULT IActiveIME2_Unsleep(IActiveIME2* This,WINBOOL fDead) {
5587    return This->lpVtbl->Unsleep(This,fDead);
5588}
5589#endif
5590#endif
5591
5592#endif
5593
5594HRESULT STDMETHODCALLTYPE IActiveIME2_Sleep_Proxy(
5595    IActiveIME2* This);
5596void __RPC_STUB IActiveIME2_Sleep_Stub(
5597    IRpcStubBuffer* This,
5598    IRpcChannelBuffer* pRpcChannelBuffer,
5599    PRPC_MESSAGE pRpcMessage,
5600    DWORD* pdwStubPhase);
5601HRESULT STDMETHODCALLTYPE IActiveIME2_Unsleep_Proxy(
5602    IActiveIME2* This,
5603    WINBOOL fDead);
5604void __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
5618DEFINE_GUID(IID_IEnumRegisterWordA, 0x08c03412, 0xf96b, 0x11d0, 0xa4,0x75, 0x00,0xaa,0x00,0x6b,0xcc,0x59);
5619#if defined(__cplusplus) && !defined(CINTERFACE)
5620MIDL_INTERFACE("08c03412-f96b-11d0-a475-00aa006bcc59")
5621IEnumRegisterWordA : 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
5642typedef 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;
5677interface 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 ***/
5694static FORCEINLINE HRESULT IEnumRegisterWordA_QueryInterface(IEnumRegisterWordA* This,REFIID riid,void **ppvObject) {
5695    return This->lpVtbl->QueryInterface(This,riid,ppvObject);
5696}
5697static FORCEINLINE ULONG IEnumRegisterWordA_AddRef(IEnumRegisterWordA* This) {
5698    return This->lpVtbl->AddRef(This);
5699}
5700static FORCEINLINE ULONG IEnumRegisterWordA_Release(IEnumRegisterWordA* This) {
5701    return This->lpVtbl->Release(This);
5702}
5703/*** IEnumRegisterWordA methods ***/
5704static FORCEINLINE HRESULT IEnumRegisterWordA_Clone(IEnumRegisterWordA* This,IEnumRegisterWordA **ppEnum) {
5705    return This->lpVtbl->Clone(This,ppEnum);
5706}
5707static FORCEINLINE HRESULT IEnumRegisterWordA_Next(IEnumRegisterWordA* This,ULONG ulCount,REGISTERWORDA *rgRegisterWord,ULONG *pcFetched) {
5708    return This->lpVtbl->Next(This,ulCount,rgRegisterWord,pcFetched);
5709}
5710static FORCEINLINE HRESULT IEnumRegisterWordA_Reset(IEnumRegisterWordA* This) {
5711    return This->lpVtbl->Reset(This);
5712}
5713static FORCEINLINE HRESULT IEnumRegisterWordA_Skip(IEnumRegisterWordA* This,ULONG ulCount) {
5714    return This->lpVtbl->Skip(This,ulCount);
5715}
5716#endif
5717#endif
5718
5719#endif
5720
5721HRESULT STDMETHODCALLTYPE IEnumRegisterWordA_Clone_Proxy(
5722    IEnumRegisterWordA* This,
5723    IEnumRegisterWordA **ppEnum);
5724void __RPC_STUB IEnumRegisterWordA_Clone_Stub(
5725    IRpcStubBuffer* This,
5726    IRpcChannelBuffer* pRpcChannelBuffer,
5727    PRPC_MESSAGE pRpcMessage,
5728    DWORD* pdwStubPhase);
5729HRESULT STDMETHODCALLTYPE IEnumRegisterWordA_Next_Proxy(
5730    IEnumRegisterWordA* This,
5731    ULONG ulCount,
5732    REGISTERWORDA *rgRegisterWord,
5733    ULONG *pcFetched);
5734void __RPC_STUB IEnumRegisterWordA_Next_Stub(
5735    IRpcStubBuffer* This,
5736    IRpcChannelBuffer* pRpcChannelBuffer,
5737    PRPC_MESSAGE pRpcMessage,
5738    DWORD* pdwStubPhase);
5739HRESULT STDMETHODCALLTYPE IEnumRegisterWordA_Reset_Proxy(
5740    IEnumRegisterWordA* This);
5741void __RPC_STUB IEnumRegisterWordA_Reset_Stub(
5742    IRpcStubBuffer* This,
5743    IRpcChannelBuffer* pRpcChannelBuffer,
5744    PRPC_MESSAGE pRpcMessage,
5745    DWORD* pdwStubPhase);
5746HRESULT STDMETHODCALLTYPE IEnumRegisterWordA_Skip_Proxy(
5747    IEnumRegisterWordA* This,
5748    ULONG ulCount);
5749void __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
5763DEFINE_GUID(IID_IEnumRegisterWordW, 0x4955dd31, 0xb159, 0x11d0, 0x8f,0xcf, 0x00,0xaa,0x00,0x6b,0xcc,0x59);
5764#if defined(__cplusplus) && !defined(CINTERFACE)
5765MIDL_INTERFACE("4955dd31-b159-11d0-8fcf-00aa006bcc59")
5766IEnumRegisterWordW : 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
5787typedef 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;
5822interface 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 ***/
5839static FORCEINLINE HRESULT IEnumRegisterWordW_QueryInterface(IEnumRegisterWordW* This,REFIID riid,void **ppvObject) {
5840    return This->lpVtbl->QueryInterface(This,riid,ppvObject);
5841}
5842static FORCEINLINE ULONG IEnumRegisterWordW_AddRef(IEnumRegisterWordW* This) {
5843    return This->lpVtbl->AddRef(This);
5844}
5845static FORCEINLINE ULONG IEnumRegisterWordW_Release(IEnumRegisterWordW* This) {
5846    return This->lpVtbl->Release(This);
5847}
5848/*** IEnumRegisterWordW methods ***/
5849static FORCEINLINE HRESULT IEnumRegisterWordW_Clone(IEnumRegisterWordW* This,IEnumRegisterWordW **ppEnum) {
5850    return This->lpVtbl->Clone(This,ppEnum);
5851}
5852static FORCEINLINE HRESULT IEnumRegisterWordW_Next(IEnumRegisterWordW* This,ULONG ulCount,REGISTERWORDW *rgRegisterWord,ULONG *pcFetched) {
5853    return This->lpVtbl->Next(This,ulCount,rgRegisterWord,pcFetched);
5854}
5855static FORCEINLINE HRESULT IEnumRegisterWordW_Reset(IEnumRegisterWordW* This) {
5856    return This->lpVtbl->Reset(This);
5857}
5858static FORCEINLINE HRESULT IEnumRegisterWordW_Skip(IEnumRegisterWordW* This,ULONG ulCount) {
5859    return This->lpVtbl->Skip(This,ulCount);
5860}
5861#endif
5862#endif
5863
5864#endif
5865
5866HRESULT STDMETHODCALLTYPE IEnumRegisterWordW_Clone_Proxy(
5867    IEnumRegisterWordW* This,
5868    IEnumRegisterWordW **ppEnum);
5869void __RPC_STUB IEnumRegisterWordW_Clone_Stub(
5870    IRpcStubBuffer* This,
5871    IRpcChannelBuffer* pRpcChannelBuffer,
5872    PRPC_MESSAGE pRpcMessage,
5873    DWORD* pdwStubPhase);
5874HRESULT STDMETHODCALLTYPE IEnumRegisterWordW_Next_Proxy(
5875    IEnumRegisterWordW* This,
5876    ULONG ulCount,
5877    REGISTERWORDW *rgRegisterWord,
5878    ULONG *pcFetched);
5879void __RPC_STUB IEnumRegisterWordW_Next_Stub(
5880    IRpcStubBuffer* This,
5881    IRpcChannelBuffer* pRpcChannelBuffer,
5882    PRPC_MESSAGE pRpcMessage,
5883    DWORD* pdwStubPhase);
5884HRESULT STDMETHODCALLTYPE IEnumRegisterWordW_Reset_Proxy(
5885    IEnumRegisterWordW* This);
5886void __RPC_STUB IEnumRegisterWordW_Reset_Stub(
5887    IRpcStubBuffer* This,
5888    IRpcChannelBuffer* pRpcChannelBuffer,
5889    PRPC_MESSAGE pRpcMessage,
5890    DWORD* pdwStubPhase);
5891HRESULT STDMETHODCALLTYPE IEnumRegisterWordW_Skip_Proxy(
5892    IEnumRegisterWordW* This,
5893    ULONG ulCount);
5894void __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
5906DEFINE_GUID(CLSID_CActiveIMM, 0x4955dd33, 0xb159, 0x11d0, 0x8f,0xcf, 0x00,0xaa,0x00,0x6b,0xcc,0x59);
5907
5908#ifdef __cplusplus
5909class 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
5918ULONG           __RPC_USER HWND_UserSize     (ULONG *, ULONG, HWND *);
5919unsigned char * __RPC_USER HWND_UserMarshal  (ULONG *, unsigned char *, HWND *);
5920unsigned char * __RPC_USER HWND_UserUnmarshal(ULONG *, unsigned char *, HWND *);
5921void            __RPC_USER HWND_UserFree     (ULONG *, HWND *);
5922ULONG           __RPC_USER HBITMAP_UserSize     (ULONG *, ULONG, HBITMAP *);
5923unsigned char * __RPC_USER HBITMAP_UserMarshal  (ULONG *, unsigned char *, HBITMAP *);
5924unsigned char * __RPC_USER HBITMAP_UserUnmarshal(ULONG *, unsigned char *, HBITMAP *);
5925void            __RPC_USER HBITMAP_UserFree     (ULONG *, HBITMAP *);
5926
5927/* End additional prototypes */
5928
5929#ifdef __cplusplus
5930}
5931#endif
5932
5933#endif /* __dimm_h__ */
5934