我想知道VSTO是否能在支持COM对象的新的.NET Core 3上工作。可以使用.Net Framework创建项目,然后通过修改.csproj文件将其迁移到.NET Core,但是否与VSTO兼容?如果不兼容,是否有.NET Core 3中的VSTO的替代方案?
lf5gs5x21#
目前似乎没有替代方案。有人请求在将来将此支持添加到.Net 5 https://developercommunity.visualstudio.com/idea/757925/please-port-visual-studio-tools-for-office-vsto-to.html目前的建议似乎是使用Office JS平台来创建加载项。这些加载项也将跨平台兼容(https://blogs.msdn.microsoft.com/deva/2018/04/02/office-developer-difference-between-office-web-addin-vs-comvsto-addin)
pepwfjgg2#
VSTO目前不支持.Net核心。但是,您可以通过实现公开IDTEXtensibility2接口的COM对象来创建纯的基于COM的加载项。问题是为什么需要单独使用.Net Core开发外接程序?您的外接程序将在安装了Office套件的计算机上运行,这意味着也将安装.Net运行时。
guz6ccqo3#
基于.NET 5的和加载项的示例实现(适用于Visio,安装在WIX上)应编译并工作。将单个可单击按钮添加到功能区:https://github.com/nbelyh/VisioComAddinNet5但是,这些步骤必须是所有Office应用程序通用的。
3条答案
按热度按时间lf5gs5x21#
目前似乎没有替代方案。有人请求在将来将此支持添加到.Net 5 https://developercommunity.visualstudio.com/idea/757925/please-port-visual-studio-tools-for-office-vsto-to.html
目前的建议似乎是使用Office JS平台来创建加载项。这些加载项也将跨平台兼容(https://blogs.msdn.microsoft.com/deva/2018/04/02/office-developer-difference-between-office-web-addin-vs-comvsto-addin)
pepwfjgg2#
VSTO目前不支持.Net核心。
但是,您可以通过实现公开IDTEXtensibility2接口的COM对象来创建纯的基于COM的加载项。
问题是为什么需要单独使用.Net Core开发外接程序?您的外接程序将在安装了Office套件的计算机上运行,这意味着也将安装.Net运行时。
guz6ccqo3#
基于.NET 5的和加载项的示例实现(适用于Visio,安装在WIX上)应编译并工作。
将单个可单击按钮添加到功能区:https://github.com/nbelyh/VisioComAddinNet5
但是,这些步骤必须是所有Office应用程序通用的。