在LccWin32中使用Microsoft Agent控件——头文件AgentSvr.h

来源:互联网 发布:程序员去哪里接私活 编辑:程序博客网 时间:2024/04/30 04:14

这是LccWin32自动生成的Microsoft Agent控件的头文件,其中的红色部分是用户必须添加的。

#ifndef __AgentSvr_h_
#define __AgentSvr_h_

// User added
#ifndef INITGUID
#define INITGUID
#endif

#ifndef COBJMACROS
#define COBJMACROS
#endif


#ifndef __RPC_H__
#include "rpc.h"
#endif
#ifndef __RPCNDR_H__
#include "rpcndr.h"
#endif
#include <ole2.h>
#ifndef __unknwn_h__
#include "unknwn.h"
#endif
#ifndef __objidl_h__
#include "objidl.h"
#endif
#ifndef __oaidl_h__
#include "oaidl.h"
#endif
#ifndef __ocidl_h__
#include "ocidl.h"
#endif

DEFINE_GUID(LIBID_AgentSvr, 0xa7b93c73,0x7b81,0x11d0,0xac, 0x5f, 0x0, 0xc0, 0x4f, 0xd9, 0x75, 0x75);
/*
Microsoft Agent Server 2.0
*/

/* forward declares */
struct IAgent;
struct IAgentUserInput;
struct IAgentCommand;
struct IAgentCommandEx;
struct IAgentCommands;
struct IAgentCommandsEx;
struct IAgentSpeechInputProperties;
struct IAgentAudioOutputProperties;
struct IAgentAudioOutputPropertiesEx;
struct IAgentPropertySheet;
struct IAgentBalloon;
struct IAgentBalloonEx;
struct IAgentCharacter;
struct IAgentCharacterEx;
struct IAgentEx;
struct IAgentNotifySink;
struct IAgentNotifySinkEx;
struct IAgentCommandWindow;

DEFINE_GUID(CLSID_AgentServer, 0xd45fd2fc,0x5c6e,0x11d1,0x9e, 0xc1, 0x0, 0xc0, 0x4f, 0xd7, 0x8, 0x1f);

#ifndef LCC_IAgent_DEFINED
#define LCC_IAgent_DEFINED

DEFINE_GUID(IID_IAgent, 0xa7b93c91,0x7b81,0x11d0,0xac, 0x5f, 0x0, 0xc0, 0x4f, 0xd9, 0x75, 0x75);

typedef interface IAgent IAgent;

#undef INTERFACE
#define INTERFACE IAgent

DECLARE_INTERFACE_(INTERFACE, IDispatch)
{
 HRESULT (STDMETHODCALLTYPE *QueryInterface)(IAgent *This, GUID* riid, void** ppvObj);
 ULONG (STDMETHODCALLTYPE *AddRef)(IAgent *This);
 ULONG (STDMETHODCALLTYPE *Release)(IAgent *This);
 HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(IAgent *This, UINT* pctinfo);
 HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(IAgent *This, UINT itinfo, ULONG lcid, void** pptinfo);
 HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(IAgent *This, GUID* riid, char** rgszNames, UINT cNames, ULONG lcid, LONG* rgdispid);
 HRESULT (STDMETHODCALLTYPE *Invoke)(IAgent *This, LONG dispidMember, GUID* riid, ULONG lcid, USHORT wFlags, DISPPARAMS* pdispparams, VARIANT* pvarResult, EXCEPINFO* pexcepinfo, UINT* puArgErr);
 HRESULT (STDMETHODCALLTYPE *Load)(IAgent *This, VARIANT vLoadKey, LONG* pdwCharID, LONG* pdwReqID);
 HRESULT (STDMETHODCALLTYPE *Unload)(IAgent *This, LONG dwCharID);
 HRESULT (STDMETHODCALLTYPE *Register)(IAgent *This, IUnknown* punkNotifySink, LONG* pdwSinkID);
 HRESULT (STDMETHODCALLTYPE *Unregister)(IAgent *This, LONG dwSinkID);
 HRESULT (STDMETHODCALLTYPE *GetCharacter)(IAgent *This, LONG dwCharID, IDispatch** ppunkCharacter);
 HRESULT (STDMETHODCALLTYPE *GetSuspended)(IAgent *This, LONG* pbSuspended);
};

#define IAgent_QueryInterface(ip, p1, p2) (ip)->lpVtbl->QueryInterface(ip, p1, p2)
#define IAgent_AddRef(ip) (ip)->lpVtbl->AddRef(ip)
#define IAgent_Release(ip) (ip)->lpVtbl->Release(ip)
#define IAgent_GetTypeInfoCount(ip, p1) (ip)->lpVtbl->GetTypeInfoCount(ip, p1)
#define IAgent_GetTypeInfo(ip, p1, p2, p3) (ip)->lpVtbl->GetTypeInfo(ip, p1, p2, p3)
#define IAgent_GetIDsOfNames(ip, p1, p2, p3, p4, p5) (ip)->lpVtbl->GetIDsOfNames(ip, p1, p2, p3, p4, p5)
#define IAgent_Invoke(ip, p1, p2, p3, p4, p5, p6, p7, p8) (ip)->lpVtbl->Invoke(ip, p1, p2, p3, p4, p5, p6, p7, p8)
#define IAgent_Load(ip, p1, p2, p3) (ip)->lpVtbl->Load(ip, p1, p2, p3)
#define IAgent_Unload(ip, p1) (ip)->lpVtbl->Unload(ip, p1)
#define IAgent_Register(ip, p1, p2) (ip)->lpVtbl->Register(ip, p1, p2)
#define IAgent_Unregister(ip, p1) (ip)->lpVtbl->Unregister(ip, p1)
#define IAgent_GetCharacter(ip, p1, p2) (ip)->lpVtbl->GetCharacter(ip, p1, p2)
#define IAgent_GetSuspended(ip, p1) (ip)->lpVtbl->GetSuspended(ip, p1)

#endif // LCC_IAgent_DEFINED

#ifndef LCC_IAgentUserInput_DEFINED
#define LCC_IAgentUserInput_DEFINED

DEFINE_GUID(IID_IAgentUserInput, 0xa7b93c80,0x7b81,0x11d0,0xac, 0x5f, 0x0, 0xc0, 0x4f, 0xd9, 0x75, 0x75);

typedef interface IAgentUserInput IAgentUserInput;

#undef INTERFACE
#define INTERFACE IAgentUserInput

DECLARE_INTERFACE_(INTERFACE, IDispatch)
{
 HRESULT (STDMETHODCALLTYPE *QueryInterface)(IAgentUserInput *This, GUID* riid, void** ppvObj);
 ULONG (STDMETHODCALLTYPE *AddRef)(IAgentUserInput *This);
 ULONG (STDMETHODCALLTYPE *Release)(IAgentUserInput *This);
 HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(IAgentUserInput *This, UINT* pctinfo);
 HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(IAgentUserInput *This, UINT itinfo, ULONG lcid, void** pptinfo);
 HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(IAgentUserInput *This, GUID* riid, char** rgszNames, UINT cNames, ULONG lcid, LONG* rgdispid);
 HRESULT (STDMETHODCALLTYPE *Invoke)(IAgentUserInput *This, LONG dispidMember, GUID* riid, ULONG lcid, USHORT wFlags, DISPPARAMS* pdispparams, VARIANT* pvarResult, EXCEPINFO* pexcepinfo, UINT* puArgErr);
 HRESULT (STDMETHODCALLTYPE *GetCount)(IAgentUserInput *This, LONG* pdwCount);
 HRESULT (STDMETHODCALLTYPE *GetItemID)(IAgentUserInput *This, LONG dwItemIndex, LONG* pdwCommandID);
 HRESULT (STDMETHODCALLTYPE *GetItemConfidence)(IAgentUserInput *This, LONG dwItemIndex, LONG* plConfidence);
 HRESULT (STDMETHODCALLTYPE *GetItemText)(IAgentUserInput *This, LONG dwItemIndex, BSTR* pbszText);
 HRESULT (STDMETHODCALLTYPE *GetAllItemData)(IAgentUserInput *This, VARIANT* pdwItemIndices, VARIANT* plConfidences, VARIANT* pbszText);
};

#define IAgentUserInput_QueryInterface(ip, p1, p2) (ip)->lpVtbl->QueryInterface(ip, p1, p2)
#define IAgentUserInput_AddRef(ip) (ip)->lpVtbl->AddRef(ip)
#define IAgentUserInput_Release(ip) (ip)->lpVtbl->Release(ip)
#define IAgentUserInput_GetTypeInfoCount(ip, p1) (ip)->lpVtbl->GetTypeInfoCount(ip, p1)
#define IAgentUserInput_GetTypeInfo(ip, p1, p2, p3) (ip)->lpVtbl->GetTypeInfo(ip, p1, p2, p3)
#define IAgentUserInput_GetIDsOfNames(ip, p1, p2, p3, p4, p5) (ip)->lpVtbl->GetIDsOfNames(ip, p1, p2, p3, p4, p5)
#define IAgentUserInput_Invoke(ip, p1, p2, p3, p4, p5, p6, p7, p8) (ip)->lpVtbl->Invoke(ip, p1, p2, p3, p4, p5, p6, p7, p8)
#define IAgentUserInput_GetCount(ip, p1) (ip)->lpVtbl->GetCount(ip, p1)
#define IAgentUserInput_GetItemID(ip, p1, p2) (ip)->lpVtbl->GetItemID(ip, p1, p2)
#define IAgentUserInput_GetItemConfidence(ip, p1, p2) (ip)->lpVtbl->GetItemConfidence(ip, p1, p2)
#define IAgentUserInput_GetItemText(ip, p1, p2) (ip)->lpVtbl->GetItemText(ip, p1, p2)
#define IAgentUserInput_GetAllItemData(ip, p1, p2, p3) (ip)->lpVtbl->GetAllItemData(ip, p1, p2, p3)

#endif // LCC_IAgentUserInput_DEFINED

#ifndef LCC_IAgentCommand_DEFINED
#define LCC_IAgentCommand_DEFINED

DEFINE_GUID(IID_IAgentCommand, 0xa7b93c83,0x7b81,0x11d0,0xac, 0x5f, 0x0, 0xc0, 0x4f, 0xd9, 0x75, 0x75);

typedef interface IAgentCommand IAgentCommand;

#undef INTERFACE
#define INTERFACE IAgentCommand

DECLARE_INTERFACE_(INTERFACE, IDispatch)
{
 HRESULT (STDMETHODCALLTYPE *QueryInterface)(IAgentCommand *This, GUID* riid, void** ppvObj);
 ULONG (STDMETHODCALLTYPE *AddRef)(IAgentCommand *This);
 ULONG (STDMETHODCALLTYPE *Release)(IAgentCommand *This);
 HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(IAgentCommand *This, UINT* pctinfo);
 HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(IAgentCommand *This, UINT itinfo, ULONG lcid, void** pptinfo);
 HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(IAgentCommand *This, GUID* riid, char** rgszNames, UINT cNames, ULONG lcid, LONG* rgdispid);
 HRESULT (STDMETHODCALLTYPE *Invoke)(IAgentCommand *This, LONG dispidMember, GUID* riid, ULONG lcid, USHORT wFlags, DISPPARAMS* pdispparams, VARIANT* pvarResult, EXCEPINFO* pexcepinfo, UINT* puArgErr);
 HRESULT (STDMETHODCALLTYPE *SetCaption)(IAgentCommand *This, BSTR bszCaption);
 HRESULT (STDMETHODCALLTYPE *GetCaption)(IAgentCommand *This, BSTR* pbszCaption);
 HRESULT (STDMETHODCALLTYPE *SetVoice)(IAgentCommand *This, BSTR bszVoice);
 HRESULT (STDMETHODCALLTYPE *GetVoice)(IAgentCommand *This, BSTR* pbszVoice);
 HRESULT (STDMETHODCALLTYPE *SetEnabled)(IAgentCommand *This, LONG bEnabled);
 HRESULT (STDMETHODCALLTYPE *GetEnabled)(IAgentCommand *This, LONG* pbEnabled);
 HRESULT (STDMETHODCALLTYPE *SetVisible)(IAgentCommand *This, LONG bVisible);
 HRESULT (STDMETHODCALLTYPE *GetVisible)(IAgentCommand *This, LONG* pbVisible);
 HRESULT (STDMETHODCALLTYPE *SetConfidenceThreshold)(IAgentCommand *This, LONG lThreshold);
 HRESULT (STDMETHODCALLTYPE *GetConfidenceThreshold)(IAgentCommand *This, LONG* plThreshold);
 HRESULT (STDMETHODCALLTYPE *SetConfidenceText)(IAgentCommand *This, BSTR bszTipText);
 HRESULT (STDMETHODCALLTYPE *GetConfidenceText)(IAgentCommand *This, BSTR* pbszTipText);
 HRESULT (STDMETHODCALLTYPE *GetID)(IAgentCommand *This, LONG* pdwID);
};

#define IAgentCommand_QueryInterface(ip, p1, p2) (ip)->lpVtbl->QueryInterface(ip, p1, p2)
#define IAgentCommand_AddRef(ip) (ip)->lpVtbl->AddRef(ip)
#define IAgentCommand_Release(ip) (ip)->lpVtbl->Release(ip)
#define IAgentCommand_GetTypeInfoCount(ip, p1) (ip)->lpVtbl->GetTypeInfoCount(ip, p1)
#define IAgentCommand_GetTypeInfo(ip, p1, p2, p3) (ip)->lpVtbl->GetTypeInfo(ip, p1, p2, p3)
#define IAgentCommand_GetIDsOfNames(ip, p1, p2, p3, p4, p5) (ip)->lpVtbl->GetIDsOfNames(ip, p1, p2, p3, p4, p5)
#define IAgentCommand_Invoke(ip, p1, p2, p3, p4, p5, p6, p7, p8) (ip)->lpVtbl->Invoke(ip, p1, p2, p3, p4, p5, p6, p7, p8)
#define IAgentCommand_SetCaption(ip, p1) (ip)->lpVtbl->SetCaption(ip, p1)
#define IAgentCommand_GetCaption(ip, p1) (ip)->lpVtbl->GetCaption(ip, p1)
#define IAgentCommand_SetVoice(ip, p1) (ip)->lpVtbl->SetVoice(ip, p1)
#define IAgentCommand_GetVoice(ip, p1) (ip)->lpVtbl->GetVoice(ip, p1)
#define IAgentCommand_SetEnabled(ip, p1) (ip)->lpVtbl->SetEnabled(ip, p1)
#define IAgentCommand_GetEnabled(ip, p1) (ip)->lpVtbl->GetEnabled(ip, p1)
#define IAgentCommand_SetVisible(ip, p1) (ip)->lpVtbl->SetVisible(ip, p1)
#define IAgentCommand_GetVisible(ip, p1) (ip)->lpVtbl->GetVisible(ip, p1)
#define IAgentCommand_SetConfidenceThreshold(ip, p1) (ip)->lpVtbl->SetConfidenceThreshold(ip, p1)
#define IAgentCommand_GetConfidenceThreshold(ip, p1) (ip)->lpVtbl->GetConfidenceThreshold(ip, p1)
#define IAgentCommand_SetConfidenceText(ip, p1) (ip)->lpVtbl->SetConfidenceText(ip, p1)
#define IAgentCommand_GetConfidenceText(ip, p1) (ip)->lpVtbl->GetConfidenceText(ip, p1)
#define IAgentCommand_GetID(ip, p1) (ip)->lpVtbl->GetID(ip, p1)

#endif // LCC_IAgentCommand_DEFINED

#ifndef LCC_IAgentCommandEx_DEFINED
#define LCC_IAgentCommandEx_DEFINED

DEFINE_GUID(IID_IAgentCommandEx, 0xb0913412,0x3b44,0x11d1,0xac, 0xba, 0x0, 0xc0, 0x4f, 0xd9, 0x75, 0x75);

typedef interface IAgentCommandEx IAgentCommandEx;

#undef INTERFACE
#define INTERFACE IAgentCommandEx

DECLARE_INTERFACE_(INTERFACE, IDispatch)
{
 HRESULT (STDMETHODCALLTYPE *QueryInterface)(IAgentCommandEx *This, GUID* riid, void** ppvObj);
 ULONG (STDMETHODCALLTYPE *AddRef)(IAgentCommandEx *This);
 ULONG (STDMETHODCALLTYPE *Release)(IAgentCommandEx *This);
 HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(IAgentCommandEx *This, UINT* pctinfo);
 HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(IAgentCommandEx *This, UINT itinfo, ULONG lcid, void** pptinfo);
 HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(IAgentCommandEx *This, GUID* riid, char** rgszNames, UINT cNames, ULONG lcid, LONG* rgdispid);
 HRESULT (STDMETHODCALLTYPE *Invoke)(IAgentCommandEx *This, LONG dispidMember, GUID* riid, ULONG lcid, USHORT wFlags, DISPPARAMS* pdispparams, VARIANT* pvarResult, EXCEPINFO* pexcepinfo, UINT* puArgErr);
 HRESULT (STDMETHODCALLTYPE *SetCaption)(IAgentCommandEx *This, BSTR bszCaption);
 HRESULT (STDMETHODCALLTYPE *GetCaption)(IAgentCommandEx *This, BSTR* pbszCaption);
 HRESULT (STDMETHODCALLTYPE *SetVoice)(IAgentCommandEx *This, BSTR bszVoice);
 HRESULT (STDMETHODCALLTYPE *GetVoice)(IAgentCommandEx *This, BSTR* pbszVoice);
 HRESULT (STDMETHODCALLTYPE *SetEnabled)(IAgentCommandEx *This, LONG bEnabled);
 HRESULT (STDMETHODCALLTYPE *GetEnabled)(IAgentCommandEx *This, LONG* pbEnabled);
 HRESULT (STDMETHODCALLTYPE *SetVisible)(IAgentCommandEx *This, LONG bVisible);
 HRESULT (STDMETHODCALLTYPE *GetVisible)(IAgentCommandEx *This, LONG* pbVisible);
 HRESULT (STDMETHODCALLTYPE *SetConfidenceThreshold)(IAgentCommandEx *This, LONG lThreshold);
 HRESULT (STDMETHODCALLTYPE *GetConfidenceThreshold)(IAgentCommandEx *This, LONG* plThreshold);
 HRESULT (STDMETHODCALLTYPE *SetConfidenceText)(IAgentCommandEx *This, BSTR bszTipText);
 HRESULT (STDMETHODCALLTYPE *GetConfidenceText)(IAgentCommandEx *This, BSTR* pbszTipText);
 HRESULT (STDMETHODCALLTYPE *GetID)(IAgentCommandEx *This, LONG* pdwID);
 HRESULT (STDMETHODCALLTYPE *SetHelpContextID)(IAgentCommandEx *This, LONG ulID);
 HRESULT (STDMETHODCALLTYPE *GetHelpContextID)(IAgentCommandEx *This, LONG* pulID);
 HRESULT (STDMETHODCALLTYPE *SetVoiceCaption)(IAgentCommandEx *This, BSTR bszVoiceCaption);
 HRESULT (STDMETHODCALLTYPE *GetVoiceCaption)(IAgentCommandEx *This, BSTR* pbszVoiceCaption);
};

#define IAgentCommandEx_QueryInterface(ip, p1, p2) (ip)->lpVtbl->QueryInterface(ip, p1, p2)
#define IAgentCommandEx_AddRef(ip) (ip)->lpVtbl->AddRef(ip)
#define IAgentCommandEx_Release(ip) (ip)->lpVtbl->Release(ip)
#define IAgentCommandEx_GetTypeInfoCount(ip, p1) (ip)->lpVtbl->GetTypeInfoCount(ip, p1)
#define IAgentCommandEx_GetTypeInfo(ip, p1, p2, p3) (ip)->lpVtbl->GetTypeInfo(ip, p1, p2, p3)
#define IAgentCommandEx_GetIDsOfNames(ip, p1, p2, p3, p4, p5) (ip)->lpVtbl->GetIDsOfNames(ip, p1, p2, p3, p4, p5)
#define IAgentCommandEx_Invoke(ip, p1, p2, p3, p4, p5, p6, p7, p8) (ip)->lpVtbl->Invoke(ip, p1, p2, p3, p4, p5, p6, p7, p8)
#define IAgentCommandEx_SetCaption(ip, p1) (ip)->lpVtbl->SetCaption(ip, p1)
#define IAgentCommandEx_GetCaption(ip, p1) (ip)->lpVtbl->GetCaption(ip, p1)
#define IAgentCommandEx_SetVoice(ip, p1) (ip)->lpVtbl->SetVoice(ip, p1)
#define IAgentCommandEx_GetVoice(ip, p1) (ip)->lpVtbl->GetVoice(ip, p1)
#define IAgentCommandEx_SetEnabled(ip, p1) (ip)->lpVtbl->SetEnabled(ip, p1)
#define IAgentCommandEx_GetEnabled(ip, p1) (ip)->lpVtbl->GetEnabled(ip, p1)
#define IAgentCommandEx_SetVisible(ip, p1) (ip)->lpVtbl->SetVisible(ip, p1)
#define IAgentCommandEx_GetVisible(ip, p1) (ip)->lpVtbl->GetVisible(ip, p1)
#define IAgentCommandEx_SetConfidenceThreshold(ip, p1) (ip)->lpVtbl->SetConfidenceThreshold(ip, p1)
#define IAgentCommandEx_GetConfidenceThreshold(ip, p1) (ip)->lpVtbl->GetConfidenceThreshold(ip, p1)
#define IAgentCommandEx_SetConfidenceText(ip, p1) (ip)->lpVtbl->SetConfidenceText(ip, p1)
#define IAgentCommandEx_GetConfidenceText(ip, p1) (ip)->lpVtbl->GetConfidenceText(ip, p1)
#define IAgentCommandEx_GetID(ip, p1) (ip)->lpVtbl->GetID(ip, p1)
#define IAgentCommandEx_SetHelpContextID(ip, p1) (ip)->lpVtbl->SetHelpContextID(ip, p1)
#define IAgentCommandEx_GetHelpContextID(ip, p1) (ip)->lpVtbl->GetHelpContextID(ip, p1)
#define IAgentCommandEx_SetVoiceCaption(ip, p1) (ip)->lpVtbl->SetVoiceCaption(ip, p1)
#define IAgentCommandEx_GetVoiceCaption(ip, p1) (ip)->lpVtbl->GetVoiceCaption(ip, p1)

#endif // LCC_IAgentCommandEx_DEFINED

#ifndef LCC_IAgentCommands_DEFINED
#define LCC_IAgentCommands_DEFINED

DEFINE_GUID(IID_IAgentCommands, 0xa7b93c85,0x7b81,0x11d0,0xac, 0x5f, 0x0, 0xc0, 0x4f, 0xd9, 0x75, 0x75);

typedef interface IAgentCommands IAgentCommands;

#undef INTERFACE
#define INTERFACE IAgentCommands

DECLARE_INTERFACE_(INTERFACE, IDispatch)
{
 HRESULT (STDMETHODCALLTYPE *QueryInterface)(IAgentCommands *This, GUID* riid, void** ppvObj);
 ULONG (STDMETHODCALLTYPE *AddRef)(IAgentCommands *This);
 ULONG (STDMETHODCALLTYPE *Release)(IAgentCommands *This);
 HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(IAgentCommands *This, UINT* pctinfo);
 HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(IAgentCommands *This, UINT itinfo, ULONG lcid, void** pptinfo);
 HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(IAgentCommands *This, GUID* riid, char** rgszNames, UINT cNames, ULONG lcid, LONG* rgdispid);
 HRESULT (STDMETHODCALLTYPE *Invoke)(IAgentCommands *This, LONG dispidMember, GUID* riid, ULONG lcid, USHORT wFlags, DISPPARAMS* pdispparams, VARIANT* pvarResult, EXCEPINFO* pexcepinfo, UINT* puArgErr);
 HRESULT (STDMETHODCALLTYPE *GetCommand)(IAgentCommands *This, LONG dwCommandID, IUnknown** ppunkCommand);
 HRESULT (STDMETHODCALLTYPE *GetCount)(IAgentCommands *This, LONG* pdwCount);
 HRESULT (STDMETHODCALLTYPE *SetCaption)(IAgentCommands *This, BSTR bszCaption);
 HRESULT (STDMETHODCALLTYPE *GetCaption)(IAgentCommands *This, BSTR* pbszCaption);
 HRESULT (STDMETHODCALLTYPE *SetVoice)(IAgentCommands *This, BSTR bszVoice);
 HRESULT (STDMETHODCALLTYPE *GetVoice)(IAgentCommands *This, BSTR* pbszVoice);
 HRESULT (STDMETHODCALLTYPE *SetVisible)(IAgentCommands *This, LONG bVisible);
 HRESULT (STDMETHODCALLTYPE *GetVisible)(IAgentCommands *This, LONG* pbVisible);
 HRESULT (STDMETHODCALLTYPE *Add)(IAgentCommands *This, BSTR bszCaption, BSTR bszVoice, LONG bEnabled, LONG bVisible, LONG* pdwID);
 HRESULT (STDMETHODCALLTYPE *Insert)(IAgentCommands *This, BSTR bszCaption, BSTR bszVoice, LONG bEnabled, LONG bVisible, LONG dwRefID, LONG bBefore, LONG* pdwID);
 HRESULT (STDMETHODCALLTYPE *Remove)(IAgentCommands *This, LONG dwID);
 HRESULT (STDMETHODCALLTYPE *RemoveAll)(IAgentCommands *This);
};

#define IAgentCommands_QueryInterface(ip, p1, p2) (ip)->lpVtbl->QueryInterface(ip, p1, p2)
#define IAgentCommands_AddRef(ip) (ip)->lpVtbl->AddRef(ip)
#define IAgentCommands_Release(ip) (ip)->lpVtbl->Release(ip)
#define IAgentCommands_GetTypeInfoCount(ip, p1) (ip)->lpVtbl->GetTypeInfoCount(ip, p1)
#define IAgentCommands_GetTypeInfo(ip, p1, p2, p3) (ip)->lpVtbl->GetTypeInfo(ip, p1, p2, p3)
#define IAgentCommands_GetIDsOfNames(ip, p1, p2, p3, p4, p5) (ip)->lpVtbl->GetIDsOfNames(ip, p1, p2, p3, p4, p5)
#define IAgentCommands_Invoke(ip, p1, p2, p3, p4, p5, p6, p7, p8) (ip)->lpVtbl->Invoke(ip, p1, p2, p3, p4, p5, p6, p7, p8)
#define IAgentCommands_GetCommand(ip, p1, p2) (ip)->lpVtbl->GetCommand(ip, p1, p2)
#define IAgentCommands_GetCount(ip, p1) (ip)->lpVtbl->GetCount(ip, p1)
#define IAgentCommands_SetCaption(ip, p1) (ip)->lpVtbl->SetCaption(ip, p1)
#define IAgentCommands_GetCaption(ip, p1) (ip)->lpVtbl->GetCaption(ip, p1)
#define IAgentCommands_SetVoice(ip, p1) (ip)->lpVtbl->SetVoice(ip, p1)
#define IAgentCommands_GetVoice(ip, p1) (ip)->lpVtbl->GetVoice(ip, p1)
#define IAgentCommands_SetVisible(ip, p1) (ip)->lpVtbl->SetVisible(ip, p1)
#define IAgentCommands_GetVisible(ip, p1) (ip)->lpVtbl->GetVisible(ip, p1)
#define IAgentCommands_Add(ip, p1, p2, p3, p4, p5) (ip)->lpVtbl->Add(ip, p1, p2, p3, p4, p5)
#define IAgentCommands_Insert(ip, p1, p2, p3, p4, p5, p6, p7) (ip)->lpVtbl->Insert(ip, p1, p2, p3, p4, p5, p6, p7)
#define IAgentCommands_Remove(ip, p1) (ip)->lpVtbl->Remove(ip, p1)
#define IAgentCommands_RemoveAll(ip) (ip)->lpVtbl->RemoveAll(ip)

#endif // LCC_IAgentCommands_DEFINED

#ifndef LCC_IAgentCommandsEx_DEFINED
#define LCC_IAgentCommandsEx_DEFINED

DEFINE_GUID(IID_IAgentCommandsEx, 0x6ba90c00,0x3910,0x11d1,0xac, 0xb3, 0x0, 0xc0, 0x4f, 0xd9, 0x75, 0x75);

typedef interface IAgentCommandsEx IAgentCommandsEx;

#undef INTERFACE
#define INTERFACE IAgentCommandsEx

DECLARE_INTERFACE_(INTERFACE, IDispatch)
{
 HRESULT (STDMETHODCALLTYPE *QueryInterface)(IAgentCommandsEx *This, GUID* riid, void** ppvObj);
 ULONG (STDMETHODCALLTYPE *AddRef)(IAgentCommandsEx *This);
 ULONG (STDMETHODCALLTYPE *Release)(IAgentCommandsEx *This);
 HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(IAgentCommandsEx *This, UINT* pctinfo);
 HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(IAgentCommandsEx *This, UINT itinfo, ULONG lcid, void** pptinfo);
 HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(IAgentCommandsEx *This, GUID* riid, char** rgszNames, UINT cNames, ULONG lcid, LONG* rgdispid);
 HRESULT (STDMETHODCALLTYPE *Invoke)(IAgentCommandsEx *This, LONG dispidMember, GUID* riid, ULONG lcid, USHORT wFlags, DISPPARAMS* pdispparams, VARIANT* pvarResult, EXCEPINFO* pexcepinfo, UINT* puArgErr);
 HRESULT (STDMETHODCALLTYPE *GetCommand)(IAgentCommandsEx *This, LONG dwCommandID, IUnknown** ppunkCommand);
 HRESULT (STDMETHODCALLTYPE *GetCount)(IAgentCommandsEx *This, LONG* pdwCount);
 HRESULT (STDMETHODCALLTYPE *SetCaption)(IAgentCommandsEx *This, BSTR bszCaption);
 HRESULT (STDMETHODCALLTYPE *GetCaption)(IAgentCommandsEx *This, BSTR* pbszCaption);
 HRESULT (STDMETHODCALLTYPE *SetVoice)(IAgentCommandsEx *This, BSTR bszVoice);
 HRESULT (STDMETHODCALLTYPE *GetVoice)(IAgentCommandsEx *This, BSTR* pbszVoice);
 HRESULT (STDMETHODCALLTYPE *SetVisible)(IAgentCommandsEx *This, LONG bVisible);
 HRESULT (STDMETHODCALLTYPE *GetVisible)(IAgentCommandsEx *This, LONG* pbVisible);
 HRESULT (STDMETHODCALLTYPE *Add)(IAgentCommandsEx *This, BSTR bszCaption, BSTR bszVoice, LONG bEnabled, LONG bVisible, LONG* pdwID);
 HRESULT (STDMETHODCALLTYPE *Insert)(IAgentCommandsEx *This, BSTR bszCaption, BSTR bszVoice, LONG bEnabled, LONG bVisible, LONG dwRefID, LONG bBefore, LONG* pdwID);
 HRESULT (STDMETHODCALLTYPE *Remove)(IAgentCommandsEx *This, LONG dwID);
 HRESULT (STDMETHODCALLTYPE *RemoveAll)(IAgentCommandsEx *This);
 HRESULT (STDMETHODCALLTYPE *GetCommandEx)(IAgentCommandsEx *This, LONG dwCommandID, struct IAgentCommandEx** ppCommandEx);
 HRESULT (STDMETHODCALLTYPE *SetDefaultID)(IAgentCommandsEx *This, LONG dwID);
 HRESULT (STDMETHODCALLTYPE *GetDefaultID)(IAgentCommandsEx *This, LONG* pdwID);
 HRESULT (STDMETHODCALLTYPE *SetHelpContextID)(IAgentCommandsEx *This, LONG ulHelpID);
 HRESULT (STDMETHODCALLTYPE *GetHelpContextID)(IAgentCommandsEx *This, LONG* pulHelpID);
 HRESULT (STDMETHODCALLTYPE *SetFontName)(IAgentCommandsEx *This, BSTR bszFontName);
 HRESULT (STDMETHODCALLTYPE *GetFontName)(IAgentCommandsEx *This, BSTR* pbszFontName);
 HRESULT (STDMETHODCALLTYPE *SetFontSize)(IAgentCommandsEx *This, LONG lFontSize);
 HRESULT (STDMETHODCALLTYPE *GetFontSize)(IAgentCommandsEx *This, LONG* lFontSize);
 HRESULT (STDMETHODCALLTYPE *SetVoiceCaption)(IAgentCommandsEx *This, BSTR bszVoiceCaption);
 HRESULT (STDMETHODCALLTYPE *GetVoiceCaption)(IAgentCommandsEx *This, BSTR* bszVoiceCaption);
 HRESULT (STDMETHODCALLTYPE *AddEx)(IAgentCommandsEx *This, BSTR bszCaption, BSTR bszVoice, BSTR bszVoiceCaption, LONG bEnabled, LONG bVisible, LONG ulHelpID, LONG* pdwID);
 HRESULT (STDMETHODCALLTYPE *InsertEx)(IAgentCommandsEx *This, BSTR bszCaption, BSTR bszVoice, BSTR bszVoiceCaption, LONG bEnabled, LONG bVisible, LONG ulHelpID, LONG dwRefID, LONG bBefore, LONG* pdwID);
 HRESULT (STDMETHODCALLTYPE *SetGlobalVoiceCommandsEnabled)(IAgentCommandsEx *This, LONG bEnable);
 HRESULT (STDMETHODCALLTYPE *GetGlobalVoiceCommandsEnabled)(IAgentCommandsEx *This, LONG* pbEnabled);
};

#define IAgentCommandsEx_QueryInterface(ip, p1, p2) (ip)->lpVtbl->QueryInterface(ip, p1, p2)
#define IAgentCommandsEx_AddRef(ip) (ip)->lpVtbl->AddRef(ip)
#define IAgentCommandsEx_Release(ip) (ip)->lpVtbl->Release(ip)
#define IAgentCommandsEx_GetTypeInfoCount(ip, p1) (ip)->lpVtbl->GetTypeInfoCount(ip, p1)
#define IAgentCommandsEx_GetTypeInfo(ip, p1, p2, p3) (ip)->lpVtbl->GetTypeInfo(ip, p1, p2, p3)
#define IAgentCommandsEx_GetIDsOfNames(ip, p1, p2, p3, p4, p5) (ip)->lpVtbl->GetIDsOfNames(ip, p1, p2, p3, p4, p5)
#define IAgentCommandsEx_Invoke(ip, p1, p2, p3, p4, p5, p6, p7, p8) (ip)->lpVtbl->Invoke(ip, p1, p2, p3, p4, p5, p6, p7, p8)
#define IAgentCommandsEx_GetCommand(ip, p1, p2) (ip)->lpVtbl->GetCommand(ip, p1, p2)
#define IAgentCommandsEx_GetCount(ip, p1) (ip)->lpVtbl->GetCount(ip, p1)
#define IAgentCommandsEx_SetCaption(ip, p1) (ip)->lpVtbl->SetCaption(ip, p1)
#define IAgentCommandsEx_GetCaption(ip, p1) (ip)->lpVtbl->GetCaption(ip, p1)
#define IAgentCommandsEx_SetVoice(ip, p1) (ip)->lpVtbl->SetVoice(ip, p1)
#define IAgentCommandsEx_GetVoice(ip, p1) (ip)->lpVtbl->GetVoice(ip, p1)
#define IAgentCommandsEx_SetVisible(ip, p1) (ip)->lpVtbl->SetVisible(ip, p1)
#define IAgentCommandsEx_GetVisible(ip, p1) (ip)->lpVtbl->GetVisible(ip, p1)
#define IAgentCommandsEx_Add(ip, p1, p2, p3, p4, p5) (ip)->lpVtbl->Add(ip, p1, p2, p3, p4, p5)
#define IAgentCommandsEx_Insert(ip, p1, p2, p3, p4, p5, p6, p7) (ip)->lpVtbl->Insert(ip, p1, p2, p3, p4, p5, p6, p7)
#define IAgentCommandsEx_Remove(ip, p1) (ip)->lpVtbl->Remove(ip, p1)
#define IAgentCommandsEx_RemoveAll(ip) (ip)->lpVtbl->RemoveAll(ip)
#define IAgentCommandsEx_GetCommandEx(ip, p1, p2) (ip)->lpVtbl->GetCommandEx(ip, p1, p2)
#define IAgentCommandsEx_SetDefaultID(ip, p1) (ip)->lpVtbl->SetDefaultID(ip, p1)
#define IAgentCommandsEx_GetDefaultID(ip, p1) (ip)->lpVtbl->GetDefaultID(ip, p1)
#define IAgentCommandsEx_SetHelpContextID(ip, p1) (ip)->lpVtbl->SetHelpContextID(ip, p1)
#define IAgentCommandsEx_GetHelpContextID(ip, p1) (ip)->lpVtbl->GetHelpContextID(ip, p1)
#define IAgentCommandsEx_SetFontName(ip, p1) (ip)->lpVtbl->SetFontName(ip, p1)
#define IAgentCommandsEx_GetFontName(ip, p1) (ip)->lpVtbl->GetFontName(ip, p1)
#define IAgentCommandsEx_SetFontSize(ip, p1) (ip)->lpVtbl->SetFontSize(ip, p1)
#define IAgentCommandsEx_GetFontSize(ip, p1) (ip)->lpVtbl->GetFontSize(ip, p1)
#define IAgentCommandsEx_SetVoiceCaption(ip, p1) (ip)->lpVtbl->SetVoiceCaption(ip, p1)
#define IAgentCommandsEx_GetVoiceCaption(ip, p1) (ip)->lpVtbl->GetVoiceCaption(ip, p1)
#define IAgentCommandsEx_AddEx(ip, p1, p2, p3, p4, p5, p6, p7) (ip)->lpVtbl->AddEx(ip, p1, p2, p3, p4, p5, p6, p7)
#define IAgentCommandsEx_InsertEx(ip, p1, p2, p3, p4, p5, p6, p7, p8, p9) (ip)->lpVtbl->InsertEx(ip, p1, p2, p3, p4, p5, p6, p7, p8, p9)
#define IAgentCommandsEx_SetGlobalVoiceCommandsEnabled(ip, p1) (ip)->lpVtbl->SetGlobalVoiceCommandsEnabled(ip, p1)
#define IAgentCommandsEx_GetGlobalVoiceCommandsEnabled(ip, p1) (ip)->lpVtbl->GetGlobalVoiceCommandsEnabled(ip, p1)

#endif // LCC_IAgentCommandsEx_DEFINED

#ifndef LCC_IAgentSpeechInputProperties_DEFINED
#define LCC_IAgentSpeechInputProperties_DEFINED

DEFINE_GUID(IID_IAgentSpeechInputProperties, 0xa7b93c87,0x7b81,0x11d0,0xac, 0x5f, 0x0, 0xc0, 0x4f, 0xd9, 0x75, 0x75);

typedef interface IAgentSpeechInputProperties IAgentSpeechInputProperties;

#undef INTERFACE
#define INTERFACE IAgentSpeechInputProperties

DECLARE_INTERFACE_(INTERFACE, IDispatch)
{
 HRESULT (STDMETHODCALLTYPE *QueryInterface)(IAgentSpeechInputProperties *This, GUID* riid, void** ppvObj);
 ULONG (STDMETHODCALLTYPE *AddRef)(IAgentSpeechInputProperties *This);
 ULONG (STDMETHODCALLTYPE *Release)(IAgentSpeechInputProperties *This);
 HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(IAgentSpeechInputProperties *This, UINT* pctinfo);
 HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(IAgentSpeechInputProperties *This, UINT itinfo, ULONG lcid, void** pptinfo);
 HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(IAgentSpeechInputProperties *This, GUID* riid, char** rgszNames, UINT cNames, ULONG lcid, LONG* rgdispid);
 HRESULT (STDMETHODCALLTYPE *Invoke)(IAgentSpeechInputProperties *This, LONG dispidMember, GUID* riid, ULONG lcid, USHORT wFlags, DISPPARAMS* pdispparams, VARIANT* pvarResult, EXCEPINFO* pexcepinfo, UINT* puArgErr);
 HRESULT (STDMETHODCALLTYPE *GetInstalled)(IAgentSpeechInputProperties *This, LONG* pbInstalled);
 HRESULT (STDMETHODCALLTYPE *GetEnabled)(IAgentSpeechInputProperties *This, LONG* pbEnabled);
 HRESULT (STDMETHODCALLTYPE *GetHotKey)(IAgentSpeechInputProperties *This, BSTR* pbszHotCharKey);
 HRESULT (STDMETHODCALLTYPE *GetLCID)(IAgentSpeechInputProperties *This, ULONG* plcidCurrent);
 HRESULT (STDMETHODCALLTYPE *GetEngine)(IAgentSpeechInputProperties *This, BSTR* pbszEngine);
 HRESULT (STDMETHODCALLTYPE *SetEngine)(IAgentSpeechInputProperties *This, BSTR bszEngine);
 HRESULT (STDMETHODCALLTYPE *GetListeningTip)(IAgentSpeechInputProperties *This, LONG* pbListeningTip);
};

#define IAgentSpeechInputProperties_QueryInterface(ip, p1, p2) (ip)->lpVtbl->QueryInterface(ip, p1, p2)
#define IAgentSpeechInputProperties_AddRef(ip) (ip)->lpVtbl->AddRef(ip)
#define IAgentSpeechInputProperties_Release(ip) (ip)->lpVtbl->Release(ip)
#define IAgentSpeechInputProperties_GetTypeInfoCount(ip, p1) (ip)->lpVtbl->GetTypeInfoCount(ip, p1)
#define IAgentSpeechInputProperties_GetTypeInfo(ip, p1, p2, p3) (ip)->lpVtbl->GetTypeInfo(ip, p1, p2, p3)
#define IAgentSpeechInputProperties_GetIDsOfNames(ip, p1, p2, p3, p4, p5) (ip)->lpVtbl->GetIDsOfNames(ip, p1, p2, p3, p4, p5)
#define IAgentSpeechInputProperties_Invoke(ip, p1, p2, p3, p4, p5, p6, p7, p8) (ip)->lpVtbl->Invoke(ip, p1, p2, p3, p4, p5, p6, p7, p8)
#define IAgentSpeechInputProperties_GetInstalled(ip, p1) (ip)->lpVtbl->GetInstalled(ip, p1)
#define IAgentSpeechInputProperties_GetEnabled(ip, p1) (ip)->lpVtbl->GetEnabled(ip, p1)
#define IAgentSpeechInputProperties_GetHotKey(ip, p1) (ip)->lpVtbl->GetHotKey(ip, p1)
#define IAgentSpeechInputProperties_GetLCID(ip, p1) (ip)->lpVtbl->GetLCID(ip, p1)
#define IAgentSpeechInputProperties_GetEngine(ip, p1) (ip)->lpVtbl->GetEngine(ip, p1)
#define IAgentSpeechInputProperties_SetEngine(ip, p1) (ip)->lpVtbl->SetEngine(ip, p1)
#define IAgentSpeechInputProperties_GetListeningTip(ip, p1) (ip)->lpVtbl->GetListeningTip(ip, p1)

#endif // LCC_IAgentSpeechInputProperties_DEFINED

#ifndef LCC_IAgentAudioOutputProperties_DEFINED
#define LCC_IAgentAudioOutputProperties_DEFINED

DEFINE_GUID(IID_IAgentAudioOutputProperties, 0xa7b93c89,0x7b81,0x11d0,0xac, 0x5f, 0x0, 0xc0, 0x4f, 0xd9, 0x75, 0x75);

typedef interface IAgentAudioOutputProperties IAgentAudioOutputProperties;

#undef INTERFACE
#define INTERFACE IAgentAudioOutputProperties

DECLARE_INTERFACE_(INTERFACE, IDispatch)
{
 HRESULT (STDMETHODCALLTYPE *QueryInterface)(IAgentAudioOutputProperties *This, GUID* riid, void** ppvObj);
 ULONG (STDMETHODCALLTYPE *AddRef)(IAgentAudioOutputProperties *This);
 ULONG (STDMETHODCALLTYPE *Release)(IAgentAudioOutputProperties *This);
 HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(IAgentAudioOutputProperties *This, UINT* pctinfo);
 HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(IAgentAudioOutputProperties *This, UINT itinfo, ULONG lcid, void** pptinfo);
 HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(IAgentAudioOutputProperties *This, GUID* riid, char** rgszNames, UINT cNames, ULONG lcid, LONG* rgdispid);
 HRESULT (STDMETHODCALLTYPE *Invoke)(IAgentAudioOutputProperties *This, LONG dispidMember, GUID* riid, ULONG lcid, USHORT wFlags, DISPPARAMS* pdispparams, VARIANT* pvarResult, EXCEPINFO* pexcepinfo, UINT* puArgErr);
 HRESULT (STDMETHODCALLTYPE *GetEnabled)(IAgentAudioOutputProperties *This, LONG* pbEnabled);
 HRESULT (STDMETHODCALLTYPE *GetUsingSoundEffects)(IAgentAudioOutputProperties *This, LONG* pbUsingSoundEffects);
};

#define IAgentAudioOutputProperties_QueryInterface(ip, p1, p2) (ip)->lpVtbl->QueryInterface(ip, p1, p2)
#define IAgentAudioOutputProperties_AddRef(ip) (ip)->lpVtbl->AddRef(ip)
#define IAgentAudioOutputProperties_Release(ip) (ip)->lpVtbl->Release(ip)
#define IAgentAudioOutputProperties_GetTypeInfoCount(ip, p1) (ip)->lpVtbl->GetTypeInfoCount(ip, p1)
#define IAgentAudioOutputProperties_GetTypeInfo(ip, p1, p2, p3) (ip)->lpVtbl->GetTypeInfo(ip, p1, p2, p3)
#define IAgentAudioOutputProperties_GetIDsOfNames(ip, p1, p2, p3, p4, p5) (ip)->lpVtbl->GetIDsOfNames(ip, p1, p2, p3, p4, p5)
#define IAgentAudioOutputProperties_Invoke(ip, p1, p2, p3, p4, p5, p6, p7, p8) (ip)->lpVtbl->Invoke(ip, p1, p2, p3, p4, p5, p6, p7, p8)
#define IAgentAudioOutputProperties_GetEnabled(ip, p1) (ip)->lpVtbl->GetEnabled(ip, p1)
#define IAgentAudioOutputProperties_GetUsingSoundEffects(ip, p1) (ip)->lpVtbl->GetUsingSoundEffects(ip, p1)

#endif // LCC_IAgentAudioOutputProperties_DEFINED

#ifndef LCC_IAgentAudioOutputPropertiesEx_DEFINED
#define LCC_IAgentAudioOutputPropertiesEx_DEFINED

DEFINE_GUID(IID_IAgentAudioOutputPropertiesEx, 0xa7b93ca0,0x7b81,0x11d0,0xac, 0x5f, 0x0, 0xc0, 0x4f, 0xd9, 0x75, 0x75);

typedef interface IAgentAudioOutputPropertiesEx IAgentAudioOutputPropertiesEx;

#undef INTERFACE
#define INTERFACE IAgentAudioOutputPropertiesEx

DECLARE_INTERFACE_(INTERFACE, IDispatch)
{
 HRESULT (STDMETHODCALLTYPE *QueryInterface)(IAgentAudioOutputPropertiesEx *This, GUID* riid, void** ppvObj);
 ULONG (STDMETHODCALLTYPE *AddRef)(IAgentAudioOutputPropertiesEx *This);
 ULONG (STDMETHODCALLTYPE *Release)(IAgentAudioOutputPropertiesEx *This);
 HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(IAgentAudioOutputPropertiesEx *This, UINT* pctinfo);
 HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(IAgentAudioOutputPropertiesEx *This, UINT itinfo, ULONG lcid, void** pptinfo);
 HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(IAgentAudioOutputPropertiesEx *This, GUID* riid, char** rgszNames, UINT cNames, ULONG lcid, LONG* rgdispid);
 HRESULT (STDMETHODCALLTYPE *Invoke)(IAgentAudioOutputPropertiesEx *This, LONG dispidMember, GUID* riid, ULONG lcid, USHORT wFlags, DISPPARAMS* pdispparams, VARIANT* pvarResult, EXCEPINFO* pexcepinfo, UINT* puArgErr);
 HRESULT (STDMETHODCALLTYPE *GetEnabled)(IAgentAudioOutputPropertiesEx *This, LONG* pbEnabled);
 HRESULT (STDMETHODCALLTYPE *GetUsingSoundEffects)(IAgentAudioOutputPropertiesEx *This, LONG* pbUsingSoundEffects);
 HRESULT (STDMETHODCALLTYPE *GetStatus)(IAgentAudioOutputPropertiesEx *This, LONG* plStatus);
};

#define IAgentAudioOutputPropertiesEx_QueryInterface(ip, p1, p2) (ip)->lpVtbl->QueryInterface(ip, p1, p2)
#define IAgentAudioOutputPropertiesEx_AddRef(ip) (ip)->lpVtbl->AddRef(ip)
#define IAgentAudioOutputPropertiesEx_Release(ip) (ip)->lpVtbl->Release(ip)
#define IAgentAudioOutputPropertiesEx_GetTypeInfoCount(ip, p1) (ip)->lpVtbl->GetTypeInfoCount(ip, p1)
#define IAgentAudioOutputPropertiesEx_GetTypeInfo(ip, p1, p2, p3) (ip)->lpVtbl->GetTypeInfo(ip, p1, p2, p3)
#define IAgentAudioOutputPropertiesEx_GetIDsOfNames(ip, p1, p2, p3, p4, p5) (ip)->lpVtbl->GetIDsOfNames(ip, p1, p2, p3, p4, p5)
#define IAgentAudioOutputPropertiesEx_Invoke(ip, p1, p2, p3, p4, p5, p6, p7, p8) (ip)->lpVtbl->Invoke(ip, p1, p2, p3, p4, p5, p6, p7, p8)
#define IAgentAudioOutputPropertiesEx_GetEnabled(ip, p1) (ip)->lpVtbl->GetEnabled(ip, p1)
#define IAgentAudioOutputPropertiesEx_GetUsingSoundEffects(ip, p1) (ip)->lpVtbl->GetUsingSoundEffects(ip, p1)
#define IAgentAudioOutputPropertiesEx_GetStatus(ip, p1) (ip)->lpVtbl->GetStatus(ip, p1)

#endif // LCC_IAgentAudioOutputPropertiesEx_DEFINED

#ifndef LCC_IAgentPropertySheet_DEFINED
#define LCC_IAgentPropertySheet_DEFINED

DEFINE_GUID(IID_IAgentPropertySheet, 0xa7b93c8b,0x7b81,0x11d0,0xac, 0x5f, 0x0, 0xc0, 0x4f, 0xd9, 0x75, 0x75);

typedef interface IAgentPropertySheet IAgentPropertySheet;

#undef INTERFACE
#define INTERFACE IAgentPropertySheet

DECLARE_INTERFACE_(INTERFACE, IDispatch)
{
 HRESULT (STDMETHODCALLTYPE *QueryInterface)(IAgentPropertySheet *This, GUID* riid, void** ppvObj);
 ULONG (STDMETHODCALLTYPE *AddRef)(IAgentPropertySheet *This);
 ULONG (STDMETHODCALLTYPE *Release)(IAgentPropertySheet *This);
 HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(IAgentPropertySheet *This, UINT* pctinfo);
 HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(IAgentPropertySheet *This, UINT itinfo, ULONG lcid, void** pptinfo);
 HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(IAgentPropertySheet *This, GUID* riid, char** rgszNames, UINT cNames, ULONG lcid, LONG* rgdispid);
 HRESULT (STDMETHODCALLTYPE *Invoke)(IAgentPropertySheet *This, LONG dispidMember, GUID* riid, ULONG lcid, USHORT wFlags, DISPPARAMS* pdispparams, VARIANT* pvarResult, EXCEPINFO* pexcepinfo, UINT* puArgErr);
 HRESULT (STDMETHODCALLTYPE *GetVisible)(IAgentPropertySheet *This, LONG* pbVisible);
 HRESULT (STDMETHODCALLTYPE *SetVisible)(IAgentPropertySheet *This, LONG bVisible);
 HRESULT (STDMETHODCALLTYPE *GetPosition)(IAgentPropertySheet *This, LONG* plLeft, LONG* plTop);
 HRESULT (STDMETHODCALLTYPE *GetSize)(IAgentPropertySheet *This, LONG* plWidth, LONG* plHeight);
 HRESULT (STDMETHODCALLTYPE *GetPage)(IAgentPropertySheet *This, BSTR* pbszPage);
 HRESULT (STDMETHODCALLTYPE *SetPage)(IAgentPropertySheet *This, BSTR bszPage);
};

#define IAgentPropertySheet_QueryInterface(ip, p1, p2) (ip)->lpVtbl->QueryInterface(ip, p1, p2)
#define IAgentPropertySheet_AddRef(ip) (ip)->lpVtbl->AddRef(ip)
#define IAgentPropertySheet_Release(ip) (ip)->lpVtbl->Release(ip)
#define IAgentPropertySheet_GetTypeInfoCount(ip, p1) (ip)->lpVtbl->GetTypeInfoCount(ip, p1)
#define IAgentPropertySheet_GetTypeInfo(ip, p1, p2, p3) (ip)->lpVtbl->GetTypeInfo(ip, p1, p2, p3)
#define IAgentPropertySheet_GetIDsOfNames(ip, p1, p2, p3, p4, p5) (ip)->lpVtbl->GetIDsOfNames(ip, p1, p2, p3, p4, p5)
#define IAgentPropertySheet_Invoke(ip, p1, p2, p3, p4, p5, p6, p7, p8) (ip)->lpVtbl->Invoke(ip, p1, p2, p3, p4, p5, p6, p7, p8)
#define IAgentPropertySheet_GetVisible(ip, p1) (ip)->lpVtbl->GetVisible(ip, p1)
#define IAgentPropertySheet_SetVisible(ip, p1) (ip)->lpVtbl->SetVisible(ip, p1)
#define IAgentPropertySheet_GetPosition(ip, p1, p2) (ip)->lpVtbl->GetPosition(ip, p1, p2)
#define IAgentPropertySheet_GetSize(ip, p1, p2) (ip)->lpVtbl->GetSize(ip, p1, p2)
#define IAgentPropertySheet_GetPage(ip, p1) (ip)->lpVtbl->GetPage(ip, p1)
#define IAgentPropertySheet_SetPage(ip, p1) (ip)->lpVtbl->SetPage(ip, p1)

#endif // LCC_IAgentPropertySheet_DEFINED

#ifndef LCC_IAgentBalloon_DEFINED
#define LCC_IAgentBalloon_DEFINED

DEFINE_GUID(IID_IAgentBalloon, 0xa7b93c8d,0x7b81,0x11d0,0xac, 0x5f, 0x0, 0xc0, 0x4f, 0xd9, 0x75, 0x75);

typedef interface IAgentBalloon IAgentBalloon;

#undef INTERFACE
#define INTERFACE IAgentBalloon

DECLARE_INTERFACE_(INTERFACE, IDispatch)
{
 HRESULT (STDMETHODCALLTYPE *QueryInterface)(IAgentBalloon *This, GUID* riid, void** ppvObj);
 ULONG (STDMETHODCALLTYPE *AddRef)(IAgentBalloon *This);
 ULONG (STDMETHODCALLTYPE *Release)(IAgentBalloon *This);
 HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(IAgentBalloon *This, UINT* pctinfo);
 HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(IAgentBalloon *This, UINT itinfo, ULONG lcid, void** pptinfo);
 HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(IAgentBalloon *This, GUID* riid, char** rgszNames, UINT cNames, ULONG lcid, LONG* rgdispid);
 HRESULT (STDMETHODCALLTYPE *Invoke)(IAgentBalloon *This, LONG dispidMember, GUID* riid, ULONG lcid, USHORT wFlags, DISPPARAMS* pdispparams, VARIANT* pvarResult, EXCEPINFO* pexcepinfo, UINT* puArgErr);
 HRESULT (STDMETHODCALLTYPE *GetEnabled)(IAgentBalloon *This, LONG* pbEnabled);
 HRESULT (STDMETHODCALLTYPE *GetNumLines)(IAgentBalloon *This, LONG* plLines);
 HRESULT (STDMETHODCALLTYPE *GetNumCharsPerLine)(IAgentBalloon *This, LONG* plCharsPerLine);
 HRESULT (STDMETHODCALLTYPE *GetFontName)(IAgentBalloon *This, BSTR* pbszFontName);
 HRESULT (STDMETHODCALLTYPE *GetFontSize)(IAgentBalloon *This, LONG* plFontSize);
 HRESULT (STDMETHODCALLTYPE *GetFontBold)(IAgentBalloon *This, LONG* pbFontBold);
 HRESULT (STDMETHODCALLTYPE *GetFontItalic)(IAgentBalloon *This, LONG* pbFontItalic);
 HRESULT (STDMETHODCALLTYPE *GetFontStrikethru)(IAgentBalloon *This, LONG* pbFontStrikethru);
 HRESULT (STDMETHODCALLTYPE *GetFontUnderline)(IAgentBalloon *This, LONG* pbFontUnderline);
 HRESULT (STDMETHODCALLTYPE *GetForeColor)(IAgentBalloon *This, LONG* plFGColor);
 HRESULT (STDMETHODCALLTYPE *GetBackColor)(IAgentBalloon *This, LONG* plBGColor);
 HRESULT (STDMETHODCALLTYPE *GetBorderColor)(IAgentBalloon *This, LONG* plBorderColor);
 HRESULT (STDMETHODCALLTYPE *SetVisible)(IAgentBalloon *This, LONG bVisible);
 HRESULT (STDMETHODCALLTYPE *GetVisible)(IAgentBalloon *This, LONG* pbVisible);
 HRESULT (STDMETHODCALLTYPE *SetFontName)(IAgentBalloon *This, BSTR bszFontName);
 HRESULT (STDMETHODCALLTYPE *SetFontSize)(IAgentBalloon *This, LONG lFontSize);
 HRESULT (STDMETHODCALLTYPE *SetFontCharSet)(IAgentBalloon *This, SHORT sFontCharSet);
 HRESULT (STDMETHODCALLTYPE *GetFontCharSet)(IAgentBalloon *This, SHORT* psFontCharSet);
};

#define IAgentBalloon_QueryInterface(ip, p1, p2) (ip)->lpVtbl->QueryInterface(ip, p1, p2)
#define IAgentBalloon_AddRef(ip) (ip)->lpVtbl->AddRef(ip)
#define IAgentBalloon_Release(ip) (ip)->lpVtbl->Release(ip)
#define IAgentBalloon_GetTypeInfoCount(ip, p1) (ip)->lpVtbl->GetTypeInfoCount(ip, p1)
#define IAgentBalloon_GetTypeInfo(ip, p1, p2, p3) (ip)->lpVtbl->GetTypeInfo(ip, p1, p2, p3)
#define IAgentBalloon_GetIDsOfNames(ip, p1, p2, p3, p4, p5) (ip)->lpVtbl->GetIDsOfNames(ip, p1, p2, p3, p4, p5)
#define IAgentBalloon_Invoke(ip, p1, p2, p3, p4, p5, p6, p7, p8) (ip)->lpVtbl->Invoke(ip, p1, p2, p3, p4, p5, p6, p7, p8)
#define IAgentBalloon_GetEnabled(ip, p1) (ip)->lpVtbl->GetEnabled(ip, p1)
#define IAgentBalloon_GetNumLines(ip, p1) (ip)->lpVtbl->GetNumLines(ip, p1)
#define IAgentBalloon_GetNumCharsPerLine(ip, p1) (ip)->lpVtbl->GetNumCharsPerLine(ip, p1)
#define IAgentBalloon_GetFontName(ip, p1) (ip)->lpVtbl->GetFontName(ip, p1)
#define IAgentBalloon_GetFontSize(ip, p1) (ip)->lpVtbl->GetFontSize(ip, p1)
#define IAgentBalloon_GetFontBold(ip, p1) (ip)->lpVtbl->GetFontBold(ip, p1)
#define IAgentBalloon_GetFontItalic(ip, p1) (ip)->lpVtbl->GetFontItalic(ip, p1)
#define IAgentBalloon_GetFontStrikethru(ip, p1) (ip)->lpVtbl->GetFontStrikethru(ip, p1)
#define IAgentBalloon_GetFontUnderline(ip, p1) (ip)->lpVtbl->GetFontUnderline(ip, p1)
#define IAgentBalloon_GetForeColor(ip, p1) (ip)->lpVtbl->GetForeColor(ip, p1)
#define IAgentBalloon_GetBackColor(ip, p1) (ip)->lpVtbl->GetBackColor(ip, p1)
#define IAgentBalloon_GetBorderColor(ip, p1) (ip)->lpVtbl->GetBorderColor(ip, p1)
#define IAgentBalloon_SetVisible(ip, p1) (ip)->lpVtbl->SetVisible(ip, p1)
#define IAgentBalloon_GetVisible(ip, p1) (ip)->lpVtbl->GetVisible(ip, p1)
#define IAgentBalloon_SetFontName(ip, p1) (ip)->lpVtbl->SetFontName(ip, p1)
#define IAgentBalloon_SetFontSize(ip, p1) (ip)->lpVtbl->SetFontSize(ip, p1)
#define IAgentBalloon_SetFontCharSet(ip, p1) (ip)->lpVtbl->SetFontCharSet(ip, p1)
#define IAgentBalloon_GetFontCharSet(ip, p1) (ip)->lpVtbl->GetFontCharSet(ip, p1)

#endif // LCC_IAgentBalloon_DEFINED

#ifndef LCC_IAgentBalloonEx_DEFINED
#define LCC_IAgentBalloonEx_DEFINED

DEFINE_GUID(IID_IAgentBalloonEx, 0xd7a6d440,0x8872,0x11d1,0x9e, 0xc6, 0x0, 0xc0, 0x4f, 0xd7, 0x8, 0x1f);

typedef interface IAgentBalloonEx IAgentBalloonEx;

#undef INTERFACE
#define INTERFACE IAgentBalloonEx

DECLARE_INTERFACE_(INTERFACE, IDispatch)
{
 HRESULT (STDMETHODCALLTYPE *QueryInterface)(IAgentBalloonEx *This, GUID* riid, void** ppvObj);
 ULONG (STDMETHODCALLTYPE *AddRef)(IAgentBalloonEx *This);
 ULONG (STDMETHODCALLTYPE *Release)(IAgentBalloonEx *This);
 HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(IAgentBalloonEx *This, UINT* pctinfo);
 HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(IAgentBalloonEx *This, UINT itinfo, ULONG lcid, void** pptinfo);
 HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(IAgentBalloonEx *This, GUID* riid, char** rgszNames, UINT cNames, ULONG lcid, LONG* rgdispid);
 HRESULT (STDMETHODCALLTYPE *Invoke)(IAgentBalloonEx *This, LONG dispidMember, GUID* riid, ULONG lcid, USHORT wFlags, DISPPARAMS* pdispparams, VARIANT* pvarResult, EXCEPINFO* pexcepinfo, UINT* puArgErr);
 HRESULT (STDMETHODCALLTYPE *GetEnabled)(IAgentBalloonEx *This, LONG* pbEnabled);
 HRESULT (STDMETHODCALLTYPE *GetNumLines)(IAgentBalloonEx *This, LONG* plLines);
 HRESULT (STDMETHODCALLTYPE *GetNumCharsPerLine)(IAgentBalloonEx *This, LONG* plCharsPerLine);
 HRESULT (STDMETHODCALLTYPE *GetFontName)(IAgentBalloonEx *This, BSTR* pbszFontName);
 HRESULT (STDMETHODCALLTYPE *GetFontSize)(IAgentBalloonEx *This, LONG* plFontSize);
 HRESULT (STDMETHODCALLTYPE *GetFontBold)(IAgentBalloonEx *This, LONG* pbFontBold);
 HRESULT (STDMETHODCALLTYPE *GetFontItalic)(IAgentBalloonEx *This, LONG* pbFontItalic);
 HRESULT (STDMETHODCALLTYPE *GetFontStrikethru)(IAgentBalloonEx *This, LONG* pbFontStrikethru);
 HRESULT (STDMETHODCALLTYPE *GetFontUnderline)(IAgentBalloonEx *This, LONG* pbFontUnderline);
 HRESULT (STDMETHODCALLTYPE *GetForeColor)(IAgentBalloonEx *This, LONG* plFGColor);
 HRESULT (STDMETHODCALLTYPE *GetBackColor)(IAgentBalloonEx *This, LONG* plBGColor);
 HRESULT (STDMETHODCALLTYPE *GetBorderColor)(IAgentBalloonEx *This, LONG* plBorderColor);
 HRESULT (STDMETHODCALLTYPE *SetVisible)(IAgentBalloonEx *This, LONG bVisible);
 HRESULT (STDMETHODCALLTYPE *GetVisible)(IAgentBalloonEx *This, LONG* pbVisible);
 HRESULT (STDMETHODCALLTYPE *SetFontName)(IAgentBalloonEx *This, BSTR bszFontName);
 HRESULT (STDMETHODCALLTYPE *SetFontSize)(IAgentBalloonEx *This, LONG lFontSize);
 HRESULT (STDMETHODCALLTYPE *SetFontCharSet)(IAgentBalloonEx *This, SHORT sFontCharSet);
 HRESULT (STDMETHODCALLTYPE *GetFontCharSet)(IAgentBalloonEx *This, SHORT* psFontCharSet);
 HRESULT (STDMETHODCALLTYPE *SetStyle)(IAgentBalloonEx *This, LONG lStyle);
 HRESULT (STDMETHODCALLTYPE *GetStyle)(IAgentBalloonEx *This, LONG* plStyle);
 HRESULT (STDMETHODCALLTYPE *SetNumLines)(IAgentBalloonEx *This, LONG lLines);
 HRESULT (STDMETHODCALLTYPE *SetNumCharsPerLine)(IAgentBalloonEx *This, LONG lCharsPerLine);
};

#define IAgentBalloonEx_QueryInterface(ip, p1, p2) (ip)->lpVtbl->QueryInterface(ip, p1, p2)
#define IAgentBalloonEx_AddRef(ip) (ip)->lpVtbl->AddRef(ip)
#define IAgentBalloonEx_Release(ip) (ip)->lpVtbl->Release(ip)
#define IAgentBalloonEx_GetTypeInfoCount(ip, p1) (ip)->lpVtbl->GetTypeInfoCount(ip, p1)
#define IAgentBalloonEx_GetTypeInfo(ip, p1, p2, p3) (ip)->lpVtbl->GetTypeInfo(ip, p1, p2, p3)
#define IAgentBalloonEx_GetIDsOfNames(ip, p1, p2, p3, p4, p5) (ip)->lpVtbl->GetIDsOfNames(ip, p1, p2, p3, p4, p5)
#define IAgentBalloonEx_Invoke(ip, p1, p2, p3, p4, p5, p6, p7, p8) (ip)->lpVtbl->Invoke(ip, p1, p2, p3, p4, p5, p6, p7, p8)
#define IAgentBalloonEx_GetEnabled(ip, p1) (ip)->lpVtbl->GetEnabled(ip, p1)
#define IAgentBalloonEx_GetNumLines(ip, p1) (ip)->lpVtbl->GetNumLines(ip, p1)
#define IAgentBalloonEx_GetNumCharsPerLine(ip, p1) (ip)->lpVtbl->GetNumCharsPerLine(ip, p1)
#define IAgentBalloonEx_GetFontName(ip, p1) (ip)->lpVtbl->GetFontName(ip, p1)
#define IAgentBalloonEx_GetFontSize(ip, p1) (ip)->lpVtbl->GetFontSize(ip, p1)
#define IAgentBalloonEx_GetFontBold(ip, p1) (ip)->lpVtbl->GetFontBold(ip, p1)
#define IAgentBalloonEx_GetFontItalic(ip, p1) (ip)->lpVtbl->GetFontItalic(ip, p1)
#define IAgentBalloonEx_GetFontStrikethru(ip, p1) (ip)->lpVtbl->GetFontStrikethru(ip, p1)
#define IAgentBalloonEx_GetFontUnderline(ip, p1) (ip)->lpVtbl->GetFontUnderline(ip, p1)
#define IAgentBalloonEx_GetForeColor(ip, p1) (ip)->lpVtbl->GetForeColor(ip, p1)
#define IAgentBalloonEx_GetBackColor(ip, p1) (ip)->lpVtbl->GetBackColor(ip, p1)
#define IAgentBalloonEx_GetBorderColor(ip, p1) (ip)->lpVtbl->GetBorderColor(ip, p1)
#define IAgentBalloonEx_SetVisible(ip, p1) (ip)->lpVtbl->SetVisible(ip, p1)
#define IAgentBalloonEx_GetVisible(ip, p1) (ip)->lpVtbl->GetVisible(ip, p1)
#define IAgentBalloonEx_SetFontName(ip, p1) (ip)->lpVtbl->SetFontName(ip, p1)
#define IAgentBalloonEx_SetFontSize(ip, p1) (ip)->lpVtbl->SetFontSize(ip, p1)
#define IAgentBalloonEx_SetFontCharSet(ip, p1) (ip)->lpVtbl->SetFontCharSet(ip, p1)
#define IAgentBalloonEx_GetFontCharSet(ip, p1) (ip)->lpVtbl->GetFontCharSet(ip, p1)
#define IAgentBalloonEx_SetStyle(ip, p1) (ip)->lpVtbl->SetStyle(ip, p1)
#define IAgentBalloonEx_GetStyle(ip, p1) (ip)->lpVtbl->GetStyle(ip, p1)
#define IAgentBalloonEx_SetNumLines(ip, p1) (ip)->lpVtbl->SetNumLines(ip, p1)
#define IAgentBalloonEx_SetNumCharsPerLine(ip, p1) (ip)->lpVtbl->SetNumCharsPerLine(ip, p1)

#endif // LCC_IAgentBalloonEx_DEFINED

#ifndef LCC_IAgentCharacter_DEFINED
#define LCC_IAgentCharacter_DEFINED

DEFINE_GUID(IID_IAgentCharacter, 0xa7b93c8f,0x7b81,0x11d0,0xac, 0x5f, 0x0, 0xc0, 0x4f, 0xd9, 0x75, 0x75);

typedef interface IAgentCharacter IAgentCharacter;

#undef INTERFACE
#define INTERFACE IAgentCharacter

DECLARE_INTERFACE_(INTERFACE, IDispatch)
{
 HRESULT (STDMETHODCALLTYPE *QueryInterface)(IAgentCharacter *This, GUID* riid, void** ppvObj);
 ULONG (STDMETHODCALLTYPE *AddRef)(IAgentCharacter *This);
 ULONG (STDMETHODCALLTYPE *Release)(IAgentCharacter *This);
 HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(IAgentCharacter *This, UINT* pctinfo);
 HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(IAgentCharacter *This, UINT itinfo, ULONG lcid, void** pptinfo);
 HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(IAgentCharacter *This, GUID* riid, char** rgszNames, UINT cNames, ULONG lcid, LONG* rgdispid);
 HRESULT (STDMETHODCALLTYPE *Invoke)(IAgentCharacter *This, LONG dispidMember, GUID* riid, ULONG lcid, USHORT wFlags, DISPPARAMS* pdispparams, VARIANT* pvarResult, EXCEPINFO* pexcepinfo, UINT* puArgErr);
 HRESULT (STDMETHODCALLTYPE *GetVisible)(IAgentCharacter *This, LONG* pbVisible);
 HRESULT (STDMETHODCALLTYPE *SetPosition)(IAgentCharacter *This, LONG lLeft, LONG lTop);
 HRESULT (STDMETHODCALLTYPE *GetPosition)(IAgentCharacter *This, LONG* plLeft, LONG* plTop);
 HRESULT (STDMETHODCALLTYPE *SetSize)(IAgentCharacter *This, LONG lWidth, LONG lHeight);
 HRESULT (STDMETHODCALLTYPE *GetSize)(IAgentCharacter *This, LONG* plWidth, LONG* plHeight);
 HRESULT (STDMETHODCALLTYPE *GetName)(IAgentCharacter *This, BSTR* pbszName);
 HRESULT (STDMETHODCALLTYPE *GetDescription)(IAgentCharacter *This, BSTR* pbszDescription);
 HRESULT (STDMETHODCALLTYPE *GetTTSSpeed)(IAgentCharacter *This, LONG* pdwSpeed);
 HRESULT (STDMETHODCALLTYPE *GetTTSPitch)(IAgentCharacter *This, SHORT* pwPitch);
 HRESULT (STDMETHODCALLTYPE *Activate)(IAgentCharacter *This, SHORT sState);
 HRESULT (STDMETHODCALLTYPE *SetIdleOn)(IAgentCharacter *This, LONG bOn);
 HRESULT (STDMETHODCALLTYPE *GetIdleOn)(IAgentCharacter *This, LONG* pbOn);
 HRESULT (STDMETHODCALLTYPE *Prepare)(IAgentCharacter *This, LONG dwType, BSTR bszName, LONG bQueue, LONG* pdwReqID);
 HRESULT (STDMETHODCALLTYPE *Play)(IAgentCharacter *This, BSTR bszAnimation, LONG* pdwReqID);
 HRESULT (STDMETHODCALLTYPE *Stop)(IAgentCharacter *This, LONG dwReqID);
 HRESULT (STDMETHODCALLTYPE *StopAll)(IAgentCharacter *This, LONG lTypes);
 HRESULT (STDMETHODCALLTYPE *Wait)(IAgentCharacter *This, LONG dwReqID, LONG* pdwReqID);
 HRESULT (STDMETHODCALLTYPE *Interrupt)(IAgentCharacter *This, LONG dwReqID, LONG* pdwReqID);
 HRESULT (STDMETHODCALLTYPE *Show)(IAgentCharacter *This, LONG bFast, LONG* pdwReqID);
 HRESULT (STDMETHODCALLTYPE *Hide)(IAgentCharacter *This, LONG bFast, LONG* pdwReqID);
 HRESULT (STDMETHODCALLTYPE *Speak)(IAgentCharacter *This, BSTR bszText, BSTR bszUrl, LONG* pdwReqID);
 HRESULT (STDMETHODCALLTYPE *MoveTo)(IAgentCharacter *This, SHORT x, SHORT y, LONG lSpeed, LONG* pdwReqID);
 HRESULT (STDMETHODCALLTYPE *GestureAt)(IAgentCharacter *This, SHORT x, SHORT y, LONG* pdwReqID);
 HRESULT (STDMETHODCALLTYPE *GetMoveCause)(IAgentCharacter *This, LONG* pdwCause);
 HRESULT (STDMETHODCALLTYPE *GetVisibilityCause)(IAgentCharacter *This, LONG* pdwCause);
 HRESULT (STDMETHODCALLTYPE *HasOtherClients)(IAgentCharacter *This, LONG* plNumOtherClients);
 HRESULT (STDMETHODCALLTYPE *SetSoundEffectsOn)(IAgentCharacter *This, LONG bOn);
 HRESULT (STDMETHODCALLTYPE *GetSoundEffectsOn)(IAgentCharacter *This, LONG* pbOn);
 HRESULT (STDMETHODCALLTYPE *SetName)(IAgentCharacter *This, BSTR bszName);
 HRESULT (STDMETHODCALLTYPE *SetDescription)(IAgentCharacter *This, BSTR bszDescription);
 HRESULT (STDMETHODCALLTYPE *GetExtraData)(IAgentCharacter *This, BSTR* pbszExtraData);
};

#define IAgentCharacter_QueryInterface(ip, p1, p2) (ip)->lpVtbl->QueryInterface(ip, p1, p2)
#define IAgentCharacter_AddRef(ip) (ip)->lpVtbl->AddRef(ip)
#define IAgentCharacter_Release(ip) (ip)->lpVtbl->Release(ip)
#define IAgentCharacter_GetTypeInfoCount(ip, p1) (ip)->lpVtbl->GetTypeInfoCount(ip, p1)
#define IAgentCharacter_GetTypeInfo(ip, p1, p2, p3) (ip)->lpVtbl->GetTypeInfo(ip, p1, p2, p3)
#define IAgentCharacter_GetIDsOfNames(ip, p1, p2, p3, p4, p5) (ip)->lpVtbl->GetIDsOfNames(ip, p1, p2, p3, p4, p5)
#define IAgentCharacter_Invoke(ip, p1, p2, p3, p4, p5, p6, p7, p8) (ip)->lpVtbl->Invoke(ip, p1, p2, p3, p4, p5, p6, p7, p8)
#define IAgentCharacter_GetVisible(ip, p1) (ip)->lpVtbl->GetVisible(ip, p1)
#define IAgentCharacter_SetPosition(ip, p1, p2) (ip)->lpVtbl->SetPosition(ip, p1, p2)
#define IAgentCharacter_GetPosition(ip, p1, p2) (ip)->lpVtbl->GetPosition(ip, p1, p2)
#define IAgentCharacter_SetSize(ip, p1, p2) (ip)->lpVtbl->SetSize(ip, p1, p2)
#define IAgentCharacter_GetSize(ip, p1, p2) (ip)->lpVtbl->GetSize(ip, p1, p2)
#define IAgentCharacter_GetName(ip, p1) (ip)->lpVtbl->GetName(ip, p1)
#define IAgentCharacter_GetDescription(ip, p1) (ip)->lpVtbl->GetDescription(ip, p1)
#define IAgentCharacter_GetTTSSpeed(ip, p1) (ip)->lpVtbl->GetTTSSpeed(ip, p1)
#define IAgentCharacter_GetTTSPitch(ip, p1) (ip)->lpVtbl->GetTTSPitch(ip, p1)
#define IAgentCharacter_Activate(ip, p1) (ip)->lpVtbl->Activate(ip, p1)
#define IAgentCharacter_SetIdleOn(ip, p1) (ip)->lpVtbl->SetIdleOn(ip, p1)
#define IAgentCharacter_GetIdleOn(ip, p1) (ip)->lpVtbl->GetIdleOn(ip, p1)
#define IAgentCharacter_Prepare(ip, p1, p2, p3, p4) (ip)->lpVtbl->Prepare(ip, p1, p2, p3, p4)
#define IAgentCharacter_Play(ip, p1, p2) (ip)->lpVtbl->Play(ip, p1, p2)
#define IAgentCharacter_Stop(ip, p1) (ip)->lpVtbl->Stop(ip, p1)
#define IAgentCharacter_StopAll(ip, p1) (ip)->lpVtbl->StopAll(ip, p1)
#define IAgentCharacter_Wait(ip, p1, p2) (ip)->lpVtbl->Wait(ip, p1, p2)
#define IAgentCharacter_Interrupt(ip, p1, p2) (ip)->lpVtbl->Interrupt(ip, p1, p2)
#define IAgentCharacter_Show(ip, p1, p2) (ip)->lpVtbl->Show(ip, p1, p2)
#define IAgentCharacter_Hide(ip, p1, p2) (ip)->lpVtbl->Hide(ip, p1, p2)
#define IAgentCharacter_Speak(ip, p1, p2, p3) (ip)->lpVtbl->Speak(ip, p1, p2, p3)
#define IAgentCharacter_MoveTo(ip, p1, p2, p3, p4) (ip)->lpVtbl->MoveTo(ip, p1, p2, p3, p4)
#define IAgentCharacter_GestureAt(ip, p1, p2, p3) (ip)->lpVtbl->GestureAt(ip, p1, p2, p3)
#define IAgentCharacter_GetMoveCause(ip, p1) (ip)->lpVtbl->GetMoveCause(ip, p1)
#define IAgentCharacter_GetVisibilityCause(ip, p1) (ip)->lpVtbl->GetVisibilityCause(ip, p1)
#define IAgentCharacter_HasOtherClients(ip, p1) (ip)->lpVtbl->HasOtherClients(ip, p1)
#define IAgentCharacter_SetSoundEffectsOn(ip, p1) (ip)->lpVtbl->SetSoundEffectsOn(ip, p1)
#define IAgentCharacter_GetSoundEffectsOn(ip, p1) (ip)->lpVtbl->GetSoundEffectsOn(ip, p1)
#define IAgentCharacter_SetName(ip, p1) (ip)->lpVtbl->SetName(ip, p1)
#define IAgentCharacter_SetDescription(ip, p1) (ip)->lpVtbl->SetDescription(ip, p1)
#define IAgentCharacter_GetExtraData(ip, p1) (ip)->lpVtbl->GetExtraData(ip, p1)

#endif // LCC_IAgentCharacter_DEFINED

#ifndef LCC_IAgentCharacterEx_DEFINED
#define LCC_IAgentCharacterEx_DEFINED

DEFINE_GUID(IID_IAgentCharacterEx, 0x98bbe491,0x2eed,0x11d1,0xac, 0xac, 0x0, 0xc0, 0x4f, 0xd9, 0x75, 0x75);

typedef interface IAgentCharacterEx IAgentCharacterEx;

#undef INTERFACE
#define INTERFACE IAgentCharacterEx

DECLARE_INTERFACE_(INTERFACE, IDispatch)
{
 HRESULT (STDMETHODCALLTYPE *QueryInterface)(IAgentCharacterEx *This, GUID* riid, void** ppvObj);
 ULONG (STDMETHODCALLTYPE *AddRef)(IAgentCharacterEx *This);
 ULONG (STDMETHODCALLTYPE *Release)(IAgentCharacterEx *This);
 HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(IAgentCharacterEx *This, UINT* pctinfo);
 HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(IAgentCharacterEx *This, UINT itinfo, ULONG lcid, void** pptinfo);
 HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(IAgentCharacterEx *This, GUID* riid, char** rgszNames, UINT cNames, ULONG lcid, LONG* rgdispid);
 HRESULT (STDMETHODCALLTYPE *Invoke)(IAgentCharacterEx *This, LONG dispidMember, GUID* riid, ULONG lcid, USHORT wFlags, DISPPARAMS* pdispparams, VARIANT* pvarResult, EXCEPINFO* pexcepinfo, UINT* puArgErr);
 HRESULT (STDMETHODCALLTYPE *GetVisible)(IAgentCharacterEx *This, LONG* pbVisible);
 HRESULT (STDMETHODCALLTYPE *SetPosition)(IAgentCharacterEx *This, LONG lLeft, LONG lTop);
 HRESULT (STDMETHODCALLTYPE *GetPosition)(IAgentCharacterEx *This, LONG* plLeft, LONG* plTop);
 HRESULT (STDMETHODCALLTYPE *SetSize)(IAgentCharacterEx *This, LONG lWidth, LONG lHeight);
 HRESULT (STDMETHODCALLTYPE *GetSize)(IAgentCharacterEx *This, LONG* plWidth, LONG* plHeight);
 HRESULT (STDMETHODCALLTYPE *GetName)(IAgentCharacterEx *This, BSTR* pbszName);
 HRESULT (STDMETHODCALLTYPE *GetDescription)(IAgentCharacterEx *This, BSTR* pbszDescription);
 HRESULT (STDMETHODCALLTYPE *GetTTSSpeed)(IAgentCharacterEx *This, LONG* pdwSpeed);
 HRESULT (STDMETHODCALLTYPE *GetTTSPitch)(IAgentCharacterEx *This, SHORT* pwPitch);
 HRESULT (STDMETHODCALLTYPE *Activate)(IAgentCharacterEx *This, SHORT sState);
 HRESULT (STDMETHODCALLTYPE *SetIdleOn)(IAgentCharacterEx *This, LONG bOn);
 HRESULT (STDMETHODCALLTYPE *GetIdleOn)(IAgentCharacterEx *This, LONG* pbOn);
 HRESULT (STDMETHODCALLTYPE *Prepare)(IAgentCharacterEx *This, LONG dwType, BSTR bszName, LONG bQueue, LONG* pdwReqID);
 HRESULT (STDMETHODCALLTYPE *Play)(IAgentCharacterEx *This, BSTR bszAnimation, LONG* pdwReqID);
 HRESULT (STDMETHODCALLTYPE *Stop)(IAgentCharacterEx *This, LONG dwReqID);
 HRESULT (STDMETHODCALLTYPE *StopAll)(IAgentCharacterEx *This, LONG lTypes);
 HRESULT (STDMETHODCALLTYPE *Wait)(IAgentCharacterEx *This, LONG dwReqID, LONG* pdwReqID);
 HRESULT (STDMETHODCALLTYPE *Interrupt)(IAgentCharacterEx *This, LONG dwReqID, LONG* pdwReqID);
 HRESULT (STDMETHODCALLTYPE *Show)(IAgentCharacterEx *This, LONG bFast, LONG* pdwReqID);
 HRESULT (STDMETHODCALLTYPE *Hide)(IAgentCharacterEx *This, LONG bFast, LONG* pdwReqID);
 HRESULT (STDMETHODCALLTYPE *Speak)(IAgentCharacterEx *This, BSTR bszText, BSTR bszUrl, LONG* pdwReqID);
 HRESULT (STDMETHODCALLTYPE *MoveTo)(IAgentCharacterEx *This, SHORT x, SHORT y, LONG lSpeed, LONG* pdwReqID);
 HRESULT (STDMETHODCALLTYPE *GestureAt)(IAgentCharacterEx *This, SHORT x, SHORT y, LONG* pdwReqID);
 HRESULT (STDMETHODCALLTYPE *GetMoveCause)(IAgentCharacterEx *This, LONG* pdwCause);
 HRESULT (STDMETHODCALLTYPE *GetVisibilityCause)(IAgentCharacterEx *This, LONG* pdwCause);
 HRESULT (STDMETHODCALLTYPE *HasOtherClients)(IAgentCharacterEx *This, LONG* plNumOtherClients);
 HRESULT (STDMETHODCALLTYPE *SetSoundEffectsOn)(IAgentCharacterEx *This, LONG bOn);
 HRESULT (STDMETHODCALLTYPE *GetSoundEffectsOn)(IAgentCharacterEx *This, LONG* pbOn);
 HRESULT (STDMETHODCALLTYPE *SetName)(IAgentCharacterEx *This, BSTR bszName);
 HRESULT (STDMETHODCALLTYPE *SetDescription)(IAgentCharacterEx *This, BSTR bszDescription);
 HRESULT (STDMETHODCALLTYPE *GetExtraData)(IAgentCharacterEx *This, BSTR* pbszExtraData);
 HRESULT (STDMETHODCALLTYPE *ShowPopupMenu)(IAgentCharacterEx *This, SHORT x, SHORT y);
 HRESULT (STDMETHODCALLTYPE *SetAutoPopupMenu)(IAgentCharacterEx *This, LONG bAutoPopupMenu);
 HRESULT (STDMETHODCALLTYPE *GetAutoPopupMenu)(IAgentCharacterEx *This, LONG* pbAutoPopupMenu);
 HRESULT (STDMETHODCALLTYPE *GetHelpFileName)(IAgentCharacterEx *This, BSTR* pbszName);
 HRESULT (STDMETHODCALLTYPE *SetHelpFileName)(IAgentCharacterEx *This, BSTR bszName);
 HRESULT (STDMETHODCALLTYPE *SetHelpModeOn)(IAgentCharacterEx *This, LONG bHelpModeOn);
 HRESULT (STDMETHODCALLTYPE *GetHelpModeOn)(IAgentCharacterEx *This, LONG* pbHelpModeOn);
 HRESULT (STDMETHODCALLTYPE *SetHelpContextID)(IAgentCharacterEx *This, LONG ulID);
 HRESULT (STDMETHODCALLTYPE *GetHelpContextID)(IAgentCharacterEx *This, LONG* pulID);
 HRESULT (STDMETHODCALLTYPE *GetActive)(IAgentCharacterEx *This, SHORT* psState);
 HRESULT (STDMETHODCALLTYPE *Listen)(IAgentCharacterEx *This, LONG bListen);
 HRESULT (STDMETHODCALLTYPE *SetLanguageID)(IAgentCharacterEx *This, LONG langid);
 HRESULT (STDMETHODCALLTYPE *GetLanguageID)(IAgentCharacterEx *This, LONG* plangid);
 HRESULT (STDMETHODCALLTYPE *GetTTSModeID)(IAgentCharacterEx *This, BSTR* pbszModeID);
 HRESULT (STDMETHODCALLTYPE *SetTTSModeID)(IAgentCharacterEx *This, BSTR bszModeID);
 HRESULT (STDMETHODCALLTYPE *GetSRModeID)(IAgentCharacterEx *This, BSTR* pbszModeID);
 HRESULT (STDMETHODCALLTYPE *SetSRModeID)(IAgentCharacterEx *This, BSTR bszModeID);
 HRESULT (STDMETHODCALLTYPE *GetGUID)(IAgentCharacterEx *This, BSTR* pbszID);
 HRESULT (STDMETHODCALLTYPE *GetOriginalSize)(IAgentCharacterEx *This, LONG* plWidth, LONG* plHeight);
 HRESULT (STDMETHODCALLTYPE *Think)(IAgentCharacterEx *This, BSTR bszText, LONG* pdwReqID);
 HRESULT (STDMETHODCALLTYPE *GetVersion)(IAgentCharacterEx *This, SHORT* psMajor, SHORT* psMinor);
 HRESULT (STDMETHODCALLTYPE *GetAnimationNames)(IAgentCharacterEx *This, IUnknown** punkEnum);
 HRESULT (STDMETHODCALLTYPE *GetSRStatus)(IAgentCharacterEx *This, LONG* plStatus);
};

#define IAgentCharacterEx_QueryInterface(ip, p1, p2) (ip)->lpVtbl->QueryInterface(ip, p1, p2)
#define IAgentCharacterEx_AddRef(ip) (ip)->lpVtbl->AddRef(ip)
#define IAgentCharacterEx_Release(ip) (ip)->lpVtbl->Release(ip)
#define IAgentCharacterEx_GetTypeInfoCount(ip, p1) (ip)->lpVtbl->GetTypeInfoCount(ip, p1)
#define IAgentCharacterEx_GetTypeInfo(ip, p1, p2, p3) (ip)->lpVtbl->GetTypeInfo(ip, p1, p2, p3)
#define IAgentCharacterEx_GetIDsOfNames(ip, p1, p2, p3, p4, p5) (ip)->lpVtbl->GetIDsOfNames(ip, p1, p2, p3, p4, p5)
#define IAgentCharacterEx_Invoke(ip, p1, p2, p3, p4, p5, p6, p7, p8) (ip)->lpVtbl->Invoke(ip, p1, p2, p3, p4, p5, p6, p7, p8)
#define IAgentCharacterEx_GetVisible(ip, p1) (ip)->lpVtbl->GetVisible(ip, p1)
#define IAgentCharacterEx_SetPosition(ip, p1, p2) (ip)->lpVtbl->SetPosition(ip, p1, p2)
#define IAgentCharacterEx_GetPosition(ip, p1, p2) (ip)->lpVtbl->GetPosition(ip, p1, p2)
#define IAgentCharacterEx_SetSize(ip, p1, p2) (ip)->lpVtbl->SetSize(ip, p1, p2)
#define IAgentCharacterEx_GetSize(ip, p1, p2) (ip)->lpVtbl->GetSize(ip, p1, p2)
#define IAgentCharacterEx_GetName(ip, p1) (ip)->lpVtbl->GetName(ip, p1)
#define IAgentCharacterEx_GetDescription(ip, p1) (ip)->lpVtbl->GetDescription(ip, p1)
#define IAgentCharacterEx_GetTTSSpeed(ip, p1) (ip)->lpVtbl->GetTTSSpeed(ip, p1)
#define IAgentCharacterEx_GetTTSPitch(ip, p1) (ip)->lpVtbl->GetTTSPitch(ip, p1)
#define IAgentCharacterEx_Activate(ip, p1) (ip)->lpVtbl->Activate(ip, p1)
#define IAgentCharacterEx_SetIdleOn(ip, p1) (ip)->lpVtbl->SetIdleOn(ip, p1)
#define IAgentCharacterEx_GetIdleOn(ip, p1) (ip)->lpVtbl->GetIdleOn(ip, p1)
#define IAgentCharacterEx_Prepare(ip, p1, p2, p3, p4) (ip)->lpVtbl->Prepare(ip, p1, p2, p3, p4)
#define IAgentCharacterEx_Play(ip, p1, p2) (ip)->lpVtbl->Play(ip, p1, p2)
#define IAgentCharacterEx_Stop(ip, p1) (ip)->lpVtbl->Stop(ip, p1)
#define IAgentCharacterEx_StopAll(ip, p1) (ip)->lpVtbl->StopAll(ip, p1)
#define IAgentCharacterEx_Wait(ip, p1, p2) (ip)->lpVtbl->Wait(ip, p1, p2)
#define IAgentCharacterEx_Interrupt(ip, p1, p2) (ip)->lpVtbl->Interrupt(ip, p1, p2)
#define IAgentCharacterEx_Show(ip, p1, p2) (ip)->lpVtbl->Show(ip, p1, p2)
#define IAgentCharacterEx_Hide(ip, p1, p2) (ip)->lpVtbl->Hide(ip, p1, p2)
#define IAgentCharacterEx_Speak(ip, p1, p2, p3) (ip)->lpVtbl->Speak(ip, p1, p2, p3)
#define IAgentCharacterEx_MoveTo(ip, p1, p2, p3, p4) (ip)->lpVtbl->MoveTo(ip, p1, p2, p3, p4)
#define IAgentCharacterEx_GestureAt(ip, p1, p2, p3) (ip)->lpVtbl->GestureAt(ip, p1, p2, p3)
#define IAgentCharacterEx_GetMoveCause(ip, p1) (ip)->lpVtbl->GetMoveCause(ip, p1)
#define IAgentCharacterEx_GetVisibilityCause(ip, p1) (ip)->lpVtbl->GetVisibilityCause(ip, p1)
#define IAgentCharacterEx_HasOtherClients(ip, p1) (ip)->lpVtbl->HasOtherClients(ip, p1)
#define IAgentCharacterEx_SetSoundEffectsOn(ip, p1) (ip)->lpVtbl->SetSoundEffectsOn(ip, p1)
#define IAgentCharacterEx_GetSoundEffectsOn(ip, p1) (ip)->lpVtbl->GetSoundEffectsOn(ip, p1)
#define IAgentCharacterEx_SetName(ip, p1) (ip)->lpVtbl->SetName(ip, p1)
#define IAgentCharacterEx_SetDescription(ip, p1) (ip)->lpVtbl->SetDescription(ip, p1)
#define IAgentCharacterEx_GetExtraData(ip, p1) (ip)->lpVtbl->GetExtraData(ip, p1)
#define IAgentCharacterEx_ShowPopupMenu(ip, p1, p2) (ip)->lpVtbl->ShowPopupMenu(ip, p1, p2)
#define IAgentCharacterEx_SetAutoPopupMenu(ip, p1) (ip)->lpVtbl->SetAutoPopupMenu(ip, p1)
#define IAgentCharacterEx_GetAutoPopupMenu(ip, p1) (ip)->lpVtbl->GetAutoPopupMenu(ip, p1)
#define IAgentCharacterEx_GetHelpFileName(ip, p1) (ip)->lpVtbl->GetHelpFileName(ip, p1)
#define IAgentCharacterEx_SetHelpFileName(ip, p1) (ip)->lpVtbl->SetHelpFileName(ip, p1)
#define IAgentCharacterEx_SetHelpModeOn(ip, p1) (ip)->lpVtbl->SetHelpModeOn(ip, p1)
#define IAgentCharacterEx_GetHelpModeOn(ip, p1) (ip)->lpVtbl->GetHelpModeOn(ip, p1)
#define IAgentCharacterEx_SetHelpContextID(ip, p1) (ip)->lpVtbl->SetHelpContextID(ip, p1)
#define IAgentCharacterEx_GetHelpContextID(ip, p1) (ip)->lpVtbl->GetHelpContextID(ip, p1)
#define IAgentCharacterEx_GetActive(ip, p1) (ip)->lpVtbl->GetActive(ip, p1)
#define IAgentCharacterEx_Listen(ip, p1) (ip)->lpVtbl->Listen(ip, p1)
#define IAgentCharacterEx_SetLanguageID(ip, p1) (ip)->lpVtbl->SetLanguageID(ip, p1)
#define IAgentCharacterEx_GetLanguageID(ip, p1) (ip)->lpVtbl->GetLanguageID(ip, p1)
#define IAgentCharacterEx_GetTTSModeID(ip, p1) (ip)->lpVtbl->GetTTSModeID(ip, p1)
#define IAgentCharacterEx_SetTTSModeID(ip, p1) (ip)->lpVtbl->SetTTSModeID(ip, p1)
#define IAgentCharacterEx_GetSRModeID(ip, p1) (ip)->lpVtbl->GetSRModeID(ip, p1)
#define IAgentCharacterEx_SetSRModeID(ip, p1) (ip)->lpVtbl->SetSRModeID(ip, p1)
#define IAgentCharacterEx_GetGUID(ip, p1) (ip)->lpVtbl->GetGUID(ip, p1)
#define IAgentCharacterEx_GetOriginalSize(ip, p1, p2) (ip)->lpVtbl->GetOriginalSize(ip, p1, p2)
#define IAgentCharacterEx_Think(ip, p1, p2) (ip)->lpVtbl->Think(ip, p1, p2)
#define IAgentCharacterEx_GetVersion(ip, p1, p2) (ip)->lpVtbl->GetVersion(ip, p1, p2)
#define IAgentCharacterEx_GetAnimationNames(ip, p1) (ip)->lpVtbl->GetAnimationNames(ip, p1)
#define IAgentCharacterEx_GetSRStatus(ip, p1) (ip)->lpVtbl->GetSRStatus(ip, p1)

#endif // LCC_IAgentCharacterEx_DEFINED

#ifndef LCC_IAgentEx_DEFINED
#define LCC_IAgentEx_DEFINED

DEFINE_GUID(IID_IAgentEx, 0x48d12ba0,0x5b77,0x11d1,0x9e, 0xc1, 0x0, 0xc0, 0x4f, 0xd7, 0x8, 0x1f);

typedef interface IAgentEx IAgentEx;

#undef INTERFACE
#define INTERFACE IAgentEx

DECLARE_INTERFACE_(INTERFACE, IDispatch)
{
 HRESULT (STDMETHODCALLTYPE *QueryInterface)(IAgentEx *This, GUID* riid, void** ppvObj);
 ULONG (STDMETHODCALLTYPE *AddRef)(IAgentEx *This);
 ULONG (STDMETHODCALLTYPE *Release)(IAgentEx *This);
 HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(IAgentEx *This, UINT* pctinfo);
 HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(IAgentEx *This, UINT itinfo, ULONG lcid, void** pptinfo);
 HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(IAgentEx *This, GUID* riid, char** rgszNames, UINT cNames, ULONG lcid, LONG* rgdispid);
 HRESULT (STDMETHODCALLTYPE *Invoke)(IAgentEx *This, LONG dispidMember, GUID* riid, ULONG lcid, USHORT wFlags, DISPPARAMS* pdispparams, VARIANT* pvarResult, EXCEPINFO* pexcepinfo, UINT* puArgErr);
 HRESULT (STDMETHODCALLTYPE *Load)(IAgentEx *This, VARIANT vLoadKey, LONG* pdwCharID, LONG* pdwReqID);
 HRESULT (STDMETHODCALLTYPE *Unload)(IAgentEx *This, LONG dwCharID);
 HRESULT (STDMETHODCALLTYPE *Register)(IAgentEx *This, IUnknown* punkNotifySink, LONG* pdwSinkID);
 HRESULT (STDMETHODCALLTYPE *Unregister)(IAgentEx *This, LONG dwSinkID);
 HRESULT (STDMETHODCALLTYPE *GetCharacter)(IAgentEx *This, LONG dwCharID, IDispatch** ppunkCharacter);
 HRESULT (STDMETHODCALLTYPE *GetSuspended)(IAgentEx *This, LONG* pbSuspended);
 HRESULT (STDMETHODCALLTYPE *GetCharacterEx)(IAgentEx *This, LONG dwCharID, struct IAgentCharacterEx** ppCharacterEx);
 HRESULT (STDMETHODCALLTYPE *GetVersion)(IAgentEx *This, SHORT* psMajor, SHORT* psMinor);
 HRESULT (STDMETHODCALLTYPE *ShowDefaultCharacterProperties)(IAgentEx *This, SHORT x, SHORT y, LONG bUseDefaultPosition);
};

#define IAgentEx_QueryInterface(ip, p1, p2) (ip)->lpVtbl->QueryInterface(ip, p1, p2)
#define IAgentEx_AddRef(ip) (ip)->lpVtbl->AddRef(ip)
#define IAgentEx_Release(ip) (ip)->lpVtbl->Release(ip)
#define IAgentEx_GetTypeInfoCount(ip, p1) (ip)->lpVtbl->GetTypeInfoCount(ip, p1)
#define IAgentEx_GetTypeInfo(ip, p1, p2, p3) (ip)->lpVtbl->GetTypeInfo(ip, p1, p2, p3)
#define IAgentEx_GetIDsOfNames(ip, p1, p2, p3, p4, p5) (ip)->lpVtbl->GetIDsOfNames(ip, p1, p2, p3, p4, p5)
#define IAgentEx_Invoke(ip, p1, p2, p3, p4, p5, p6, p7, p8) (ip)->lpVtbl->Invoke(ip, p1, p2, p3, p4, p5, p6, p7, p8)
#define IAgentEx_Load(ip, p1, p2, p3) (ip)->lpVtbl->Load(ip, p1, p2, p3)
#define IAgentEx_Unload(ip, p1) (ip)->lpVtbl->Unload(ip, p1)
#define IAgentEx_Register(ip, p1, p2) (ip)->lpVtbl->Register(ip, p1, p2)
#define IAgentEx_Unregister(ip, p1) (ip)->lpVtbl->Unregister(ip, p1)
#define IAgentEx_GetCharacter(ip, p1, p2) (ip)->lpVtbl->GetCharacter(ip, p1, p2)
#define IAgentEx_GetSuspended(ip, p1) (ip)->lpVtbl->GetSuspended(ip, p1)
#define IAgentEx_GetCharacterEx(ip, p1, p2) (ip)->lpVtbl->GetCharacterEx(ip, p1, p2)
#define IAgentEx_GetVersion(ip, p1, p2) (ip)->lpVtbl->GetVersion(ip, p1, p2)
#define IAgentEx_ShowDefaultCharacterProperties(ip, p1, p2, p3) (ip)->lpVtbl->ShowDefaultCharacterProperties(ip, p1, p2, p3)

#endif // LCC_IAgentEx_DEFINED

#ifndef LCC_IAgentNotifySink_DEFINED
#define LCC_IAgentNotifySink_DEFINED

DEFINE_GUID(IID_IAgentNotifySink, 0xd18159,0x8466,0x11d0,0xac, 0x63, 0x0, 0xc0, 0x4f, 0xd9, 0x75, 0x75);

typedef interface IAgentNotifySink IAgentNotifySink;

#undef INTERFACE
#define INTERFACE IAgentNotifySink

DECLARE_INTERFACE_(INTERFACE, IDispatch)
{
 HRESULT (STDMETHODCALLTYPE *QueryInterface)(IAgentNotifySink *This, GUID* riid, void** ppvObj);
 ULONG (STDMETHODCALLTYPE *AddRef)(IAgentNotifySink *This);
 ULONG (STDMETHODCALLTYPE *Release)(IAgentNotifySink *This);
 HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(IAgentNotifySink *This, UINT* pctinfo);
 HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(IAgentNotifySink *This, UINT itinfo, ULONG lcid, void** pptinfo);
 HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(IAgentNotifySink *This, GUID* riid, char** rgszNames, UINT cNames, ULONG lcid, LONG* rgdispid);
 HRESULT (STDMETHODCALLTYPE *Invoke)(IAgentNotifySink *This, LONG dispidMember, GUID* riid, ULONG lcid, USHORT wFlags, DISPPARAMS* pdispparams, VARIANT* pvarResult, EXCEPINFO* pexcepinfo, UINT* puArgErr);
 HRESULT (STDMETHODCALLTYPE *Command)(IAgentNotifySink *This, LONG dwCommandID, IUnknown* punkUserInput);
 HRESULT (STDMETHODCALLTYPE *ActivateInputState)(IAgentNotifySink *This, LONG dwCharID, LONG bActivated);
 HRESULT (STDMETHODCALLTYPE *Restart)(IAgentNotifySink *This);
 HRESULT (STDMETHODCALLTYPE *Shutdown)(IAgentNotifySink *This);
 HRESULT (STDMETHODCALLTYPE *VisibleState)(IAgentNotifySink *This, LONG dwCharID, LONG bVisible, LONG dwCause);
 HRESULT (STDMETHODCALLTYPE *Click)(IAgentNotifySink *This, LONG dwCharID, SHORT fwKeys, LONG x, LONG y);
 HRESULT (STDMETHODCALLTYPE *DblClick)(IAgentNotifySink *This, LONG dwCharID, SHORT fwKeys, LONG x, LONG y);
 HRESULT (STDMETHODCALLTYPE *DragStart)(IAgentNotifySink *This, LONG dwCharID, SHORT fwKeys, LONG x, LONG y);
 HRESULT (STDMETHODCALLTYPE *DragComplete)(IAgentNotifySink *This, LONG dwCharID, SHORT fwKeys, LONG x, LONG y);
 HRESULT (STDMETHODCALLTYPE *RequestStart)(IAgentNotifySink *This, LONG dwRequestID);
 HRESULT (STDMETHODCALLTYPE *RequestComplete)(IAgentNotifySink *This, LONG dwRequestID, LONG hrStatus);
 HRESULT (STDMETHODCALLTYPE *BookMark)(IAgentNotifySink *This, LONG dwBookMarkID);
 HRESULT (STDMETHODCALLTYPE *Idle)(IAgentNotifySink *This, LONG dwCharID, LONG bStart);
 HRESULT (STDMETHODCALLTYPE *Move)(IAgentNotifySink *This, LONG dwCharID, LONG x, LONG y, LONG dwCause);
 HRESULT (STDMETHODCALLTYPE *Size)(IAgentNotifySink *This, LONG dwCharID, LONG lWidth, LONG lHeight);
 HRESULT (STDMETHODCALLTYPE *BalloonVisibleState)(IAgentNotifySink *This, LONG dwCharID, LONG bVisible);
};
/*
#define IAgentNotifySink_QueryInterface(ip, p1, p2) (ip)->lpVtbl->QueryInterface(ip, p1, p2)
#define IAgentNotifySink_AddRef(ip) (ip)->lpVtbl->AddRef(ip)
#define IAgentNotifySink_Release(ip) (ip)->lpVtbl->Release(ip)
#define IAgentNotifySink_GetTypeInfoCount(ip, p1) (ip)->lpVtbl->GetTypeInfoCount(ip, p1)
#define IAgentNotifySink_GetTypeInfo(ip, p1, p2, p3) (ip)->lpVtbl->GetTypeInfo(ip, p1, p2, p3)
#define IAgentNotifySink_GetIDsOfNames(ip, p1, p2, p3, p4, p5) (ip)->lpVtbl->GetIDsOfNames(ip, p1, p2, p3, p4, p5)
#define IAgentNotifySink_Invoke(ip, p1, p2, p3, p4, p5, p6, p7, p8) (ip)->lpVtbl->Invoke(ip, p1, p2, p3, p4, p5, p6, p7, p8)
#define IAgentNotifySink_Command(ip, p1, p2) (ip)->lpVtbl->Command(ip, p1, p2)
#define IAgentNotifySink_ActivateInputState(ip, p1, p2) (ip)->lpVtbl->ActivateInputState(ip, p1, p2)
#define IAgentNotifySink_Restart(ip) (ip)->lpVtbl->Restart(ip)
#define IAgentNotifySink_Shutdown(ip) (ip)->lpVtbl->Shutdown(ip)
#define IAgentNotifySink_VisibleState(ip, p1, p2, p3) (ip)->lpVtbl->VisibleState(ip, p1, p2, p3)
#define IAgentNotifySink_Click(ip, p1, p2, p3, p4) (ip)->lpVtbl->Click(ip, p1, p2, p3, p4)
#define IAgentNotifySink_DblClick(ip, p1, p2, p3, p4) (ip)->lpVtbl->DblClick(ip, p1, p2, p3, p4)
#define IAgentNotifySink_DragStart(ip, p1, p2, p3, p4) (ip)->lpVtbl->DragStart(ip, p1, p2, p3, p4)
#define IAgentNotifySink_DragComplete(ip, p1, p2, p3, p4) (ip)->lpVtbl->DragComplete(ip, p1, p2, p3, p4)
#define IAgentNotifySink_RequestStart(ip, p1) (ip)->lpVtbl->RequestStart(ip, p1)
#define IAgentNotifySink_RequestComplete(ip, p1, p2) (ip)->lpVtbl->RequestComplete(ip, p1, p2)
#define IAgentNotifySink_BookMark(ip, p1) (ip)->lpVtbl->BookMark(ip, p1)
#define IAgentNotifySink_Idle(ip, p1, p2) (ip)->lpVtbl->Idle(ip, p1, p2)
#define IAgentNotifySink_Move(ip, p1, p2, p3, p4) (ip)->lpVtbl->Move(ip, p1, p2, p3, p4)
#define IAgentNotifySink_Size(ip, p1, p2, p3) (ip)->lpVtbl->Size(ip, p1, p2, p3)
#define IAgentNotifySink_BalloonVisibleState(ip, p1, p2) (ip)->lpVtbl->BalloonVisibleState(ip, p1, p2)
*/
#endif // LCC_IAgentNotifySink_DEFINED

#ifndef LCC_IAgentNotifySinkEx_DEFINED
#define LCC_IAgentNotifySinkEx_DEFINED

DEFINE_GUID(IID_IAgentNotifySinkEx, 0x8c75162,0x3c9c,0x11d1,0x91, 0xfe, 0x0, 0xc0, 0x4f, 0xd7, 0x1, 0xa5);

typedef interface IAgentNotifySinkEx IAgentNotifySinkEx;

#undef INTERFACE
#define INTERFACE IAgentNotifySinkEx

DECLARE_INTERFACE_(INTERFACE, IDispatch)
{
 HRESULT (STDMETHODCALLTYPE *QueryInterface)(IAgentNotifySinkEx *This, GUID* riid, void** ppvObj);
 ULONG (STDMETHODCALLTYPE *AddRef)(IAgentNotifySinkEx *This);
 ULONG (STDMETHODCALLTYPE *Release)(IAgentNotifySinkEx *This);
 HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(IAgentNotifySinkEx *This, UINT* pctinfo);
 HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(IAgentNotifySinkEx *This, UINT itinfo, ULONG lcid, void** pptinfo);
 HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(IAgentNotifySinkEx *This, GUID* riid, char** rgszNames, UINT cNames, ULONG lcid, LONG* rgdispid);
 HRESULT (STDMETHODCALLTYPE *Invoke)(IAgentNotifySinkEx *This, LONG dispidMember, GUID* riid, ULONG lcid, USHORT wFlags, DISPPARAMS* pdispparams, VARIANT* pvarResult, EXCEPINFO* pexcepinfo, UINT* puArgErr);
 HRESULT (STDMETHODCALLTYPE *Command)(IAgentNotifySinkEx *This, LONG dwCommandID, IUnknown* punkUserInput);
 HRESULT (STDMETHODCALLTYPE *ActivateInputState)(IAgentNotifySinkEx *This, LONG dwCharID, LONG bActivated);
 HRESULT (STDMETHODCALLTYPE *Restart)(IAgentNotifySinkEx *This);
 HRESULT (STDMETHODCALLTYPE *Shutdown)(IAgentNotifySinkEx *This);
 HRESULT (STDMETHODCALLTYPE *VisibleState)(IAgentNotifySinkEx *This, LONG dwCharID, LONG bVisible, LONG dwCause);
 HRESULT (STDMETHODCALLTYPE *Click)(IAgentNotifySinkEx *This, LONG dwCharID, SHORT fwKeys, LONG x, LONG y);
 HRESULT (STDMETHODCALLTYPE *DblClick)(IAgentNotifySinkEx *This, LONG dwCharID, SHORT fwKeys, LONG x, LONG y);
 HRESULT (STDMETHODCALLTYPE *DragStart)(IAgentNotifySinkEx *This, LONG dwCharID, SHORT fwKeys, LONG x, LONG y);
 HRESULT (STDMETHODCALLTYPE *DragComplete)(IAgentNotifySinkEx *This, LONG dwCharID, SHORT fwKeys, LONG x, LONG y);
 HRESULT (STDMETHODCALLTYPE *RequestStart)(IAgentNotifySinkEx *This, LONG dwRequestID);
 HRESULT (STDMETHODCALLTYPE *RequestComplete)(IAgentNotifySinkEx *This, LONG dwRequestID, LONG hrStatus);
 HRESULT (STDMETHODCALLTYPE *BookMark)(IAgentNotifySinkEx *This, LONG dwBookMarkID);
 HRESULT (STDMETHODCALLTYPE *Idle)(IAgentNotifySinkEx *This, LONG dwCharID, LONG bStart);
 HRESULT (STDMETHODCALLTYPE *Move)(IAgentNotifySinkEx *This, LONG dwCharID, LONG x, LONG y, LONG dwCause);
 HRESULT (STDMETHODCALLTYPE *Size)(IAgentNotifySinkEx *This, LONG dwCharID, LONG lWidth, LONG lHeight);
 HRESULT (STDMETHODCALLTYPE *BalloonVisibleState)(IAgentNotifySinkEx *This, LONG dwCharID, LONG bVisible);
 HRESULT (STDMETHODCALLTYPE *HelpComplete)(IAgentNotifySinkEx *This, LONG dwCharID, LONG dwCommandID, LONG dwCause);
 HRESULT (STDMETHODCALLTYPE *ListeningState)(IAgentNotifySinkEx *This, LONG dwCharID, LONG bListening, LONG dwCause);
 HRESULT (STDMETHODCALLTYPE *DefaultCharacterChange)(IAgentNotifySinkEx *This, BSTR bszGUID);
 HRESULT (STDMETHODCALLTYPE *AgentPropertyChange)(IAgentNotifySinkEx *This);
 HRESULT (STDMETHODCALLTYPE *ActiveClientChange)(IAgentNotifySinkEx *This, LONG dwCharID, LONG lStatus);
};

#define IAgentNotifySinkEx_QueryInterface(ip, p1, p2) (ip)->lpVtbl->QueryInterface(ip, p1, p2)
#define IAgentNotifySinkEx_AddRef(ip) (ip)->lpVtbl->AddRef(ip)
#define IAgentNotifySinkEx_Release(ip) (ip)->lpVtbl->Release(ip)
#define IAgentNotifySinkEx_GetTypeInfoCount(ip, p1) (ip)->lpVtbl->GetTypeInfoCount(ip, p1)
#define IAgentNotifySinkEx_GetTypeInfo(ip, p1, p2, p3) (ip)->lpVtbl->GetTypeInfo(ip, p1, p2, p3)
#define IAgentNotifySinkEx_GetIDsOfNames(ip, p1, p2, p3, p4, p5) (ip)->lpVtbl->GetIDsOfNames(ip, p1, p2, p3, p4, p5)
#define IAgentNotifySinkEx_Invoke(ip, p1, p2, p3, p4, p5, p6, p7, p8) (ip)->lpVtbl->Invoke(ip, p1, p2, p3, p4, p5, p6, p7, p8)
#define IAgentNotifySinkEx_Command(ip, p1, p2) (ip)->lpVtbl->Command(ip, p1, p2)
#define IAgentNotifySinkEx_ActivateInputState(ip, p1, p2) (ip)->lpVtbl->ActivateInputState(ip, p1, p2)
#define IAgentNotifySinkEx_Restart(ip) (ip)->lpVtbl->Restart(ip)
#define IAgentNotifySinkEx_Shutdown(ip) (ip)->lpVtbl->Shutdown(ip)
#define IAgentNotifySinkEx_VisibleState(ip, p1, p2, p3) (ip)->lpVtbl->VisibleState(ip, p1, p2, p3)
#define IAgentNotifySinkEx_Click(ip, p1, p2, p3, p4) (ip)->lpVtbl->Click(ip, p1, p2, p3, p4)
#define IAgentNotifySinkEx_DblClick(ip, p1, p2, p3, p4) (ip)->lpVtbl->DblClick(ip, p1, p2, p3, p4)
#define IAgentNotifySinkEx_DragStart(ip, p1, p2, p3, p4) (ip)->lpVtbl->DragStart(ip, p1, p2, p3, p4)
#define IAgentNotifySinkEx_DragComplete(ip, p1, p2, p3, p4) (ip)->lpVtbl->DragComplete(ip, p1, p2, p3, p4)
#define IAgentNotifySinkEx_RequestStart(ip, p1) (ip)->lpVtbl->RequestStart(ip, p1)
#define IAgentNotifySinkEx_RequestComplete(ip, p1, p2) (ip)->lpVtbl->RequestComplete(ip, p1, p2)
#define IAgentNotifySinkEx_BookMark(ip, p1) (ip)->lpVtbl->BookMark(ip, p1)
#define IAgentNotifySinkEx_Idle(ip, p1, p2) (ip)->lpVtbl->Idle(ip, p1, p2)
#define IAgentNotifySinkEx_Move(ip, p1, p2, p3, p4) (ip)->lpVtbl->Move(ip, p1, p2, p3, p4)
#define IAgentNotifySinkEx_Size(ip, p1, p2, p3) (ip)->lpVtbl->Size(ip, p1, p2, p3)
#define IAgentNotifySinkEx_BalloonVisibleState(ip, p1, p2) (ip)->lpVtbl->BalloonVisibleState(ip, p1, p2)
#define IAgentNotifySinkEx_HelpComplete(ip, p1, p2, p3) (ip)->lpVtbl->HelpComplete(ip, p1, p2, p3)
#define IAgentNotifySinkEx_ListeningState(ip, p1, p2, p3) (ip)->lpVtbl->ListeningState(ip, p1, p2, p3)
#define IAgentNotifySinkEx_DefaultCharacterChange(ip, p1) (ip)->lpVtbl->DefaultCharacterChange(ip, p1)
#define IAgentNotifySinkEx_AgentPropertyChange(ip) (ip)->lpVtbl->AgentPropertyChange(ip)
#define IAgentNotifySinkEx_ActiveClientChange(ip, p1, p2) (ip)->lpVtbl->ActiveClientChange(ip, p1, p2)

#endif // LCC_IAgentNotifySinkEx_DEFINED

#ifndef LCC_IAgentCommandWindow_DEFINED
#define LCC_IAgentCommandWindow_DEFINED

DEFINE_GUID(IID_IAgentCommandWindow, 0x6d0ecb23,0x9968,0x11d0,0xac, 0x6e, 0x0, 0xc0, 0x4f, 0xd9, 0x75, 0x75);

typedef interface IAgentCommandWindow IAgentCommandWindow;

#undef INTERFACE
#define INTERFACE IAgentCommandWindow

DECLARE_INTERFACE_(INTERFACE, IDispatch)
{
 HRESULT (STDMETHODCALLTYPE *QueryInterface)(IAgentCommandWindow *This, GUID* riid, void** ppvObj);
 ULONG (STDMETHODCALLTYPE *AddRef)(IAgentCommandWindow *This);
 ULONG (STDMETHODCALLTYPE *Release)(IAgentCommandWindow *This);
 HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(IAgentCommandWindow *This, UINT* pctinfo);
 HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(IAgentCommandWindow *This, UINT itinfo, ULONG lcid, void** pptinfo);
 HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(IAgentCommandWindow *This, GUID* riid, char** rgszNames, UINT cNames, ULONG lcid, LONG* rgdispid);
 HRESULT (STDMETHODCALLTYPE *Invoke)(IAgentCommandWindow *This, LONG dispidMember, GUID* riid, ULONG lcid, USHORT wFlags, DISPPARAMS* pdispparams, VARIANT* pvarResult, EXCEPINFO* pexcepinfo, UINT* puArgErr);
 HRESULT (STDMETHODCALLTYPE *SetVisible)(IAgentCommandWindow *This, LONG bVisible);
 HRESULT (STDMETHODCALLTYPE *GetVisible)(IAgentCommandWindow *This, LONG* pbVisible);
 HRESULT (STDMETHODCALLTYPE *GetPosition)(IAgentCommandWindow *This, LONG* plLeft, LONG* plTop);
 HRESULT (STDMETHODCALLTYPE *GetSize)(IAgentCommandWindow *This, LONG* plWidth, LONG* plHeight);
};

#define IAgentCommandWindow_QueryInterface(ip, p1, p2) (ip)->lpVtbl->QueryInterface(ip, p1, p2)
#define IAgentCommandWindow_AddRef(ip) (ip)->lpVtbl->AddRef(ip)
#define IAgentCommandWindow_Release(ip) (ip)->lpVtbl->Release(ip)
#define IAgentCommandWindow_GetTypeInfoCount(ip, p1) (ip)->lpVtbl->GetTypeInfoCount(ip, p1)
#define IAgentCommandWindow_GetTypeInfo(ip, p1, p2, p3) (ip)->lpVtbl->GetTypeInfo(ip, p1, p2, p3)
#define IAgentCommandWindow_GetIDsOfNames(ip, p1, p2, p3, p4, p5) (ip)->lpVtbl->GetIDsOfNames(ip, p1, p2, p3, p4, p5)
#define IAgentCommandWindow_Invoke(ip, p1, p2, p3, p4, p5, p6, p7, p8) (ip)->lpVtbl->Invoke(ip, p1, p2, p3, p4, p5, p6, p7, p8)
#define IAgentCommandWindow_SetVisible(ip, p1) (ip)->lpVtbl->SetVisible(ip, p1)
#define IAgentCommandWindow_GetVisible(ip, p1) (ip)->lpVtbl->GetVisible(ip, p1)
#define IAgentCommandWindow_GetPosition(ip, p1, p2) (ip)->lpVtbl->GetPosition(ip, p1, p2)
#define IAgentCommandWindow_GetSize(ip, p1, p2) (ip)->lpVtbl->GetSize(ip, p1, p2)

#endif // LCC_IAgentCommandWindow_DEFINED


#endif // AgentSvr_h_