ms-access - ms access accdb 到 accdr 转换

标签 ms-access ms-access-2010 ms-access-2013

只是一个关于 MS Access 运行时版本的小问题。我有一个 accdb 文件,我将其重命名为 accdr 并尝试在运行时版本中执行它,但不幸的是我无法打开该文件,因为我收到安全身份验证警告,指出我尝试打开的文件包含一些未经身份验证的内容。

我已经尝试过将 accdb 转换为 accdr 的标准方法。我知道内容是有效的(由我创建),所以任何人都可以帮助阐明这个问题。

最佳答案

首先,重命名文件不会改变您所拥有的内容。我的意思是,我无法将 Word 文档重命名为 AutoCAD 文档,并且您现在突然拥有了一个 Auto CAD 应用程序。因此,重命名某些内容的“行为”不会改变文件内部的内容。

因此,声明将 accDB 重命名为 accDR 是某种“转换”,而您尝试进行此类转换并不是计算机的工作方式。

接下来,您无需说明您是否在开发计算机上运行 accDR。更糟糕的是,当您将 accDB 复制到该计算机并双击它时会发生什么?

因此请记住以下几点:

如果您在计算机上安装运行时,则只需复制任何 mdb、mde、accDB、accDE 甚至 accDR,然后只需双击该文件即可启动/运行该应用程序。

因此,将文件重命名为 accDR 的要求为零,这样做与仅使用运行时将 accDB 复制到该计算机并简单地双击该 accDB 没有什么不同。

因此不需要将文件重命名为 accDR

但是,有关未加密内容的错误消息是另一个问题,与 accDR 问题根本无关。如果您只是将任何 Access 文件复制到该计算机并双击它,您就会收到该错误。因此,此问题的解决方案是确保 accDB 文件的文件夹/位置位于受信任的文件夹中。

最后但并非最不重要的一点: 你真的(但真的真的真的)想要将你的 accDB 编译成 accDE。在使用和运行应用程序之前,应对所有应用程序执行此操作。更重要的是,如果使用 accDB,则使用运行时时任何未处理的错误都会关闭您的应用程序,但如果您使用 accDE,则不会。

因此,将文件重命名为 accDR 不会执行任何操作,不会产生任何结果,而且不是必需的。 accDR 的唯一优点是它可用于在开发计算机上进行测试,因为使用该文件扩展名将可以 Access “模拟”或“模仿”运行时环境。然而,由于目标机器是运行时的,因此不需要这种重命名,从而对结果实现零影响。

因此您需要确保数据库在受信任的位置运行。

这解释了如何执行此操作:

http://office.microsoft.com/en-gb/access-help/decide-whether-to-trust-a-database-HA010341635.aspx

因此,理论上您应该看到/收到安全警告并能够“启用内容”。

您还可以考虑向注册表添加受信任位置,甚至可能提供一个导出的“注册表”文件,可以在目标计算机上单击该文件来创建该受信任文件夹。

因此,作为一个很好的一般建议,您需要首先将您的应用程序编译为 accDE。重命名为 accDR 的下一步是可选的,不是必需的,并且不会更改应用程序,也不会在使用运行时时实现任何用途。

关于ms-access - ms access accdb 到 accdr 转换,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26678689/

相关文章:

ms-access - 无法添加或更改记录,因为表 'COMPANY' 中需要相关记录

excel - 从 Excel VBA 检查 MS Access 中是否存在查询

c# - 从 C# 中的插入查询返回 ID

ms-access-2010 - Access 2010 计算字段 - 表需要比静态字段更多的空间

vba - 将列表框复制到另一个列表框

SQL Access 2010 - 三个表上的完全外连接

用于显示电子邮件列中域名总数的 SQL

ms-access - MS Access 将 .mdb 合并到 .accdb 花费太多时间

sql - 如果另一个表中不存在该条目,则将记录插入表中,这需要额外的调整

ms-access - 在不暂停应用程序的情况下使用MsgBox