blogjava's web log

          blogjava's web log
          ...

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

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

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

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

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

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

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

          //寫注冊(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)的鏈接,就可以打開外部的自己定義的應(yīng)用程序了.

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

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

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

          如何給IE工具欄添加圖標(biāo)和按鈕,菜單,打開自己的應(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: 超鏈接打開自定義的協(xié)議 2007-05-28 15:36 wuyisky

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

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

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

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

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

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

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


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


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


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

          導(dǎo)航

          常用鏈接

          留言簿(44)

          新聞檔案

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

          3.工具箱

          9.文檔教程

          友情鏈接

          搜索

          最新評(píng)論

          主站蜘蛛池模板: 新建县| 银川市| 宜良县| 石屏县| 壤塘县| 建昌县| 银川市| 临沧市| 海安县| 石景山区| 西和县| 兴宁市| 玉环县| 萝北县| 永善县| 金昌市| 崇明县| 竹北市| 建湖县| 山丹县| 墨竹工卡县| 屏山县| 阿拉善右旗| 寻甸| 满洲里市| 珠海市| 玉溪市| 丁青县| 昂仁县| 南涧| 鄂温| 伊通| 富川| 台南市| 秦安县| 昭平县| 共和县| 陕西省| 西畴县| 青冈县| 水富县|