黃偉榮的學習筆記

軟體的世界變化萬千,小小的我只能在這洪流奮發向上以求立足。
  博客园  :: 首页  :: 新随笔  :: 联系 :: 订阅 订阅  :: 管理

自訂URL Protocol

Posted on 2008-01-08 01:30  黃偉榮  阅读(3783)  评论(5编辑  收藏  举报
我很好奇PPStream等軟體,是怎麼樣做到點擊IE的超連結,就可以開啟本身的程式,上線找了一下發現原來簡單到暴。

用Regedit加上下列機碼就可以了。

  • HKEY_CLASSES_ROOT
    • URL Protocol Name
      (Default) = "URL Protocol Discription"
      URL Protocol = ""
      • DefaultIcon
        (Default) = "exe path"
      • shell
        • open
          • command
            (Default) = "exe path" "%1"
    這是我自己實作的範例
    機碼部份
  • HKEY_CLASSES_ROOT
    • UTP
    • (Default) = "URL Protocol Test"
      URL Protocol = ""
      • DefaultIcon
        (Default) = "C:\URLProtocolTest.exe"
      • shell
        • open
          • command
            (Default) = "C:\URLProtocolTest.exe" "%1"
    程式部份

    namespace UrlProtocolTest
    {
        
    class Program
        {
            
    static void Main(string[] args)
            {            
                
    if(args != null)
                {
                    Console.WriteLine(String.Join(
    ",", args));                
                }
                Console.Read();
            }
        }
    }

        這樣在IE中點擊 UPT 開頭的就會執行我的Console程式了,如 UPT:hwade.cnblogs.com。
  •     自訂URL Protocol在IE實踐就如上例的簡單,但FireFox看文件感覺很複雜,可能是我不熟FireFox編程吧,不過真的自訂了URL Protocol還要寫一支安裝檔,請他們(客戶)下載安裝,也挺累的。

    參考網站

    1. Registering an Application to a URL Protocol
    2. Register a Custom URL Protocol Handler
    3. Custom URL Protocol Handlers
    4. Creating a new protocol for Mozilla Firefox in C++