请教大家,web上是如何触发本地程序的呢

tcdona 发布于 2011/10/12 07:28
阅读 495
收藏 3

1 qq空间中点击头像下的那个气泡,就可以打开qq的聊天窗口,这是如何做到的,

2 另外,登录了qq之后,qzone也不需要登录就可以从小图标直接打开了,

这是将登录信息强行写在了缓存的cookies里面吗

以下是问题补充:

@tcdona:这里说一下,找到的比较完美方案,一个c++库,http://www.firebreath.org/,利用系统中注册dll,so文件,页面用object标签type="xx"来调用。 (2013/05/14 14:27)
@tcdona:FireBreath is a framework that allows easy creation of powerful browser plugins. A plugin built on FireBreath works as an NPAPI plugin or as an ActiveX control (windows only) and support could be added for other plugin types built in C++ as well. Read about our project for details, or read below to get started quickly! (2013/05/14 14:32)
加载中
1
悟庭
悟庭

tencent://*********

http://*****:***/*********

QQ客户端只需监听相应服务就成。。

0
antipro
antipro

1、可以在浏览器里面注册,遇到某种链接或文件类型就调用本地的程序打开。

2、点小图标的时候,直接把登录信息和URL一同发送过去了,所以直接就登录了。

0
tcdona
tcdona

腾讯那个只是调用了一个js函数onclick="openChatbox(qq号码);return false;"

因该没有提前注册什么的呀,我用的新的chrome也是可以的。关键是这里他是怎么做到的?

0
antipro
antipro
注册内容大概在注册表里面吧,chrome可能也最大限度兼容了IE,你装个全新的firefox,看看行不行。 你要找 openChatbox这个函数的源代码,看看它做了什么。
0
tcdona
tcdona

应该是如 waiting 所说监听了相应的服务 ,不知道有相关资料么,我对桌面编程很陌生

就是如何监听相应服务的代码之类的

0
lovedreamland
lovedreamland

关键字:URL Protocol Handler

相关实例:

http://www.cnblogs.com/zjneter/archive/2008/01/08/1030066.html

http://www.docin.com/p-58262563.html

 

国内那些个大网站基本都是用的这个技术,不过国内相关的资料比较少,

http://msdn.microsoft.com/en-us/library/Aa767914.aspx#app_reg

这个是微软官方的介绍,如果有兴趣的话LZ可以去研究一下。

 

 

0
lovedreamland
lovedreamland

在给你一个工具:

URLProtocolVie

http://www.nirsoft.net/utils/url_protocol_view.html

通过这个工具就可以查看到你系统中当前所有已经注册的URL Protoco,你可以自己试试效果~

0
Midnight
Midnight
要在系统里注册协议, 调用对应程序
0
大东哥
大东哥

同问!!!!

有没有跨浏览器的解决方案,还有本地不需要这么麻烦的,注册表注册什么的。

启动本地应用程序,是不是得程序本身做好协议才行?

ddatsh
ddatsh
程序本身当然要支持:)
0
tcdona
tcdona
非常感谢 @ lovedreamland 同学的回答 确实 如果有跨平台(不光是跨浏览器)的解决方案会比较好,这方面的资料我接触的很少
返回顶部
顶部