我的VB应用程序出现了一个奇怪的问题让我非常困惑。我正在更新现有的程序。我不得不添加一些处理队列功能。在我的系统上,单元测试工作得很好但是当我编译它并在另一台计算机(网络服务器机器)上运行时,它首先尝试打开办公室安装。如果我取消这个,程序似乎运行正常。问题是这个程序将在后台运行,每次运行时我都无法取消。
所以我的问题是:这里发生了什么?我通常是一个日食的java开发人员所以我习惯于能够自动将所有需要的库包含到jar文件中。它看起来与VB6不同。似乎它希望所有系统上都有相同的库。有什么方法可以告诉可能触发这个的原因吗?
我唯一能想到的就是我在kernal32 lib中使用“OpenProcess”函数。这是我所做的唯一重大改变。
任何帮助都会非常适合。谢谢!
编辑: 似乎在系统上安装了多个版本的单词,并且它以某种方式搞砸了。我们卸载了一个并修复了它。
答案 0 :(得分:1)
我刚刚遇到这个问题,它与我的VB6应用程序的安装程序有关,它覆盖了Office应该没有的一些系统文件。只要有一个系统dll被访问,Windows就会确定出现问题并且Office安装程序会启动。
短期解决方法是让Office安装程序修复损坏的dll链。
长期修复是永远不会覆盖内置的Windows系统dll。
您还可以查看Microsoft Fix it Center。