Visual studio 2012 COM加载项是否与Visual Studio 2012中的Office加载项项目相同?

Visual studio 2012 COM加载项是否与Visual Studio 2012中的Office加载项项目相同?,visual-studio-2012,com,outlook,outlook-addin,Visual Studio 2012,Com,Outlook,Outlook Addin,我是Microsoft Office应用程序开发的新手,需要为Microsoft Office创建COM外接程序,到目前为止,指向COM外接程序的唯一可行来源是: 我猜Office>2010>Outlook插件项目是VSTO而不是COM 如果是这样,那么开始开发实际的COM插件的最佳方式是什么?与环境(如果可能的话,可以使用VisualStudio)和资源一样。我假设COM是一种发展方向,因为VSTO使用了一个包装器,它简化了事情,并且没有给开发人员像COM那样多的控制权 我猜Office>20

我是Microsoft Office应用程序开发的新手,需要为Microsoft Office创建COM外接程序,到目前为止,指向COM外接程序的唯一可行来源是:

我猜
Office>2010>Outlook插件项目是
VSTO
而不是COM

如果是这样,那么开始开发实际的COM插件的最佳方式是什么?与环境(如果可能的话,可以使用VisualStudio)和资源一样。我假设COM是一种发展方向,因为
VSTO
使用了一个包装器,它简化了事情,并且没有给开发人员像COM那样多的控制权

我猜Office>2010>Outlook加载项项目是VSTO而不是COM

不完全是。是的,Visual Studio模板属于VSTO。但是,所有类型的Office插件都基于接口,即基于COM技术。接口承载加载项发生的事件通知,例如加载、卸载、更新等。众所周知的实现是VSTO和外接程序Express

VSTO提供了IDTExtensibility接口、功能区设计器、加载程序(将外接程序加载到单独的AppDomain)等的方便实现


选择哪种方式取决于您,但最新版本的VisualStudio没有提供创建共享(原始IDTExtensibility实现)加载项的模板。您需要自己处理所有操作。

VSTO“没有给开发人员像COM那样多的控制权”是什么意思?使用VSTO和COM,您可以访问Outlook、Word等的底层对象模型。无论如何,如果您想创建COM外接程序,您应该在VS中查找“共享外接程序”项目模板。因此,使用其中一个模板是否有实际的优缺点?