2015-05-29 78 views
0

我开发了一个使用C#和Visual Studio Outlook插件模板的Outlook插件,它从数据库中检索数据并生成关于数据的报告。部署Outlook插件C#

插件在我的本地机器上工作得很好。但是,当我将插件作为可执行文件分发给用户时,它不适用于用户的机器。 这意味着插件默认没有被选中,即使我手动检查它,它也不会显示在插件栏的外观上。

我无法弄清楚它是由于证书还是其他原因。我是否需要在用户计算机上安装任何证书?

请问有人能帮我吗?

  • 编辑

    我右键单击在解决方案资源管理解决方案文件,并发布到一个文件夹生成的setup.exe。我的其他队友使用相同的步骤,检出perforce同一个项目并发布setup.exe。现在,他的插件在用户的机器上按预期工作,而我的插件不工作(我的工作只在我的机器上工作)。所以,我无法弄清楚有什么不同。因为我们都使用相同的框架(4.0)和VS(VS 2010 premium)。它与我的机器有关。不知道我是否缺少任何安装

+0

可能重复(http://stackoverflow.com/questions/9172970/deploying-installing-an-outlook-addin) – Avantol13

+0

检查[此](HTTPS: //msdn.microsoft.com/en-us/library/ff937654.aspx)out。 – Avantol13

+0

,因为它是一个可能的重复我已经在链接中添加了我的答案Avantol13发布 –

回答

0

希望以下步骤将帮助您解决此问题。我假设您使用的是Outlook 2013或2010。

  • 运行具有管理权限的已部署设置。

  • 如果没有在加载项下显示,请再次打开安装文件夹并双击正确的.vsto文件,然后选择安装。

  • 如果你看到你的加载项等,并且没有运行,这意味着你的加载项被禁用。要启用它,请转至File -> Slow and Disabled Add-ins,并且您应该在弹出窗口中看到您的加载项。启用它。

编辑:

如果您的插件显示在禁用加载项尝试采用以下步骤:

  • 通过File -> Slow and Disabled Add-ins启用您的插件,你应该看到弹出式窗口中的加载项。启用它。

  • 右键单击您的加载项栏并选择Customize the Ribbon

  • 然后在弹出的窗口中,从左侧的组合框中选择All Commands。你应该能够在列表框中找到你的命令。

  • 当您找到您的命令时,单击列表之间的Add按钮。这会将您的命令添加到右侧列表中的所选类别。然后点击OK

您的命令应显示在选定的选项卡下。

+0

已经试过这个,但没有工作。它在Outlook启动后禁用了添加,并且即使启用了添加,也不会显示添加。 – user2569524

+0

@ user2569524请问您是否可以实施我的新解决方案? – 0014

0

您是否有机会查看问题PC上的信任中心设置? VBA宏设置是否应用于COM加载项? Office应用程序是否配置为仅加载已签名的加载项?

Microsoft Office应用程序可以禁用出现意外行为的加载项。如果应用程序不加载加载项,应用程序可能会硬禁用或软禁用加载项。

加载项导致应用程序意外关闭时,可能会发生硬禁用。它也可能发生在您的开发计算机上,如果当您的加载项中的启动事件处理程序正在执行时停止调试程序。

当加载项产生的错误不会导致应用程序意外关闭时,可能会发生软禁用。例如,如果应用程序在执行启动事件处理程序时抛出未处理的异常,则可能会软件禁用加载项。

当您重新启用软禁用加载项时,应用程序会立即尝试加载加载项。如果最初导致应用程序软禁用加载项的问题尚未解决,应用程序将再次软禁用该加载项。

阅读更多关于How to: Re-enable an Add-in That Has Been Disabled的文章。

此外,您可能会发现Troubleshooting COM Add-In load failures文章有帮助。

0

你是如何部署加载项的?您需要确保您已经配置了安装设置,以便在执行安装程序时MS Outlook知道要找到它以及它的所有安装组件。

在我的示例中,我使用带有Install Shield的MS Project,Visual Studio 2012。

下面是我用于加载项的注册表设置示例。您会注意到我已将清单配置为指向安装目录并指向vstolocal。

在构建安装程序时,您还需要将.vsto文件添加到您的构建中。 [部署/安装一个前景插件]的

enter image description here

+0

感谢您的回复。我右键单击解决方案资源管理器中的解决方案文件并发布到文件夹以生成setup.exe。我的其他队友使用与执行相同项目签出相同的步骤并发布setup.exe。现在,他的插件在用户的机器上按预期工作,而我的工作不起作用(我的工作只在我的机器上工作)。所以,我无法弄清楚有什么不同。因为我们都使用相同的框架(4.0)和VS(VS 2010 premium)。它与我的机器有关。不知道我是否缺少任何安装。 – user2569524

+0

如果您使用VS 2010,我假设您通过与VS 2010捆绑在一起的“安装项目”组件来部署此应用程序?您是否尝试过复制一份您的队友安装项目,将其加载到您的项目中,并尝试从他的项目中构建它,并查看它是否有效,或者您是否可以找到缺失的项目? –

+0

我不在我的解决方案/项目文件中添加单独的安装项目(VS上的其他项目类型上的模板)。我右键点击解决方案文件并从选项中选择发布,并为我创建一个设置。我的队友正按照相同的步骤发布。 – user2569524