blogjava's web log

          blogjava's web log
          ...

          超鏈接打開(kāi)自定義的協(xié)議

          想要IE或word點(diǎn)擊超鏈接打開(kāi)本地的EXE應(yīng)用程序,這個(gè)怎么辦?

          比如點(diǎn)擊這樣的鏈接

          <a href="vip:123-MonacoGP-19279-Senna">打開(kāi)我的協(xié)議</a>

          將打開(kāi)我的EXE應(yīng)用程序?

          首先你要修改注冊(cè)表,要讓IE看的懂像href="vip:123-MonacoGP-19279-Senna" 這樣的協(xié)議.

          c#如何寫(xiě)注冊(cè)表?

          //寫(xiě)注冊(cè)表
          RegistryKey key = Registry.ClassesRoot.CreateSubKey("vip");
          key.SetValue("", "URL:vip Protocol");
          key.SetValue("URL Protocol",""); 
          
          RegistryKey Subkey= key.CreateSubKey("DefaultICon");
          Subkey.SetValue("", "exe文件路徑"); 
          
          Subkey = key.CreateSubKey("shell").CreateSubKey("open").CreateSubKey("Command"); 
          
          Subkey.SetValue("","exe文件路徑"); 
          
          

          這段代碼是在 注冊(cè)表 HKEY_CLASSES_ROOT 下新建vip 的鍵

          結(jié)構(gòu)是這樣的

          HKEY_CLASSES_ROOT
          vip
            (Default) = "URL:vip Protocol"
            URL Protocol= ""
            DefaultIcon
             (Default) = "c:\somepath\APPTest.exe"
            shell
             open
              command
               (Default) = "c:\somepath\APPTest.exe" "%1"

          創(chuàng)建完以后當(dāng)你點(diǎn)擊這樣(vip:123-MonacoGP-19279-Senna)的鏈接,就可以打開(kāi)外部的自己定義的應(yīng)用程序了.

          當(dāng)然winform 應(yīng)用程序還可以接收你傳過(guò)來(lái)的值

          比如 EXE應(yīng)用程序啟動(dòng)的時(shí)候接收鏈接傳過(guò)來(lái)的 123-MonacoGP-19279-Senna字符串,你可以在winform 啟動(dòng)的時(shí)候捕獲這個(gè)值

          [STAThread]
          static void Main(string[] args)
          { 
          
          if (args.Length > 0)
          {
          
          //arg[0]就是剛剛鏈接傳過(guò)來(lái)的
          
          // 賦值=arg[0];
          }
          Application.EnableVisualStyles();
          Application.SetCompatibleTextRenderingDefault(false);
          Application.Run(new Form1());
          }
          
          

          如何給IE工具欄添加圖標(biāo)和按鈕,菜單,打開(kāi)自己的應(yīng)用程序?
          可以看看這篇
          http://www.codeproject.com/useritems/CorKatIEExtension.asp

          關(guān)于快速的操作注冊(cè)表
          你可以參考
          http://www.codeproject.com/cs/system/quickregistry1.asp

          本文來(lái)源http://www.codeproject.com/aspnet/APPHyperlinks.asp

          //

          上面所有鏈接文章的源代碼下載地址

          http://www.aygfsteel.com/Files/wujun/APPTest.rar

          //END

          posted on 2007-03-30 08:28 record java and net 閱讀(4905) 評(píng)論(4)  編輯  收藏

          評(píng)論

          # re: 超鏈接打開(kāi)自定義的協(xié)議 2007-05-28 15:36 wuyisky

          有沒(méi)有C#版的 看不洞java  回復(fù)  更多評(píng)論   

          # re: 超鏈接打開(kāi)自定義的協(xié)議[未登錄](méi) 2007-05-29 00:46 jinglecat

          這不就是C++++的?  回復(fù)  更多評(píng)論   

          # re: 超鏈接打開(kāi)自定義的協(xié)議 2007-05-29 22:13 wuyisky

          沒(méi)細(xì)看,怎么跑到blogjava中了,應(yīng)該在cnblogs中呀,謝謝,文章不錯(cuò),我要的  回復(fù)  更多評(píng)論   

          # re: 超鏈接打開(kāi)自定義的協(xié)議 2007-05-29 23:11 wuyisky

          今天把你的程序調(diào)試了一下,真行,我很高興呀,我在一個(gè)月前就在找這個(gè)東西了,不過(guò)一開(kāi)始調(diào)試的時(shí)候提示對(duì)注冊(cè)表的訪問(wèn)被拒絕,是asp.net的兩個(gè)用戶(hù)沒(méi)有權(quán)限寫(xiě)注冊(cè)表。然后我在注冊(cè)表中添加了該兩用戶(hù)的寫(xiě)權(quán)限,就可以了。


          問(wèn)一下,用程序怎么給兩用戶(hù)加寫(xiě)注冊(cè)表的權(quán)限?   回復(fù)  更多評(píng)論   


          只有注冊(cè)用戶(hù)登錄后才能發(fā)表評(píng)論。


          網(wǎng)站導(dǎo)航:
           

          導(dǎo)航

          常用鏈接

          留言簿(44)

          新聞檔案

          2.動(dòng)態(tài)語(yǔ)言

          3.工具箱

          9.文檔教程

          友情鏈接

          搜索

          最新評(píng)論

          主站蜘蛛池模板: 安庆市| 巫溪县| 广丰县| 开平市| 永泰县| 邯郸市| 肥西县| 高要市| 句容市| 天长市| 邢台市| 肥乡县| 龙游县| 厦门市| 阳高县| 迁安市| 色达县| 南安市| 池州市| 交城县| 青海省| 新邵县| 辽阳市| 宝鸡市| 菏泽市| 灵寿县| 松滋市| 罗城| 车险| 卢氏县| 安新县| 安丘市| 平利县| 葫芦岛市| 华安县| 邵阳市| 南城县| 来安县| 常熟市| 彰化县| 阿图什市|