如何在Qt中使用来自dll的COM对象而不进行注册

时间:2013-06-25 11:35:15

标签: qt com activeqt

我有一个COM可见dll控件,我需要在我的Qt应用程序(4.8.4)中使用。 控制代码在c#

[Guid("XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX")]
public class MyControl: UserControl
{
    public MyControl()
    {
        //Some code
        InitializeComponent();
    }
}

我使用QAxWidget来像这样调用它

QAxWidget *myControl = new QAxWidget(centralWidget);
myControl ->setControl("XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX");

但当然它不起作用,因为在注册表中没有关于我控件的信息

我读了这篇文章http://msdn.microsoft.com/en-us/library/ms973915.aspx,它说可以通过清单解决这个问题,我为我的Qt应用程序做了同样的尝试但它不起作用,它仍然说

CoCreateInstance failure (Class not registered)

我没有以正确的方式为Qt设置清单,或者setControl()方法始终查找注册表。怎么知道怎么处理呢?

由于

0 个答案:

没有答案