【问题标题】:MS Access programs affected by running c# code designed for different versions运行为不同版本设计的 c# 代码影响的 MS Access 程序
【发布时间】:2016-09-21 08:23:17
【问题描述】:

我编写了一个程序,可以在 Access、Excel 和其他一些程序之间转移数据。我有 office 2016 并在我的代码中使用了相关的 comm 引用。我使用 clickonce 进行部署。在我的电脑上工作正常。当部署到具有不同版本办公室的其他人时,它也可以正常工作。

但是,在具有不同版本 Office 的计算机上使用后,以前在该计算机上运行的类似程序不再运行。我相信这可能是因为当我的程序安装时,它在本地计算机上注册了 2016 版的 office dll,至少在访问的情况下,它不向后兼容。解决方案是以管理员身份打开旧程序,据我所知,这允许这些程序将注册的 dll 重置为它们所构建的任何版本的 office,但这意味着我的程序不再工作。

首先我查看了引用隔离,但我现在了解 Microsoft 不会允许您隔离任何 office dll。关于如何防止我的程序干扰用户计算机上其他类似程序的任何想法。

以下是旧程序运行时的错误消息:

"无法启动。 无法初始化 Windows 注册表。 重新运行 Microsoft Access 或 Microsoft Office 安装程序以重新安装。”

【问题讨论】:

    标签: c# ms-access deployment version


    【解决方案1】:

    这是在计算机上运行混合版本的 Access(和 Office)的已知问题。

    您可以通过在其他计算机上使用运行时版本的 Access 来绕过它,但是当您在其他 Office 应用程序周围移动数据时,该选项可能不适合您的场景。

    【讨论】:

      猜你喜欢
      • 2018-09-02
      • 2018-06-24
      • 1970-01-01
      • 1970-01-01
      • 2011-05-14
      • 2015-12-15
      • 1970-01-01
      • 2017-03-02
      • 2018-02-10
      相关资源
      最近更新 更多