我已經成功地創建了一個小的應用程序,它本身註冊一個自定義的URI協議(「IRMA:」)下的MSDN項下的http://msdn.microsoft.com/en-us/library/aa767914(VS.85).aspx
打開此類鏈接時,該工作完全正常手動通過shell/cmd等,但發送這樣的鏈接時,Outlook無法識別那些設置了註冊表項的客戶端上的'自動'。我需要做些額外的事情才能讓前臺處理這種自定義的uri嗎?或者完全有可能嗎?
歡呼和感謝, -j
我已經成功地創建了一個小的應用程序,它本身註冊一個自定義的URI協議(「IRMA:」)下的MSDN項下的http://msdn.microsoft.com/en-us/library/aa767914(VS.85).aspx
打開此類鏈接時,該工作完全正常手動通過shell/cmd等,但發送這樣的鏈接時,Outlook無法識別那些設置了註冊表項的客戶端上的'自動'。我需要做些額外的事情才能讓前臺處理這種自定義的uri嗎?或者完全有可能嗎?
歡呼和感謝, -j
[OK,我會後這是一個新的答案,以保持這一個乾淨的,但不刪除所有以前發佈的內容。]
我剛纔repea在我的其他答案中提到了這項研究,似乎在過去三年中情況有了很大改善。在Outlook 2003(SP3)和Outlook 2007(SP2)中,現在自動識別在我的舊回答鏈接的NG線程中引用的MS產品支持郵件中列出的所有協議,包括url:
-協議!
後者意味着你現在可以寫類似:
url:irma:whatever
,並讓它正確linkified和處理。然而,Outlook在執行協議處理程序之前會顯示一個安全確認對話框。
更新:需要注意的是在Outlook 2003 SP3的新的協議(例如url:
,mms://
等)僅自動linkified在HTML郵件。純文本檢查器的行爲如我的其他答案中所述。但是,它可以在Outlook 2007 SP2中使用純文本郵件。
但是,我仍然沒有發現在Outlook中簡單註冊自定義協議的能力,但無需使用url:
-prefix即可使用。
更新:出現下面展示的信息由現在已經過時。看到我的其他答案。
我在過去做了一些研究,得出的結論是不可能的。 Outlook能夠「自動鏈接」的協議顯然是硬編碼的。 我以前的研究結果都記錄在這個新聞組主題:
How to make custom APPs recognizable by Outlook/Word/...
(發佈2005年microsoft.public.inetsdk.programming.urlmonikers四月至六月)從MS產品支持
報價:
不幸的是,Office中的超鏈接識別功能(使自動格式自動將輸入的文本轉換爲超鏈接)是硬編碼的。
因此,您無法將新協議添加到識別中。
請參閱last post in that thread以瞭解各個Office程序(提示:Outlook支持最少的協議)之間URL識別差異的摘要。
這裏是關於Outlook的相關位。下面的模式被自動識別爲通過Outlook中的鏈接(在2005年,如Outlook 2003年6月):
如果一個超鏈接的第一個字是
如果超級鏈接利用下列表達式之後的一個開始 「:/」
如果超鏈接利用下列表達式後跟中的一個開始「:」和一個字符串(例如mailto:blah
)
Oooh ..感謝您的信息!我從Outlook MVP得到了一些信息,並且您實際上目前無法添加完全自己的網址。但我不知道url:prefix ...這是至少有一種方法來處理我所需要的。謝謝奧利弗! – 2009-06-03 14:59:11