一般情況下,瀏覽器中是無法直接和本機的其他的程式進行交互的,在IE中,我們可以通過ActiveX對象的方式進行。但是這個方式只適用於IE瀏覽器,另一種比較通用的方式便是URL協議的方式,我們將某種URL的協議註冊給某個程式來進行處理,比如將tencent://這樣的協議註冊給QQ程式來進行處理,當瀏 ...
一般情況下,瀏覽器中是無法直接和本機的其他的程式進行交互的,在IE中,我們可以通過ActiveX對象的方式進行。但是這個方式只適用於IE瀏覽器,另一種比較通用的方式便是URL協議的方式,我們將某種URL的協議註冊給某個程式來進行處理,比如將tencent://這樣的協議註冊給QQ程式來進行處理,當瀏覽器需要訪問這樣的協議的時候就轉給QQ程式進行處理。這種URL協議的方式是可以跨平臺的,比如在Windows上你需要添加註冊表項。
首先先看看js應該如何調用qq客戶端。
window.open("tencent://message/?uin=346915968")
window.open顧名思義,打開。Tencent就不用多說了吧 BAT之T。上述能直接打開qq帳號對應的對話框。由此可以知道網頁上的線上客服功能是如何實現了吧。
那要是不需要打開對話框,就想要登陸qq應該如何實現呢?很簡單呀:
window.open("tencent://message/?uin=qq") 不過調用應用這種跟黑客沒什麼差別的行為,瀏覽器一般都是禁止的,
選擇允許後,
啟動應用,qq客戶端就會被調起。
為什麼說這個呢,老闆又給了個需求,想讓調起qq客戶端一樣,想通過演示頁面的一個按鈕,調起售票系統的各種程式...
什麼都不說了,先看看什麼是自定義協議。
Pluggable Protocol,又叫URL Protocol,有時會叫Shell命令,通用的Protocol有http、ftp、mailto等,這些都是windows安裝時自帶的協議。
接著也實現一個簡單的自己的自定義協議吧。
1,運行window,輸入regedit打開註冊表。 在HKEY_CLASSES_ROOT下麵建一個自己起的名字的表。
用如下格式把各項值添上:
js打開qq音樂.exe
啟動應用
end.