【发布时间】:2010-11-09 11:26:39
【问题描述】:
好吧,我正在尝试实现以下目标:将 ActiveX 控件(来自 AutoDesk 的 AxExpressViewerDll::AxCExpressViewerControl)添加到 Qt 表单。但是,没有办法让对象从 DLL 中加载,例如(长数字是从 Visual Studio 获取的 UUID):
QAxWidget* wmp = new QAxWidget();
wmp->setControl("{55523A67-A054-4064-B88D-0070305C9F95}");
VS 很好地拾取 COM 对象,.dll (AdView.dll) 已使用 regsvr32 注册,我什至使用 LIBS 指令将 dll 直接链接到项目。我什至试过这个:link
我总是得到:
CoCreateInstance 失败(类不 注册)
QAxBase::setControl: 请求控制 {55523A67-A054-4064-B88D-0070305C9F95} 无法实例化
任何帮助将不胜感激
【问题讨论】:
-
您可以尝试通过控件的名称来实例化控件。另外,请检查您是否不需要在构造函数中为控件传递许可证文件。
-
好的,你如何获得控件的名字?我没有任何可用的文档。我所拥有的只是少量的示例代码,其中组件在 VS 中的 C# 中使用 ...