我想知道,如果我使用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