Как добавить элемент управления ActiveX в форму Qt из пользовательской библиотеки DLL - PullRequest
0 голосов
/ 09 ноября 2010

Что ж, я пытаюсь добиться следующего: добавить элемент управления ActiveX (AxExpressViewerDll :: AxCExpressViewerControl из AutoDesk) в форму Qt. Но нет способа получить объект для загрузки из DLL, например (длинное число - UUID, взятый из Visual Studio):

QAxWidget* wmp = new QAxWidget();
wmp->setControl("{55523A67-A054-4064-B88D-0070305C9F95}");

VS прекрасно подхватывает COM-объект, .dll (AdView.dll) был зарегистрирован в regsvr32, я даже связал dll напрямую с проектом с помощью директивы LIBS. Я даже попробовал это: ссылка

Я всегда получаю:

Ошибка CoCreateInstance (класс не заказные)

QAxBase :: setControl: запрашиваемый контроль {55523A67-A054-4064-B88D-0070305C9F95} невозможно создать экземпляр

Любая помощь будет оценена

1 Ответ

0 голосов
/ 08 сентября 2011

ответил через несколько месяцев, но все еще может быть полезным:

Может быть, вам стоит взглянуть на плагин qtbrowser: http://doc.qt.nokia.com/solutions/4/qtbrowserplugin/

Вместо разработки и ActiveX, а затем встраивания его в qt, используйте непосредственно qt. Если только вы не хотите, чтобы ваш activeX был доступен за пределами qt ...

...