代码之家  ›  专栏  ›  技术社区  ›  RaYell

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

  •  3
  • RaYell  · 技术社区  · 16 年前

    我已经创建了一个Outlook2007加载项,其中一个功能就是当用户创建新电子邮件时必须执行一些操作。我已经迷上了适当的事件,除了一个案例,所有的事情都能正常工作。

    问题是,如果Outlook没有运行并且用户单击 mailto 然后,Outlook只打开一个资源管理器,用户可以在其中撰写电子邮件。应用程序的其他部分此时未加载。问题是,在这种情况下,我的插件没有加载,所以我不能在那里添加我的自定义代码。

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

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

    • 使插件加载到mailto链接(一个资源管理器模式)。我怀疑这将由VSTO提供,但不是。我在msdn和ms-outlook编程本上都找不到任何关于这个的信息。
    • 将客户端计算机上的mailto url处理程序更改为启动完整的Outlook(就像单击Outlook快捷方式一样),而不是只启动一个资源管理器。这将在打开电子邮件资源管理器之前加载我的插件,并可能按我的预期工作。

    有人知道这些解决方案是否可行吗?或者你有另一个可能有用的。

    1 回复  |  直到 16 年前
        1
  •  2
  •   Marcus    16 年前

    我也遇到了同样的问题,但是对于Outlook2003。这种行为的原因是安全。假设一个用户错误地安装了一个邪恶的加载项,该加载项响应mailto链接,因此做了一些邪恶的事情…

    在我的情况下,我已经开发了一个变通方法。我没有使用mailto链接,而是创建了一个自己的链接(这是一个简单的shell扩展,很容易创建 look here )它启动一个小助手应用程序。此帮助程序以完全模式启动Outlook( Outlook.exe /recycle )稍微检查负载行为值后(必须设置为“3”)。

    这样,您就可以以完全模式启动Outlook,以便使用您的加载项;)

    推荐文章