Есть некоторый ActiveX. Как узать адреса методов нем реализованых? Хочу вызывать их, загружая COM с помощю LoadLibrary.
DllGetClassObject импортируй и запрашивай оттуда уже требуемый интерфейс. http://www.wasm.ru/article.php?article=comkit2
Что то не могу понять который интерфейс "требуемый" в браузере работает такой код <OBJECT ID="yyy" CLASSID="CLSID:XXXXXXXX-XXX-XXXX-XXXX-XXXXXXXXXXXX" width=400 height=400 > </OBJECT> Как реализовать то же самое? Для начала пытаюсь хотя бы стандартным CoCreateInstance Не могу понять как это делает браузер. Где взять IID интерфейса? Откуда его знает IE?
http://www.wasm.ru/article.php?article=comkit1 читал? там описывается получение поддерживаемых данным класом интерфейсов, т.е. перечисление набора IID для определенного CLSID
Хороше, указатель на интерфейс я получил. Но что делать дальше - не понятно. Как минимум, предполагаю что нужно передать какому то методу hwnd окна в котором он будет отображаться. Бросли этот activX на форму в делфи. Олей вижу вызовы методов mov eax,[pUnk] mov eax,[eax] call dword [eax+058h] и call dword [eax+Ch] Какие аргументы?
ActiveX контрол - это контрол, реализованный как СОМ-класс, и поддерживающий как минимум IOleControl и IOleControlSite. Соответственно, для использования его у себя, надо поддерживать ActiveX hosting (Требуемые интерфейсы).