单击mailto链接后Outlook插件未加载

时间:2010-02-15 10:50:51

标签: .net vsto outlook-addin

我创建了一个Outlook 2007 AddIn,除此之外还需要在用户创建新电子邮件时执行某些操作。我已经迷上了正确的事件,除了一个案例外,一切都正常。

问题是如果Outlook未运行且用户点击mailto网址,则Outlook只会打开一个用户可以撰写电子邮件的资源管理器。该应用程序的其他部分当时未加载。问题是在这种情况下我的插件没有加载,因此我无法在那里添加自定义代码。

我想知道是否有办法克服这个问题。

我看到两种可能的解决方案,但我不知道它们是否可行。

  • 在mailto链接上加载插件(一种资源管理器模式)。我怀疑这将由VSTO开箱即用,但事实并非如此。我在MSDN和MS Outlook编程书上找不到任何相关内容。
  • 更改客户端计算机上的mailto URL处理程序以启动完整的Outlook(就像您单击Outlook快捷方式一样)而不只是一个资源管理器。这会在打开电子邮件资源管理器之前加载我的插件,并且可能会按照我的预期工作。

有谁知道这些解决方案是否可行?或者也许你有另一个可能有效。

1 个答案:

答案 0 :(得分:2)

我也有同样的问题但使用Outlook 2003.这种行为的原因是安全性。想象一下,一个用户错误地安装了一个邪恶的插件,它回复了mailto链接,因此做了一些邪恶的东西......

就我而言,我已经开发了一种解决方法。我没有使用mailto链接,而是创建了一个自己的链接(它是一个简单的shell扩展,可以很容易地创建look here),它启动了一个小帮助应用程序。在对负载行为值进行一些检查(必须设置为“3”)后,此帮助应用程序以完整模式(Outlook.exe /recycle)启动Outlook。

这样您可以在fullmode中启动Outlook以使用您的插件;)