VSTO(Outlook加载项)安装部署(C#)

i8a*_*bug 6 c# deployment outlook vsto

我在为Outlook 2007加载项创建安装文件时遇到一些问题.

问题是加载项需要有一个引用清单的注册表项(http://msdn.microsoft.com/en-us/library/bb386106.aspx).该项目构建一个显示在bin\debug文件夹中的清单文件.但是,在我的安装项目中,如果我去添加项目输出,则清单永远不会列为输出的一部分.奇怪的是,安装程序确实创建了一个注册表项,该注册表项引用了我的bin\debug文件夹中的清单,但这不合适,因为该文件夹在我将部署到的计算机上不可用.

谢谢.

====================================

对于那些感兴趣的人,一些背景问题

  1. 如果我在我的设置中使用项目输出,VSTO加载项第一次安装就好了.如果我使用相同的设置卸载并重新安装,则无法正确安装.如果我重建设置,它会再次安装正常(换句话说,它只在第一次安装时安装).
  2. 我更正了(1)但是从我的安装项目中删除了项目输出,而是手动添加文件(我的dll +清单),然后更新注册表项以指向添加的清单.这一次,我可以使用相同的设置卸载并重新安装.但是,出于某种原因,安装程序会创建两个注册表项,一个是我手动放入的,指的是我包含的清单,另一个自动引用并指向bin\debug文件夹中的清单.我无法删除第二组注册表项,因为它们没有出现在我的安装项目中.将它们留在那里的问题是加载项执行每个命令两次(因为它被注册了两次).

奇怪,嗯?

Mat*_*ias 5

我在VSTO for Office 2007加载项部署中发现这篇微软白皮书非常有用:http: //msdn.microsoft.com/en-us/library/cc563937
(office.12).aspx(我最初链接到另一篇论文这也很棒,但适用于2003 + 2007,这有点不同:http://msdn.microsoft.com/en-us/library/bb332052.aspx)
特别是关于清单的问题,我发现了很难当加载项的注册表项与加载项本身具有相同名称时,出于某种神秘的原因,在构建过程中,Manifest值将从VSTO清单静默替换为加载项清单.

  • 白皮书的下面是更新后的版本(2010 VSTO):http://msdn.microsoft.com/en-us/library/ff937654.aspx (3认同)