excel VSTO插件可以兼容excel 2007和2010吗?

是否有可能使用VSTO开发一个可以部署到Excel 2007和2010的Excel插件?

任何链接到这个主题的详细资源也将不胜感激 – 我似乎无法find谷歌专门解决这个问题的任何东西。

我正在开发一个使用Visual Studio 2010的C#excel插件。

我已经为Word 回答了这个问题,但它也适用于Excel:

如果要部署到Office 2010和2007,则必须添加对v12.0程序集( Microsoft.Office.Interop.ExcelOffice )的引用。

现在还有一个问题,即您的插件将需要2007 PIA,但如果您只在目标计算机上安装Office 2010(因为它们具有Office 2007作为先决条件),则它们将不会安装。 为了解决这个问题,你必须为这两个dll(在引用属性中)设置Embed Interop Assemblies = true ,并且对于你不能直接引用的types使用dynamic

这会导致Intellisense的某些“怪异”不能find方法等,但这不应该是一个大问题 – 至less现在PIA不再是必需的了,并且您的插件将部署在2007年和2010年(您将不得不照顾安装程序也是如此,但这是另外一个故事)。

这是一个混乱,但如果你正在与VSTO工作,我想你已经习惯了这种东西:-)