1

这是故障排除问题。

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

我们还将 componentone 用于 ActiveX 控件(vsflexgrid8)。

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

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

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

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

所有其他进程和 GUI 进程都启动良好。但是当单击 GUI 中的某个菜单时,所有用户控件都变得无效。

错误消息看起来像这样:

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

自动化错误。

调用的对象与客户端断开连接。

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

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

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

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

导致问题的页面/控件是常用的组件模块。

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

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

谢谢您的帮助。

4

3 回答 3

1

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

希望这至少有一点帮助。

于 2010-09-04T11:33:57.510 回答
0

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

由于一次执行大约 20~30 次更新,我不知道什么更新解决了这个问题。

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

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

谢谢大家。

于 2010-09-16T00:51:19.060 回答
0

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

  • 在此错误发生之前,您的任何 C 或 C++ 代码是否运行?
  • 您使用的是最新版本的 ComponentOne 控件吗?也许值得检查它是否在 Windows 7 上受支持,并联系他们的技术支持?
  • 您可以在 Windows 7 上调试 VB6 和 C/C++ 以跟踪哪位代码触发了此问题。这可以通过您说拥有的 Visual Studio 2005 或免费的 WinDbg 实现。
于 2010-09-04T12:16:27.203 回答