在调试VSTO Addin时Outlook只会挂起

时间:2014-12-31 07:51:56

标签: c# outlook vsto outlook-addin

我正在使用Visual Studio 2013并尝试为我的企业雇主的C#客户端安装开发Outlook Add-In Outlook 2013项目。

什么可能导致Outlook无法完全加载,即在通过VS IDE,{{按 F5 开始调试我的应用程序时1}} 启动画面加载一秒钟,但Outlook从未实际加载。通过任务管理器,我可以看到Outlook在后​​台运行的流程,但它从未实现为 App 流程。

我已完成以下操作:在项目的属性页面中,我将Outlook本地路径设置为启动外部程序,并设置工作目录。

当我运行我的代码“Start Without Debugging”时,Outlook.EXE确实加载了,我可以运行我的Outlook,但我无法单步执行我的代码,这当然是无价的

关于我应该寻找什么的任何想法?

更新:

根据@ Sarvesh的回答,我创建了一个新的 Outlook加载项项目,但未设置任何属性,只显示一行代码,但行为仍然相同:

Outlook Add-In

3 个答案:

答案 0 :(得分:0)

  

在项目的“属性”页面中,我将Outlook的本地路径设置为   启动外部程序并设置工作目录。

为什么要设置这些?

如果您使用VS提供的模板开发VSTO插件,则无需手动设置这些属性。

将其重新设置为默认值,然后再调试。

答案 1 :(得分:0)

请注意,只能同时运行一个Outlook实例。因此,首先在开始项目之前检查Outlook.exe的运行进程列表。只有这样,您才能在调试器下启动加载项。

另外我建议在Outlook中禁用所有其他加载项。 Outlook可能会禁用需要花费大量时间加载的加载项。尝试使用新创建的空加载项项目重现该问题。将breakppoint设置为Startup事件处理程序并在调试器下运行它。它有用吗?

Outlook 2013监视加载项性能指标,例如加载项启动,关闭,文件夹切换,项目打开和调用频率。 Outlook记录每个性能监视度量标准的已用时间(以毫秒为单位)。

例如,启动指标衡量Outlook启动期间每个连接的加载项所需的时间。然后,Outlook计算连续5次迭代的中位启动时间。如果中位启动时间超过1000毫秒(1秒),则Outlook会禁用该加载项,并向用户显示已禁用加载项的通知。用户可以选择始终启用加载项,即使加载项超过1000毫秒的性能阈值,Outlook也不会禁用加载项。

确保始终启用加载项。

有关详细信息,请参阅Performance criteria for keeping add-ins enabled

答案 2 :(得分:0)

我最近才遇到同样的问题 - 我通过在Outlook中构建和安装插件解决了这个问题,在启动时抛出了一个错误并弹出了异常。

最后,我的问题的解决方案是在密钥{{1}中的名为EnableVSTOLocalUNC的64位配置单元中创建一个注册表项,该值设置为值00000001(作为双字) }。

Here are some other potential issues一旦安装了插件,您就会遇到。