我有一个访问2012应用程序,可以正常工作,直到我的同行试图运行它。我们共享一台服务器。当我编译它时,他无法运行它。当他编译它时,角色是相反的。他可以运行它,但我不能。 Access的版本是相同的。我在这里错过了什么?
答案 0 :(得分:2)
首先,您应该测试其他计算机上的每个编译版本,以找出您或您的同事可能是问题的根源。
如果您已经隔离了问题所在的单个特定计算机,那么完全卸载Office并将其重新安装干净可能是件好事;其他东西可能已被破坏。
当您说共享服务器时,我希望您没有从共享网络文件夹运行Access数据库,而是将其正确地拆分为后端数据库(包含数据并位于共享网络文件夹)和前端数据库(包含表单和报告,并在每个用户的计算机上运行)
如果您允许用户从网络文件夹stop right now and split your database运行.accde
文件!
最好在检查时禁用防病毒软件。它可能会阻止某些调用或访问某些库:
具有不同OS或MSOffice位数的系统(32位对64位) 使用Win32 APIs on 64bit MS Office时存在问题 如果您在为32位they won't work on a 64 bit machine。
MSOffice修补程序级别略有不同的计算机。肯定有这样的问题few months ago with SP1直到fix was issued
检查您的MSAccess确切版本:菜单文件>帮助。
我说版本:14.0.6123.5001(32位)
引用不同版本或位置且在系统上找不到的外部库(或其他accda/mda
)。
跟踪和解决这个问题很复杂,但有pointers on how to minimize the issues
您是否引用了绝对路径所在的任何库?
有些相关,使用未正确注册的第三方ActiveX组件,或每台计算机上的版本不完全相同。
数据库的轻微腐败 尝试decompile it(进行备份后)。
您是否针对位于每台计算机上不同位置的后端数据库使用链接表?
确保运行已编译accde
文件的文件夹已添加到Trusted Locations列表中。
使用普通addcb
数据库并在运行时模式下运行(使用msaccess.exe command line选项/runtime
)。
你有同样的问题吗?
如果问题来自您的代码而不是访问中的崩溃,则可能需要添加一些日志来跟踪代码的执行情况。
您还应该查看vbWatchdog和优秀的库来管理错误并跟踪代码(您可以免费试用)。
强烈推荐!