VB6 + componentone在Windows7中开发了应用程序

时间:2010-09-03 11:17:58

标签: vb6 windows-7 componentone

这是一个疑难问题。

我们的应用程序的开发环境是VS2005 C / C ++,基于VB6的GUI。

我们还使用componentone进行ActiveX控件(vsflexgrid8)。

应用程序在Windows XP中运行良好,但在Windows 7中,GUI存在一些问题。

在Windows 7中重建了几乎所有的C / C ++代码和VB6代码

  • 我们的构建系统太差了,因为我一个月前加入了这个团队,构建所有代码都有点困难

  • 但我认为这个(也许)最后一个问题与构建无关。

所有其他流程和GUI流程都很好。但是当点击GUI中的某个菜单时,所有用户控件都将无效。

错误消息如下所示:

  

' - 2147417848(80010108)'发生了   运行时错误。

     

自动化错误。

     

从中断开调用的对象   客户端。

以上消息与真实消息不同,因为真实消息是我们的母语(韩语)。

在使用此消息进行Google搜索时,我可以收集一些信息。

最可能的情况是使用OLE自动化用于Microsoft Office对象。

但我们的GUI(VB6开发)不使用Microsoft Office Objects。

引起问题的页面/控件通常使用componentone模块。

所以,如果遇到类似的问题,请帮助我。

在虚拟机Windows XP模式下,没有问题。但我非常愿意在这种环境中发展。

感谢您的帮助。

3 个答案:

答案 0 :(得分:1)

'自动化错误'只是意味着从ActviveX控件中引发了错误,但开发人员没有向其添加描述。所以原因可能是任何事情。  此类错误的常见来源是对受保护文件夹(例如Program Files文件夹)的写入错误或禁止的注册表读/写操作。您可以尝试将程序安装到其他位置或升级运行。

希望这至少有一点帮助。

答案 1 :(得分:0)

正如Dabbler所说,这意味着ActiveX组件中存在错误。

  • 在发生此错误之前,是否有任何C或C ++代码运行?
  • 您使用的是最新版本的ComponentOne控件吗?也许值得检查它是否在Windows 7上受支持并联系他们的技术支持?
  • 您可以在Windows 7上调试VB6和C / C ++,以跟踪哪一部分代码触发此问题。这可以使用Visual Studio 2005,你说你有,或者WinDbg是免费的。

答案 2 :(得分:0)

我通过Windows更新解决了这个问题。

由于一次执行大约20~30次更新,我无法知道更新解决了什么。

我猜Visual Studio 2005安全更新可能是造成这种麻烦的原因。

无论如何,我的应用程序在我的Windows 7机器上运行良好。

感谢All。