【问题标题】:Is the Excel 2013 plugin API backwards compatible with Excel 2003-2010?Excel 2013 插件 API 是否向后兼容 Excel 2003-2010?
【发布时间】:2013-06-03 06:03:45
【问题描述】:

我想知道我是否使用 vs 2012 为 Excel 2013 开发插件/插件,并且 .net 4.0 与最新的 Excel 2013 版本到 2003 版本的所有版本兼容。

【问题讨论】:

    标签: c# visual-studio excel ms-office


    【解决方案1】:

    这种类型的解决方案只要

    工作站计算机已安装 VSTO 2010 运行时。
    工作站已安装 .Net Framework 4.0 框架。
    工作站安装了 Office 2007 以上版本。 (2010 VSTO 运行时不针对 2003)。

    它不适用于 Excel 2003。

    注意事项:
    通过工作站,我指的是最终用户(部署)工作站。 您从 API 使用的任何功能都必须存在于您希望定位的所有 Office 版本中。
    因此,例如,您不能在插件中使用迷你图对象,或者如果您确实确保使用 If(application.Version > 14.0) 在代码周围放置一个 if 语句,以便它永远不会在 2003 年被调用。
    还要记住在您的解决方案中嵌入类型。

    【讨论】:

      【解决方案2】:

      使用 Visual Studio 2012 中的“Excel 2010 插件”项目模板和其他 Office 应用程序的等效项,答案是否定的。使用“2003”和“2007”模板(使用 Visual Studio 2010 创建)创建的加载项将分别适用于 Office 2003 及更高版本以及 Office 2007 及更高版本。使用“2010”(使用 Visual Studio 2012 创建)模板创建的加载项将适用于 Office 2010 及更高版本。这些是“VSTO”风格的加载项,特定于给定版本的 Office 或更高版本。

      使用 IDTExtensibility2(可以使用本机或托管代码编写)的 COM 加载项可以针对较低级别的应用程序版本中受 API 支持的旧版本。 Visual Studio 2010 提供了“共享插件”模板,允许使用此框架开发面向 Office 应用程序的 .NET 插件。但是,我认为此项目模板类型已从 Visual Studio 2012 中删除。但是,通过一些黑客攻击,我相信可以使“Visual Studio 加载项”类型在 Office 应用程序中加载加载项,因为它们使用相同的底层IDTExtensibility2和相关的COM接口。

      【讨论】:

      • 感谢您的留言。您的意思是说Excel 2003插件需要用于2003、2007插件用于2007、2010用于2010、2012用于2012、2013用于2013等等?这是否意味着同一个插件有特定于版本的工作?
      • 感谢您的留言。您的意思是说Excel 2003插件需要用于2003、2007插件用于2007、2010用于2010、2012用于2012、2013用于2013等等?这是否意味着同一个插件在 C# 中存在特定于版本的工作?
      【解决方案3】:

      可以,因为它是 COM,因此不依赖于 .Net 版本。

      【讨论】:

        猜你喜欢
        • 2012-07-08
        • 1970-01-01
        • 1970-01-01
        • 2011-07-10
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多