C++调用COM之错

记录一下:昨天加班到晚上12点都没找到原因,出现奇怪的错误,今天上午偶然发现了问题所在。

事情经过是:

我之前测试无误的COM,当时是在控制台下,然后昨天想把它用在Qt中,理论上是没有任何问题的,但是加进去在使用智能指针时始终出现这个错误

 

百思不得其解,怀疑了各种情况:多线程的影响,成员函数指针头文件的影响,Qt的影响,多层调用的影响。当把这些原因通过测试一一排除之后就12点了,直接扔掉,回宿舍了。

今天准备拷到笔记本上试试,发现报了另一个错:告知我,无法启动程序,由于应用程序配置不正确...参见应用程序日志。

查了一下,说在项目属性中将 链接器-->清单文件-->生成清单-->设置“否”

然后不报这个错了,继续调试,结果出现了与上面同样的COM异常,终于有眉目了,说明这个异常就是清单文件引起的,果断在台式机的Qt项目中设置 生成清单-->设置“是”,然后,智能指针不再报错,通过!

原因是,之前为了在Release下调试Qt工程,将生成清单设置为了“否”。

感触就是,COM不如dll好用,主要还是水平太次。

 

posted @ 2016-05-25 12:00  gisk  阅读(320)  评论(0编辑  收藏  举报
这是微黔的博客