Шаг 395 - Как добавляется ActiveX

Для того, чтобы Вы могли использовать ActiveX он должен быть зарегистрирован. Подробнее читайте шаги:

Если элемент зарегистрирован Вы можете добавить его в проект. В этот момент создается оболочка класса, элемент помещается на панель инструментов. Подробнее читайте:

Если установить поддержку ActiveX в проекте Вы забыли, то ее можно установить вручную. Подробнее читайте "Шаг 26 - Поддержка ActiveX в проекте".

Итак, все это мы знаем. Сейчас мы коснемся организации доступа к методам ActiveX. Во-первых, базовым классом будет CWnd. Вот пример для календаря:

class CCalendar : public CWnd
{
protected:
	DECLARE_DYNCREATE(CCalendar)
public:
	CLSID const& GetClsid()

Все методы ActiveX будут заключены в оболочку из функции классов:

void CCalendar::SetDay(short nNewValue)
{
	static BYTE parms[] = VTS_I2;
	InvokeHelper(0x11, DISPATCH_PROPERTYPUT, VT_EMPTY, NULL, parms,
		nNewValue);
}

Для вызова будет использоваться функция InvokeHelper. Подробнее: "Шаг 274 - CWnd::InvokeHelper".


Предыдущий Шаг | Следующий Шаг | Оглавление
Автор Каев Артем.