JS方式調用本地的可執行文件

看到一個方法,有些用,先存下來,有用的時候再用.html

前幾天,在IE,FIREFOX中實現了用JS方式調用本地的可執行文件。地址:www.yihaomen.com/article/js/211.htmshell

,其實還有另一種方法,就是 url protocol 的方式來實現。用這種方式實現,任何瀏覽器都兼容,不會存在只有前面那種只有IE或FIREFOX才行的狀況。windows

都用過QQ,迅雷,電驢,在網頁上點擊的時候,就會彈出QQ,或者迅雷,電驢的下載界面,用的就是這個原理,在微軟的MSDN上也有說明:http://msdn.microsoft.com/en-us/library/aa767914%28v=vs.85%29.aspx  在這裏,作一個簡單的例子。瀏覽器

1. 先註冊URL PROTOCOL, 在windows 下就是註冊表:測試

========================================================ui

Windows Registry Editor Version 5.00

[HKEY_CLASSES_ROOT\myprotocol]
@="myprotocol Protocol"
"URL Protocol"=""

[HKEY_CLASSES_ROOT\myprotocol\DefaultIcon]
@="C:\\WINDOWS\\NOTEPAD.EXE"

[HKEY_CLASSES_ROOT\myprotocol\shell]
@=""

[HKEY_CLASSES_ROOT\myprotocol\shell\open]
@=""

[HKEY_CLASSES_ROOT\myprotocol\shell\open\command]
@="\"C:\\WINDOWS\\NOTEPAD.EXE\" "url

======================================================xml

保存內容爲 reg文件,而後執行,就加入註冊表,註冊了這個名字爲myprotocol 的協議.htm

2. 寫測試頁面utf-8

<!DOCTYPE HTML PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
  <head>
      <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
  </head>
    <body>
        <div>
            <a href="myprotocol://">
            執行可執行文件
            </a>
        </div>
    </body>
</html>

運行頁面,點擊連接,就能直接打開 notepad 。由於這裏用的是寫字板測試的,你能夠在註冊表中,改爲其餘任何你要的程序。

相關文章
相關標籤/搜索