【发布时间】:2013-06-03 06:03:45
【问题描述】:
我想知道我是否使用 vs 2012 为 Excel 2013 开发插件/插件,并且 .net 4.0 与最新的 Excel 2013 版本到 2003 版本的所有版本兼容。
【问题讨论】:
标签: c# visual-studio excel ms-office
我想知道我是否使用 vs 2012 为 Excel 2013 开发插件/插件,并且 .net 4.0 与最新的 Excel 2013 版本到 2003 版本的所有版本兼容。
【问题讨论】:
标签: c# visual-studio excel ms-office
这种类型的解决方案只要
工作站计算机已安装 VSTO 2010 运行时。
工作站已安装 .Net Framework 4.0 框架。
工作站安装了 Office 2007 以上版本。 (2010 VSTO 运行时不针对 2003)。
它不适用于 Excel 2003。
注意事项:
通过工作站,我指的是最终用户(部署)工作站。
您从 API 使用的任何功能都必须存在于您希望定位的所有 Office 版本中。
因此,例如,您不能在插件中使用迷你图对象,或者如果您确实确保使用 If(application.Version > 14.0) 在代码周围放置一个 if 语句,以便它永远不会在 2003 年被调用。
还要记住在您的解决方案中嵌入类型。
【讨论】:
使用 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接口。
【讨论】:
可以,因为它是 COM,因此不依赖于 .Net 版本。
【讨论】: