.net 可以在任何版本的MS Office上运行的Office扩展应用程序

.net 可以在任何版本的MS Office上运行的Office扩展应用程序,.net,interop,.net,Interop,我想创建一个MS Excel扩展应用程序,该应用程序应与的任何版本一起运行 Excel女士。我不想为不同版本的excel维护不同的解决方案 我所知道的一个解决方案是使用最低支持版本的互操作库。例如,如果MS Excel 2000 interop Library是您计划支持的最低版本,请使用它。您可以使用该互操作库的早期绑定。我们只能使用最低版本的interop库提供的功能。此外,我们假设较新版本将与较旧版本兼容,因此应用程序将在所有较新版本上工作 上述解决方案有什么问题吗?有没有其他解决办法 注

我想创建一个MS Excel扩展应用程序,该应用程序应与的任何版本一起运行 Excel女士。我不想为不同版本的excel维护不同的解决方案

我所知道的一个解决方案是使用最低支持版本的互操作库。例如,如果MS Excel 2000 interop Library是您计划支持的最低版本,请使用它。您可以使用该互操作库的早期绑定。我们只能使用最低版本的interop库提供的功能。此外,我们假设较新版本将与较旧版本兼容,因此应用程序将在所有较新版本上工作

上述解决方案有什么问题吗?有没有其他解决办法


注意:这个问题专门讨论MS Excel,但它同样适用于其他MS Office产品,如Word。

我不确定它们是否提供这种兼容性。他们说:

“Microsoft建议您构建一个 每个应用程序的外接程序版本 您打算使用的Office版本 支持“

请看一看,尤其是Office的多个版本


还有一些方法可以尝试实现这一点,如后期绑定、反射等。您可以查看更多信息。

您可能需要查看NetOffice项目:

它是一组独立于版本的互操作程序集。 还包括每个成员的IntelliSense,显示实现该成员的Office版本以及com代理的自动管理。
对于部署,您可以在应用程序中复制或安装程序集。

如果是这种情况,则应使用后期绑定(基于反射)为不同版本创建单个解决方案,但以牺牲开发人员的生产力为代价。有版本吗?我不想支持使用Excel 2.0的版本