我想知道,如果我使用vs 2012开发Excel 2013的插件/插件,并且.net 4.0与最新的Excel 2013版本的所有版本兼容到2003版本。Excel 2013插件API向后兼容Excel 2003-2010?
回答
是的,这是可能的,因为它是COM,所以不依赖.Net版本。
使用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接口。
这种类型的解决方案将工作,只要
工作站计算机已安装VSTO 2010运行时。
工作站安装了.Net Framework 4.0框架。
工作站具有向上安装的Office 2007版本。 (2010 VSTO运行时不针对2003)。
它不会对工作Excel 2003中
笔记:
通过工作站我指的终端用户(部署)工作站。 您在API中使用的任何功能都必须存在于您希望定位的所有Office版本中。
因此,例如,你不能在你的插件中使用sparklines对象,或者如果你确实要在if(application.Version> 14.0)的代码周围放一个if语句,这样它就不会在2003年被调用。
还要记住在你的解决方案中嵌入类型。
- 1. 插件向后兼容性
- 2. Excel VBA WorkSheet.Copy Excel 2013后
- 3. excel VSTO插件可以兼容excel 2007和2010吗?
- 4. Visual Studio 2012 - 仅适用于MS Excel 2013模板,向后兼容性?
- 5. 在C#中使用excel互操作向后兼容
- 6. Excel和Ruby的兼容性
- 7. Range.find与excel VBA不兼容
- 8. AddChart2与Excel 2010不兼容?
- 9. iOS 6 API和向后兼容性
- 10. 在RESTful API中向后兼容
- 11. aspnet-api-versioning - 向后兼容性
- 12. 向后兼容更改Web服务API?
- 13. Android地图API v2向后兼容性
- 14. 向后兼容C#/ .NET API的工具?
- 15. Xcode向后兼容
- 16. 向后兼容Android
- 17. 向后兼容BackupAgent
- 18. ios5向后兼容
- 19. Office.Interop向后兼容?
- 20. iOS6向后兼容
- 21. MSVCRT向后兼容?
- 22. 向后兼容setOnDateSetListener
- 23. Excel 2013到2010与ActiveX的向后兼容性问题(不是Dec14th更新问题)
- 24. Excel 2013 ListObject
- 25. 通过Access 2013编辑后无法打开Excel 2013文件VBA
- 26. JavaFX的Maven插件和API不兼容
- 27. Grails插件enconding:向下兼容性
- 28. 将VBA API更新到64位Excel 2013
- 29. Visual Studio 2017 RC向后兼容Visual Studio 2013解决方案吗?
- 30. 公式插入在Excel 2013中
谢谢您的留言。你的意思是说Excel 2003插件需要分别用于2003,2007年的2007年插件,2010年的2010年,2012年的2012年以及2013年的2013年等等。这是否意味着针对相同插件的版本特定工作? – John 2013-02-15 02:49:18
谢谢你的留言。你的意思是说Excel 2003插件需要分别用于2003,2007年的2007年插件,2010年的2010年,2012年的2012年以及2013年的2013年等等。这是否意味着C#中针对相同插件的版本特定工作? – John 2013-02-15 03:01:23