0

我的 VB 应用程序遇到了一个奇怪的问题,这让我非常困惑。我正在更新现有程序。我不得不添加一些处理队列功能。在我的系统上,单元测试工作得很好,但是当我编译它并在另一台计算机(网络服务器机器)上运行它时,它首先尝试打开一个办公室安装。如果我取消它,程序似乎运行良好。问题是该程序将在后台运行,并且每次运行时我都无法取消。

所以我的问题是:这里发生了什么?我通常是我们 eclipse 的 java 开发人员,所以我习惯于能够自动将所有需要的库包含到 jar 文件中。VB6 似乎不是这种情况。似乎它希望所有相同的库都在所有系统上。有什么办法可以判断是什么触发了这种情况?

我能想到的唯一原因是我在kernal32 lib中使用了“OpenProcess”函数。这是我所做的唯一重大改变。

任何帮助都会非常有用。谢谢!

编辑:似乎系统上安装了多个版本的 word,它以某种方式搞砸了。我们卸载了一个并修复了它。

4

1 回答 1

1

我不久前遇到了这个问题,这与我的 VB6 应用程序安装程序覆盖了一些它不应该有的 Office 系统文件有关。任何时候访问系统 dll 之一时,Windows 都会确定出现问题并启动 Office 安装程序。

短期修复是让 Office 安装程序修复损坏的 dll 链。

长期的解决办法是永远不要覆盖内置的 Windows 系统 dll。

您还可以查看Microsoft Fix it Center

于 2013-09-13T16:56:47.903 回答