Добрый день!
Кто-нибудь сталкивался с тем, что отладчик падает при попытке создать ActiveX объект?
(сообщение: "unhandled exception ... in gdb-i686-pc-mingw32.exe")
Пишу
1. COM server (DLL, ActiveQt);
2. клиент, тоже Qt (ах-контролы на форме клиента размещаю методом "преобразовать виджет").
Запускаю на отладку клиента.
Отладчик падает на вызове
CoCreateInstance(QUuid(ctrl), 0, CLSCTX_SERVER, IID_IUnknown, (void**)ptr)
когда вызов происходит из (привожу часть стека):
--
QAxBase::initialize
QAxWidget::initialize
QAxBase::setControl
MyQtActiveX::MyQtActiveX // враппер моего контрола (сгенерирован dumpcpp)
Ui_MainWindow::setupUi;
--
Там же, когда вместо своего контрола использую WindowsMediaPlayer, отрабатывает нормально.
Проверил свой контрол в васике, тоже все нормально.
Подскажите с чем это может быть связано? как отлаживать контрол?
П.С.
фабрику определяю так:
QAXFACTORY_BEGIN( libId, appId )
QAXCLASS( MyQtActiveX )
QAXFACTORY_END()
а класс так:
class MyQtActiveX
: public QGraphicsView
, private Ui::MyQtActiveX
{
Q_OBJECT
Q_CLASSINFO("ClassID" , "{7D9928BD-5453-4bdd-903D-E525ED17FDE5}")
Q_CLASSINFO("InterfaceID", "{C9F6860E-2D5A-42ec-87F2-43396F4BE489}")
Q_CLASSINFO("EventsID" , "{1B3E9F27-F4F1-45bb-9E47-63099BCCD0E4}")
Q_CLASSINFO("ToSuperClass", "MyQtActiveX")
Q_CLASSINFO("CoClassAlias", "MyLib.MyQtActiveX")
...
}