c# - VSTO(Outlook 加载项)设置部署 (C#)

标签 c# deployment outlook vsto

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

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

谢谢。

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

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

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

奇怪,嗯?

最佳答案

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

关于c# - VSTO(Outlook 加载项)设置部署 (C#),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2732415/

相关文章:

html - Mailto正文不填IE

c# - 在字符串 C# 中提取日期?

php - 测试,部署和更新PHP网站

azure - 无需启动角色即可部署到 Azure

ruby - 如何确定puppet类的运行顺序?

java - 在本地主机上通过 Java EE 读取电子邮件 Outlook

delphi - 为什么 SendInput Ctrl+V 在 Outlook 中不起作用?

c# - 使用 Xamarin.Forms.Maps 的 Android 6.0 以上的位置权限

c# - 如何匹配并返回字符串的多个实例,其中任何索引中都可以包含单个撇号?

c# - Service owns disposable Repository that owns disposable DbContext - Dispose IDisposables injected with Unity