我想知道,如果我使用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. Excel VBA WorkSheet.Copy Excel 2013后
- 2. excel VSTO插件可以兼容excel 2007和2010吗?
- 3. Range.find与excel VBA不兼容
- 4. 向后兼容C#/ .NET API的工具?
- 5. aspnet-api-versioning - 向后兼容性
- 6. Android地图API v2向后兼容性
- 7. Office.Interop向后兼容?
- 8. 向后兼容Android
- 9. 向后兼容BackupAgent
- 10. ios5向后兼容
- 11. MSVCRT向后兼容?
- 12. 向后兼容setOnDateSetListener
- 13. Excel 2013到2010与ActiveX的向后兼容性问题(不是Dec14th更新问题)
- 14. 公式插入在Excel 2013中
- 15. python 3.4 and excel 2013
- 16. Excel 2013后台定制问题
- 17. Excel工作簿在Excel 2013上保存后会冻结
- 18. 如何使用“Microsoft Excel SDK 2013”和VS2015社区构建Excel插件?
- 19. Excel 2003文档级别自定义和Excel 2010兼容性
- 20. excel interop OK与Excel 2003与'Office 2007兼容包'?
- 21. SSIS软件包的向后兼容
- 22. 禁用硬件加速,向后兼容
- 23. 为zope组件提供向后兼容
- 24. Python软件包向后兼容
- 25. 32位Excel宏与64位不兼容
- 26. Word和Excel与Microsoft Office的兼容性
- 27. Excel VBA不兼容kernel32调用
- 28. Excel的VBA兼容性问题
- 29. Excel公式和宏不兼容?
- 30. currentchart.export兼容性excel 2010 vs 2003
谢谢您的留言。你的意思是说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