COM外接程序和VSTO外接程序之间的区别是什么

COM外接程序和VSTO外接程序之间的区别是什么,com,vsto,Com,Vsto,我正在尝试为outlook开发一个加载项,并找到了一个提供程序。但是,他们有两个产品在一个(http://www.add-in-express.com/add-in-net/index.php)它们允许使用VS 2010和.Net Framework 4.0创建COM加载项(这怎么可能,我一直认为COM只能在VB6中创建,否则必须创建COM可调用包装(CCW)) 另一个产品是VSTO工具(http://www.add-in-express.com/add-in-vsto/index.php),它

我正在尝试为outlook开发一个加载项,并找到了一个提供程序。但是,他们有两个产品在一个(http://www.add-in-express.com/add-in-net/index.php)它们允许使用VS 2010和.Net Framework 4.0创建COM加载项(这怎么可能,我一直认为COM只能在VB6中创建,否则必须创建COM可调用包装(CCW))

另一个产品是VSTO工具(http://www.add-in-express.com/add-in-vsto/index.php),它也在使用.Net Framework 4.0,这完全令人困惑

请帮我理解

问候 Mohit Thakral

VSTO使用托管API与Office进行通信。不幸的是,唯一已知的与Office产品直接通信的方法是使用COM组件,因为Office是建立在COM组件之上的技术。即使在使用VSTO时,您仍然必须了解COM对象的生存期-它们不会为您封装它(您仍然需要调用)

深入了解VSTO的一个重要资源是。如果您选择VSTO路由,您还应该选择(VSTO_PTExtLibs.exe),这将减轻使用扩展方法限制COM参数的痛苦

我个人没有发现使用AddIn Express的必要性,但是如果您不想花时间学习VSTO框架,您可能会发现它对您有所帮助。这一选择还取决于解决方案的复杂性以及可用的时间和资源。

但是“IDTExtensibility2”呢。。这是用于COM外接程序的,那么VSTO加载程序呢VSTO加载程序是-构建基于VSTO的外接程序时使用的API。VSTO运行时仍然可用,因此您不必处理较低级别的COM接口。VSTO的目标是使与office的集成更易于理解。你当然可以在你觉得最需要控制的地方插入钩子。