• 5131阅读
  • 2回复

[提问]QT5.2写的ActiveX组件,在XP下无法注册,报0x80040200错误 [复制链接]

上一主题 下一主题
离线xp2009
 

只看楼主 倒序阅读 楼主  发表于: 2014-06-12
提示DllRegisterServer失败,返回代码是0x80040200

Qt Creator+Qt5.2编写的ActiveX组件,使用的是ActiveQt,试验了3台电脑,都不行,而且测试了QT自带的ActiveQt示例程序,也不能注册。

这段代码在VS2008+Qt4.4下生成的组件,可以在XP下注册,并成功调用。
离线xp2009

只看该作者 1楼 发表于: 2014-06-16
后来下载QT5.3 MSVC版 + VS2010后,把源代码文件全部另存为UTF-8带BOM的格式后,编译生成的dll组件可以注册,不过一旦使用QMessageBox和QDebug也无法注册。

然后就是这个ActiveX组件,退出时崩溃,该代码为VS2010自动生成的,全部都是系统生成的代码,退出一样崩溃,不过QT4.4就不会崩溃。

这个崩溃的问题,和无法使用QMessageBox和QDebug的问题,谁知道怎么解决么?
离线xp2009

只看该作者 2楼 发表于: 2014-06-19
改为VS2008+Qt4.8.6就可以解决了ActiveX退出报错的问题,要能使用QDebug不会崩溃
快速回复
限100 字节
 
上一个 下一个