1. 程式人生 > >如何通過網頁啟動應用程式

如何通過網頁啟動應用程式

前些天再csdn上看到有人問如何點選網頁上的某個連結,達到啟動本機應用程式的目的,我看了下下面的回答,有人說使用dll,但看來看去總感覺思路不對。於是就有了這篇博文。

我們經常會在網站看到線上qq客服,只要你一點選,電腦就會自動啟動本機的qq,在你成功登陸之後彈出一個臨時聊天的視窗。

具體程式碼:

<a href="tencent://message/?uin=215555521&Site=JooIT.com&Menu=yes">

<img border="0" SRC='http://wpa.qq.com/pa?p=1:215555521:3' alt="點選這裡給我發訊息">

</a>

但它是如何實現的呢?下面文章以及微軟官方說明詳細解釋了其工作原理:

[微軟官方說明](http://msdn.microsoft.com/library/default.asp?url=/workshop/networking/pluggable/overview/appendix_a.asp)

Register protocol,此文中對於 Windows、Linux 和 OS X 作業系統如何註冊協議都有說明。比如說 Windows,其實只需寫入登錄檔,即可實現協議與執行程式的關聯。

例如騰訊的Tencent://Message協議登錄檔如下:

    [HKEY_CLASSES_ROOT\TENCENT]

    @=”TencentProtocol”

    “URL Protocol”=”D:\\Program Files\\Tencent\\QQ\\Timwp.exe”

    [HKEY_CLASSES_ROOT\TENCENT\DefaultIcon]

    @=”D:\\Program Files\\Tencent\\QQ\\Timwp.exe,1″

    [HKEY_CLASSES_ROOT\TENCENT\shell]

    [HKEY_CLASSES_ROOT\TENCENT\shell\open]

    [HKEY_CLASSES_ROOT\TENCENT\shell\open\command]

    @=”\”D:\\Program Files\\Tencent\\QQ\\Timwp.exe\” \”%1\”"

此登錄檔所實現的就是當瀏覽器(或其它)碰到 tencent://… 時,自動呼叫 Timwp.exe,並把 tencent://… 地址作為第一個引數傳遞給 Timwp.exe。

因此可以只要自己註冊協議後,就可以通過網頁來啟動應用程式了。

請允許我打個廣告 阿里雲2018雙11雲服務只需99.5元

  • 1核2G記憶體,¥99.5/年
  • 2核4G記憶體,¥545.00/1年
  • 2核4G記憶體,¥927.00/2年
  • 2核4G記憶體,¥1227.00/3年
  • 2核8G記憶體,¥2070.00/3年(本人認為最划算) 直達入口:http://t.cn/EZ14u8r