MS Access将参考路径更改为不再存在的路径

时间:2012-01-05 21:43:02

标签: ms-access vba access-vba ms-access-2003

当我在Windows 7 SP1 64位上编译MS Access 2003应用程序并在Windows 7 SP1 32位中启动它时,Microsoft Common Dialog Control 6.0(SP3)路径从C:\Windows\SysWOW64\comdlg32.ocx更改为\\shared\access\comdlg32.ocx,这是应用程序从Windows 7 SP1 32位用户启动的共享驱动器。

我需要32位计算机上的参考:C:\Windows\System32\comdlg32.ocx

32位机器错误开启:Dim Cnxn As ADODB.Connection Set Cnxn = New ADODB.Connection但是当通过将应用程序下载到32位机器正确引用通用对话框控件,浏览comdlg32文件,添加它作为参考,并重新编译应用程序时在32位电脑上工作正常。

Common Dialog Control与ADODB有什么关系? 我不认为我在任何地方使用Microsoft Common Dialog Control。我会做更多的测试......

2 个答案:

答案 0 :(得分:1)

如果您将其用于filedialog,请删除该引用并将其替换为本文中的解决方案:

http://access.mvps.org/access/api/api0001.htm

编辑:这也适用于较新版本,因为它只是一种使用comdlg32.ocx控件的方法。

您收到ADODB错误,因为这是另一个引用,当comdlg32.ocx无法加载Access时会退出加载引用的循环,因此不会加载ADODB组件。

您可以尝试的另一个选项是删除引用并使用后期绑定,例如

Dim fDialog As Object ' previous Office.FileDialog
Set fDialog = CreateObject("Office.FileDialog")

答案 1 :(得分:0)

该引用与ADODB无关。

检查您是否正在使用它的测试很简单:删除参考。如果项目无法编译,那么引用正在使用中。

如果您没有使用该引用,请将其删除,您的问题就解决了。如果您使用该引用 ,则可以使用Windows API调用替换其功能,如Arnoldiusss建议的那样。