7

早上好,

我已经成功创建了一个小应用程序,该应用程序在http://msdn.microsoft.com/en-us/library/aa767914(VS.85)上的 msdn 条目之后在自定义 uri 协议 ('irma:') 下注册自己。 aspx

当通过 shell/cmd 等手动打开这样的链接时,这工作得非常好,但是当发送这样的链接时,outlook 无法在设置了注册表项的客户端上“自动”识别这些链接。我是否需要做一些额外的事情才能让 Outlook 处理这样的自定义 uri,或者有可能吗?

干杯和感谢,-j

4

2 回答 2

13

[好的,我将把这个作为一个新的答案发布,以保持这个干净,而不删除所有以前发布的内容。]

我刚刚重复了我在另一个答案中提到的研究,似乎在过去三年里情况有了很大的改善。Outlook 2003 (SP3) 和 Outlook 2007 (SP2) 现在都可以自动识别 MS 产品支持邮件中列出的所有协议,这些协议在我的旧答案链接的 NG 线程中引用,包括url:-protocol!

后者意味着您现在可以编写如下内容:

url:irma:whatever

并对其进行适当的链接和处理。然而,Outlook 将在执行协议处理程序之前显示一个安全确认对话框。

更新:请注意,在 Outlook 2003 SP3 中,新协议(例如url:mms://等)仅在 HTML 邮件中自动链接。纯文本检查器的行为如我的其他答案中所述。但是,它确实适用于 Outlook 2007 SP2 中的纯文本邮件。

但是,我仍然没有发现在 Outlook 中简单地注册自定义协议的能力的提示,这些协议可以在没有url:-prefix 的情况下工作。

于 2009-06-02T11:34:37.783 回答
1

更新:下面显示的信息现在似乎已经过时了。请参阅我的另一个答案。


我过去对此进行了一些研究,得出的结论是这是不可能的。Outlook 能够“自动链接”的协议显然是硬编码的。我之前的研究结果记录在这个新闻组线程中:

如何使自定义应用程序可被 Outlook/Word/... 识别
(于 2005 年 4 月至 6 月在 microsoft.public.inetsdk.programming.urlmonikers 上发布)

来自 MS 产品支持的报价:

不幸的是,Office 中的超链接识别 - 以便自动格式自动将输入的文本转换为超链接 - 是硬编码的。
因此,您不能将新协议添加到识别中。

请参阅该线程中的最后一篇文章,了解我对各种 Office 程序之间 URL 识别差异的总结(提示:Outlook 支持的协议最少)。

这是有关 Outlook 的相关信息。以下模式被 Outlook 自动识别为链接(截至 2005 年 6 月,即 Outlook 2003):

  1. 如果超链接的第一个单词是

    • “www”(例如 www.microsoft.com)
    • “ftp”(例如 ftp.microsoft.com)
  2. 如果超链接以以下表达式之一开头,后跟“:/”

    • http
    • https
    • ftp
    • 地鼠
    • 繁荣
    • 远程登录
    • 怀斯
    • 文件
  3. 如果超链接以以下表达式之一开头,后跟“:”和字符串(例如mailto:blah

    • 邮寄
    • 消息
    • ntp
    • 外表
于 2009-06-01T11:47:24.557 回答