Access 2013 Runtime - 一些奇怪的问题(表单不会出现在一台计算机上但不出现在另一台计算机上)

时间:2016-09-19 09:46:22

标签: ms-access ms-access-2013

最近我遇到了一些非常奇怪的问题,而且我无法确切地说明导致它的原因。

我有一个使用SQL Server链接表的Access前端应用程序。几天前,我部署了一个新的ACCDE版本,这引起了一些非常奇怪的问题。

在一台计算机上,我无法从功能区打开表单(某些21~ash错误无法准确记住,但这是默认的开放式错误)。经过一些调查后,我发现问题是由表单allow additions = false上的on-open event行引起的。然而这很奇怪,因为它一直存在。除此之外,几乎所有其他计算机,包括我的,它只是工作正常,而代码(和表单,查询等)完全相同..

当试图在该特定计算机上的accdb中打开相同的访问文件时,它似乎工作(打开正在运行时版本)。 因此,作为解决方法(暂时),我们确保此计算机将文件作为accdb打开,而其他计算机(它确实工作)将其打开为accdde。

今天它又出现了问题,但是在另一台计算机和另一个问题上。现在一个完全不同的形式不会加载它的数据(它是空的)。在本地测试它然后工作正常并在另一台计算机上再次测试它(还有一个运行时版本)它也打开了很好的数据...

奇怪的是当使用较旧的文件(一些应用程序版本)时工作正常,但当前的文件没有,至少在所有计算机上都没有。这让我相信文件已损坏,但奇怪的是,为什么它可以在其他计算机上运行?如果文件已损坏,您会说它导致所有计算机上的问题?

所以我想到的下一件事是不同的Access运行时版本。我测试了4台计算机(两台一切正常),另外两台有问题。

  • 计算机1(工作正常)是一个32位系统,具有Access运行时版本15.0.4841
  • 计算机2(有问题)是64位系统,具有Access运行时版本15.0.4569
  • 计算机三(也有问题)是一个32位系统,具有Access运行时版本15.0.4833
  • 计算机四(我自己的计算机针对本地数据库进行测试)是64位系统,Access运行版本为15.0.4849

因此,Access文件不起作用的计算机的版本低于有效的计算机版本,这是否可能导致问题?如果是,我仍然想知道为什么旧的Access应用程序文件适用于所有计算机,但当前的那个不是..

旁注:

  • 还试图在其中一台没有工作的计算机上修复访问运行时版本,但这没有效果
  • 做一个紧凑的&修复Access文件本身也没有任何影响

1 个答案:

答案 0 :(得分:2)

嗯,简单明了,不能用x64位运行时运行x32 accDE数据库 - 它根本不起作用。

如果这些目标计算机上的运行时版本不同,那么您要卸载运行时,并下载最新版本。 Windows更新不会更新运行时。在运行时2010中,您必须下载+安装运行时,然后还要将更新下载到运行时。

使用2013年,最新的运行时下载将始终包含最新的SP更新。

尝试使用不同的运行时运行Access通常会造成灾难。在尝试在编译为x32的应用程序上使用x64位运行时的情况下根本不起作用。

在编译到accDE之前我也会检查并删除所有不需要的引用。因此,应删除对word,excel或其他任何内容的引用,并应使用后期绑定。

无论如何,您要确保所有计算机都使用相同的运行时版本,这包括位大小。因此,在所有情况下,您都希望确保并使用x32位运行时,然后确保所有计算机都运行相同的运行时版本/修订版。