【问题标题】:How to make Windows forms app to support Older versions of MS Office?如何使 Windows 窗体应用程序支持旧版本的 MS Office?
【发布时间】:2019-11-11 18:32:23
【问题描述】:

我需要开发一个 Windows 应用程序。我的机器中有 Office 2013。我还需要开发支持 Office 2013 用户机器的应用程序。如何为它做引用dll?

我希望我将使用 Office 2013 进行开发,并且它应该也支持(应用程序应该可以在 Office 2010 上运行)

我已经使用 excel 14.0 参考文件制作了应用程序。因此,如果一台机器有 excel 2010,那么应用程序无法在该机器上打开

【问题讨论】:

  • 你能告诉你遇到了什么问题吗?
  • 请更具体地说明“支持 Office 2013”​​和“支持 Office 2010”的含义。
  • 如果你对office的DLL引用有问题,可以试试开源Excel library
  • 我用 excel 14.0 参考文件制作了应用程序。因此,如果一台机器有 excel 2010,那么应用程序无法在该机器上打开
  • “支持”到底是什么意思?你需要什么功能?如果您正在谈论使用 COM 互操作,最好尽可能避免这种情况,或者直接操作数据文件,如果您只是创建内容,或者您​​可能希望使用 Office 加载项来完成您的工作,或其他一些后台自动化。互操作是缓慢的、有缺陷的并且通常不可靠。但是,如果您出于某种原因确实需要它,那么我建议您可以start here 尝试解决您的问题

标签: c# excel vb.net excel-2010 excel-2013


【解决方案1】:

Office 正好相反!

要支持自 2010 年以来的所有 Office 版本,您必须使用 Office 2010 开发和维护您的 WinForms 应用程序,这是您想要支持的最旧版本的 Office。每当您在装有 Office 2010 或更新版本的计算机上部署应用程序时,它都可以工作。但它会在 2007 和 2003 等旧版本中失败。

这种设计是有道理的,因为不能指望使用 Excel 2016 开发的工作库可以在 Excel 2010 上运行而不会出错。 2016 年的工作簿可能会使用 2010 年不存在的功能。

【讨论】:

  • 嗨罗伯特,问题是我想在我的机器上安装 Excel 13 或 16 的最新版本。我正在开发其中的应用程序,我想在另一台机器上运行这些应用程序谁在 2010 年表现出色
  • 嗨,Saran,我知道,但我所描述的是如何实现与 Office 的向后兼容性。 15 年来,我一直在为运行不同版本 Office 的多个客户维护基于 Office 的应用程序。这是 Microsoft 推荐的方法。我不再拥有多年前阅读此内容的链接。如果您愿意,您可能会找到它,或者我可以寻找它。
  • 我的回答有意义吗?
  • 您好罗伯特,感谢您的回复。使用较低的 Office 版本可以消除此问题。但我需要使用更高版本才能实现其他一些要求。不幸的是,客户正在使用越来越低的版本。那么除了使用低版本还有什么办法吗??
  • 不幸的是,没有。但是您可以维护多个版本,直到使用旧版本的客户端升级到更新的版本。顺便说一句,2010 版本的客户端应该升级,因为 2010 版本不再受 Microsoft 官方支持。
猜你喜欢
  • 2020-02-29
  • 1970-01-01
  • 1970-01-01
  • 2016-11-23
  • 2014-03-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多