Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/326.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# Excel加载项COM加载项与VSTO加载项_C#_Vsto_Add In_Excel Addins - Fatal编程技术网

C# Excel加载项COM加载项与VSTO加载项

C# Excel加载项COM加载项与VSTO加载项,c#,vsto,add-in,excel-addins,C#,Vsto,Add In,Excel Addins,我在网上搜索了好几个小时,但都不满意- VSTO Addin和COM Addin(我们将其作为类库项目并使用excel对象)之间有什么区别? VSTO项目中是否存在任何限制,例如它仅适用于特定版本的excel。COM加载项使用与Office应用程序通信 VSTO(以及任何其他Office外接程序库,如外接程序Express)基于并扩展了此接口。例如,VSTO 为连接接口做了大量的后台工作 提供文档级自定义(链接到特定文档或模板的代码),而不仅仅是应用程序级加载项 扩展Word或Excel对象模

我在网上搜索了好几个小时,但都不满意- VSTO Addin和COM Addin(我们将其作为类库项目并使用excel对象)之间有什么区别? VSTO项目中是否存在任何限制,例如它仅适用于特定版本的excel。

COM加载项使用与Office应用程序通信

VSTO(以及任何其他Office外接程序库,如外接程序Express)基于并扩展了此接口。例如,VSTO

  • 为连接接口做了大量的后台工作
  • 提供文档级自定义(链接到特定文档或模板的代码),而不仅仅是应用程序级加载项
  • 扩展Word或Excel对象模型的某些部分,使.NET开发人员能够更简单地使用它们
  • 使开发人员能够将WinForms控件放置在Excel或Word文档表面上,或以与Office技术兼容的方式包装它们,从而将它们放置在自定义任务窗格中
  • 为数据绑定到某些本机Office对象提供“管道”
  • 为“简单”功能区自定义提供功能区设计器,作为功能区XML的替代方案
VSTO适用于Office2007及更高版本(如果我没记错的话,IDTExtensibility2是为Office2000引入的)。对于计划支持的最早版本的Office,必须使用正确的.NET Framework和VSTO模板。为早期版本创建的加载项可以在Office的更高版本中使用,而无需重新构建


基于该界面的任何加载项都仅限于Windows桌面。

谢谢,帮助很大。还有一个问题VSTO文档级自定义和应用程序级自定义是否正确?实际上,我正在为某些金融数据库开发Excel加载项,我必须决定使用哪种技术-COM加载项/VSTO/javascript API。可以在Web加载项中访问数据库吗?你有什么建议?你的第一个评论@Abhishek:是的,VSTO两者都有。您的第二个评论:我真的没有答案的各种原因,但要考虑是否想“链接”到台式机,也支持Mac或Office“联机”(Word= JS)。