Название: RealPlayActiveX и Qt Отправлено: Disa от Декабрь 17, 2013, 12:55 Добрый день. Волею судеб приходиться возиться с ActiveX компонентами, до этого туда не лазил за ненадобностью. Читаю доки и экзамплы смотрю, пока только одни вопросы. В компоненте есть интерфейс (_DIPCRealPlayActiveX), к которому я хочу достучаться, но не понимаю как. То есть я могу, конечно, вызвать queryInterface(), но где взять хидер или что-то еще, где описан требуемый класс, который я буду передавать во второй параметр?
Плюс не понимаю как работает dynamicCall(""). У товарищей есть js работающий код, вот такой вот (Ну js + html, конечно): Код: <object classid="clsid:bla-bla-bla" standby="Waiting..." id="PreviewActiveX" name="PreviewActiveX"><embed width="100%" height="100%"></embed></object> Мне же при попытки вызова dynamicCall("ptzCtrlStop(int, int)", 10, 4) выдают что нет таких методов. Собственно говоря, мне эти два метода и нужно вызывать, больше ничего не требуется. Буду рад любой помощи и за ранее благодарен! Название: Re: RealPlayActiveX и Qt Отправлено: Johnik от Декабрь 17, 2013, 13:26 для начала попробуйте:
Код вывод будет большой портянкой с описанием методов. А далее уже можно будет dynamicCall(), property() и querySubObject(), а также запрашивать интерфейсы: queryInterface() Название: Re: RealPlayActiveX и Qt Отправлено: Disa от Декабрь 17, 2013, 13:51 За это спасибо, только селектор у вас не тот ибо поинтер :)
Остается открытым вопрос - где найти что-то, где была бы декларация класса с интерфейсом (хидер)? Название: Re: RealPlayActiveX и Qt Отправлено: Johnik от Декабрь 17, 2013, 15:35 Цитировать селектор у вас не тот ибо поинтер обычно ide заменяет на нужный ;)Цитировать где найти что-то, где была бы декларация класса с интерфейсом (хидер) 1. что выдало generateDocumentation?2. попробуйте dumpcpp Название: Re: RealPlayActiveX и Qt Отправлено: Disa от Декабрь 17, 2013, 15:56 Спасибо! Уже докопался до dumpcpp и сделал требуемые *.h и *.cpp.
generateDocumentation cгенерировал html'ку с тем, что предоставляет этот контрол, но среди предоставленных методов требуемых не нашел. Пока не очень понимаю куда дальше копать... Пока есть: Код: The IPCRealPlayActiveX Control COM object is a QAxObject with the CLSID {97E289A5-C277-4114-8F3A-DAC14CFB7777}. Подскажите откуда товарищи в js выкопали метод, например, m_PreviewOCX.ptzCtrlStart(1, m_iPTZSpeed)? Напоминаю, что m_PreviewOCX = document.getElementById("PreviewActiveX"), а PreviewActiveX - object classid="clsid:такой же идентификатор". Спасибо огромное за помощь! Название: Re: RealPlayActiveX и Qt Отправлено: Disa от Декабрь 18, 2013, 16:43 Более развернутый вопрос:
http://stackoverflow.com/questions/20657209/ipcrealplayactivex-control-qt За не имеем решения, углубляюсь в API камеры. |