当前位置 : 主页 > 编程语言 > c语言 >

vb6 – 仅在Windows 7上编译时,“New ADODB.Connection”上的“无效的过程调用或参数”

来源:互联网 收集:自由互联 发布时间:2021-06-24
我在VB6上编译一些遗留应用程序时遇到了一些问题,因为我在 Windows 7中安装了一台新的开发机器.(我的旧机器在Windows XP上.) 如果我在我的XP机器上编译项目,一切都很好. 如果我在我的Wi
我在VB6上编译一些遗留应用程序时遇到了一些问题,因为我在 Windows 7中安装了一台新的开发机器.(我的旧机器在Windows XP上.)

如果我在我的XP机器上编译项目,一切都很好.
如果我在我的Windows 7机器上编译相同的项目,它仍然运行正常,但如果我尝试在XP机器上运行它,我得到了这个错误.

Error Number : 5
Description : Invalid procedure call or argument

感谢我的错误处理程序,我知道抛出此错误的行是:

Dim objConn As ADODB.Connection
--> Set objConn = New ADODB.Connection

我比较了两台机器和项目的引用 – 参考文献是相同的:( Microsoft ActiveX Data Objects 2.7 Library)

什么可能导致此错误?

这是一个已知的 Microsoft issue,但我不认为这是一个bug;我认为出于安全原因,兼容性已被破坏.如果安装了 certain hotfix,则问题可能存在于非SP1版本中. Microsoft KB中引用了几个选项.这是另一个提供更新的 article.

我们遇到了这个问题,我们决定在所有开发人员计算机上部署Backwards Compatibility补丁,并使用Backwards Compatibility参考替换所有旧版ADO参考.这对我们来说效果很好.

网友评论