Что нового

Использование COM-объектов на примере CTI OS

r35p3ct

Продвинутый
Сообщения
228
Репутация
60
Приветсвую всех. Недавно начал знакомство с AutoIt, ни разу не использовал объекты.
Есть программа CTIOS Client
После установки программного обеспечения CTI OS на рабочем месте регистрируются COM(Component Object Model)-объекты, необходимые для интеграции работы с IP-телефонией.
Офф. Гайд
Пример на C и VBA
Помогите разобраться на простом примере для Autoit, например как вызвать функцию GetAgentState?
 

Yashied

Модератор
Команда форума
Глобальный модератор
Сообщения
5,379
Репутация
2,724
Re: COM-объекты

Да, это полная беда.

r35p3ct сказал(а):
Как это заюзать?

CTRL-C => CTRL-V вполне достаточно.

Тема закрыта.

Учимся формулировать вопрос, придумывать названия тем и делать ссылки на источник, а затем, используя полученные знания, создаем новую тему и радуемся огромному количеству ответов.

:ninja:
Добавлено:
Сообщение автоматически объединено:

Я разблокировал тему, но советую более подробно описать суть вопроса, если конечно хотите получить ответы. И дайте ссылку на этот текст.

После установки программного обеспечения CTI OS на рабочем месте регистрируются COM(Component Object Model)-объекты, необходимые для интеграции работы с IP-телефонией.
 
Автор
R

r35p3ct

Продвинутый
Сообщения
228
Репутация
60
C объектами разобраться не получается( не пойму где найти "classname", пробывал смотреть через oleview, но ничего толком не понятно.
CTRL-C => CTRL-V вполне достаточно.
не совсем достаточно...
Неужели никто не работал с объектами?
Можно ли из этой Dll-шки узнать название класса?
// Generated .IDL/C++ pseudo source equivalent of Win32 type library ..\agentstatectl.dll
[
uuid({797E522F-F0CA-11D4-9D76-001083021C67}),
version(1.0),
helpstring("Cisco CTIOS Agent State Control")
]
library AgentStateCtlLib
{
// Forward references and typedefs
dispinterface IAgentStateCtl;
dispinterface _IAgentStateCtlEvents;
dispinterface _IReasonCodePropPageEvents;

typedef [public] __MIDL___MIDL_itf_AgentStateCtl_0000_0001 enumReasonCodeState;

typedef enum
{
eNotUsed = 0,
eRequested = 1,
eRequired = 2
} __MIDL___MIDL_itf_AgentStateCtl_0000_0001;

typedef [public] __MIDL___MIDL_itf_AgentStateCtl_0000_0002 enumAgentWorkMode;

typedef enum
{
eUnspecified = 0,
eAutoIn = 1,
eManualIn = 2
} __MIDL___MIDL_itf_AgentStateCtl_0000_0002;

[
uuid({797E5230-F0CA-11D4-9D76-001083021C67}),
helpstring("IAgentStateCtl Interface")
]
dispinterface IAgentStateCtl
{
properties:
methods:
[id(0), restricted] void QueryInterface(
[in] GUID* riid,
[out] void** ppvObj);
[id(1), restricted] unsigned long AddRef();
[id(2), restricted] unsigned long Release();
[id(3), restricted] void GetTypeInfoCount([out] unsigned int* pctinfo);
[id(4), restricted] void GetTypeInfo(
[in] unsigned int itinfo,
[in] unsigned long lcid,
[out] void** pptinfo);
[id(5), restricted] void GetIDsOfNames(
[in] GUID* riid,
[in] char** rgszNames,
[in] unsigned int cNames,
[in] unsigned long lcid,
[out] long* rgdispid);
[id(6), restricted] void Invoke(
[in] long dispidMember,
[in] GUID* riid,
[in] unsigned long lcid,
[in] unsigned short wFlags,
[in] DISPPARAMS* pdispparams,
[out] VARIANT* pvarResult,
[out] EXCEPINFO* pexcepinfo,
[out] unsigned int* puArgErr);
[id(7), propget, helpstring("property ButtonType")] AgentStateButtonType ButtonType();
[id(8), propput, helpstring("property ButtonType")] void ButtonType([in] AgentStateButtonType rhs);
[id(9), propput, helpstring("property BackColor")] void BackColor([in] OLE_COLOR rhs);
[id(10), propget, helpstring("property BackColor")] OLE_COLOR BackColor();
[id(11), propput, helpstring("property BorderColor")] void BorderColor([in] OLE_COLOR rhs);
[id(12), propget, helpstring("property BorderColor")] OLE_COLOR BorderColor();
[id(13), propput, helpstring("property Enabled")] void Enabled([in] boolean rhs);
[id(14), propget, helpstring("property Enabled")] boolean Enabled();
[id(15), propget, helpstring("property PictureAlignment")] AlignmentEnum PictureAlignment();
[id(16), propput, helpstring("property PictureAlignment")] void PictureAlignment([in] AlignmentEnum rhs);
[id(17), propget, helpstring("property AppearanceStatic")] AppearanceEnum AppearanceStatic();
[id(18), propput, helpstring("property AppearanceStatic")] void AppearanceStatic([in] AppearanceEnum rhs);
[id(19), propget, helpstring("property Text")] BSTR Text();
[id(20), propput, helpstring("property Text")] void Text([in] BSTR rhs);
[id(21), propget, helpstring("property ToolTipCaption")] BSTR ToolTipCaption();
[id(22), propput, helpstring("property ToolTipCaption")] void ToolTipCaption([in] BSTR rhs);
[id(23), propget, helpstring("property Font")] IFontDisp* Font();
[id(24), propputref, helpstring("property Font")] void Font([in] IFontDisp* rhs);
[id(25), propput, helpstring("property Font")] void Font([in] IFontDisp* rhs);
[id(26), propget, helpstring("property TextColor")] OLE_COLOR TextColor();
[id(27), propput, helpstring("property TextColor")] void TextColor([in] OLE_COLOR rhs);
[id(28), propget, helpstring("property PictureStatic")] IPictureDisp* PictureStatic();
[id(29), propputref, helpstring("property PictureStatic")] void PictureStatic([in] IPictureDisp* rhs);
[id(30), propput, helpstring("property PictureStatic")] void PictureStatic([in] IPictureDisp* rhs);
[id(31), propget, helpstring("property PictureDisabled")] IPictureDisp* PictureDisabled();
[id(32), propputref, helpstring("property PictureDisabled")] void PictureDisabled([in] IPictureDisp* rhs);
[id(33), propput, helpstring("property PictureDisabled")] void PictureDisabled([in] IPictureDisp* rhs);
[id(34), propget, helpstring("property HighlightColor")] OLE_COLOR HighlightColor();
[id(35), propput, helpstring("property HighlightColor")] void HighlightColor([in] OLE_COLOR rhs);
[id(36), propget, helpstring("property ShadowColor")] OLE_COLOR ShadowColor();
[id(37), propput, helpstring("property ShadowColor")] void ShadowColor([in] OLE_COLOR rhs);
[id(38), propget, helpstring("property ShowFocus")] FocusEnum ShowFocus();
[id(39), propput, helpstring("property ShowFocus")] void ShowFocus([in] FocusEnum rhs);
[id(40), propget, helpstring("property PictureSpacing")] short PictureSpacing();
[id(41), propput, helpstring("property PictureSpacing")] void PictureSpacing([in] short rhs);
[id(42), propget, helpstring("Determines whether or not the Reason Code must be specified property a reason code must be specified on agent state change")] enumReasonCodeState ReasonCodeState();
[id(43), propput, helpstring("Determines whether or not the Reason Code must be specified property a reason code must be specified on agent state change")] void ReasonCodeState([in] enumReasonCodeState rhs);
[id(44), propget, helpstring("property ReasonCodeList")] BSTR ReasonCodeList();
[id(45), propput, helpstring("property ReasonCodeList")] void ReasonCodeList([in] BSTR rhs);
[id(46)] void DoClick();
};

typedef enum
{
eLoginAgentBtn = 0,
eLoginSupervisorBtn = 1,
eNotReadyBtn = 2,
eReadyBtn = 3,
eWorkNotReadyBtn = 4,
eWorkReadyBtn = 5,
eLogoutBtn = 6
} AgentStateButtonType;

typedef enum
{
Left = 0,
Center = 1,
Right = 2,
Top = 3,
Bottom = 4
} AlignmentEnum;

typedef [public] __MIDL___MIDL_itf_AgentStateCtl_0209_0001 AppearanceEnum;

typedef enum
{
cFlat = 0,
cBorder = 1,
c3dBorderRaised = 2,
c3dBorderSunken = 3,
c3dLow = 4,
c3dHigh = 5,
c3dLowWithBorder = 6,
c3dHighWithBorder = 7
} __MIDL___MIDL_itf_AgentStateCtl_0209_0001;

typedef [public] __MIDL___MIDL_itf_AgentStateCtl_0209_0002 FocusEnum;

typedef enum
{
None = 0,
DrawRect = 1
} __MIDL___MIDL_itf_AgentStateCtl_0209_0002;

[
uuid({797E5231-F0CA-11D4-9D76-001083021C67}),
helpstring("_IAgentStateCtlEvents Interface")
]
dispinterface _IAgentStateCtlEvents
{
properties:
methods:
[id(0), helpstring("method OnEnableControlReceived")] void OnEnableControlReceived(long Enabled);
[id(1), helpstring("method OnAgentStateChanged")] HRESULT OnAgentStateChanged([in] IDispatch* vEventParam);
};

[
uuid({797E5233-F0CA-11D4-9D76-001083021C67}),
helpstring("AgentStateCtl Class")
]
coclass AgentStateCtl
{
[default] dispinterface IAgentStateCtl;
[default, source] dispinterface _IAgentStateCtlEvents;
};

[
uuid({797E5234-F0CA-11D4-9D76-001083021C67}),
helpstring("AgentStateCtlPropPage Class")
]
coclass AgentStateCtlPropPage
{
[default] interface IUnknown;
};

[
uuid({15CD58C5-DCF2-11D4-9D74-001083021C67}),
helpstring("SinkAgentEvents Class")
]
coclass SinkAgentEvents
{
[default] dispinterface _IAgentStateCtlEvents;
};

[
uuid({E9A23C44-F5F3-11D4-A457-0050048A5F2F}),
helpstring("_IReasonCodePropPageEvents Interface")
]
dispinterface _IReasonCodePropPageEvents
{
properties:
methods:
};

[
uuid({E9A23C43-F5F3-11D4-A457-0050048A5F2F}),
helpstring("ReasonCodePropPage Class")
]
coclass ReasonCodePropPage
{
[default] interface IUnknown;
[default, source] dispinterface _IReasonCodePropPageEvents;
};
};
 
Верх