当前位置:首页 > 笔记 > 自定义浏览器协议 实现web调用本地程序

自定义浏览器协议 实现web调用本地程序

nyoung2年前 (2019-07-19)笔记2926

QQ截图20190719115021.jpg


我们都知道QQ有个功能,你只要在网页上点击 发起会话 按钮,就能打开QQ聊天窗口跟别人聊天

例如: 


那么,这是怎么做到的呢?


不告诉你   哈哈哈哈








我们只需要在注册表里添加几条注册项,就能实现

我们看QQ在注册表里是怎么写的


Windows Registry Editor Version 5.00

[HKEY_CLASSES_ROOT\Tencent]

"URL Protocol"="C:\\Program Files\\Tencent\\QQ\\Bin\\Timwp.exe"

@="TencentProtocol"

[HKEY_CLASSES_ROOT\Tencent\DefaultIcon]

@="C:\\Program Files\\Tencent\\QQ\\Bin\\Timwp.exe,1"

[HKEY_CLASSES_ROOT\Tencent\shell]

[HKEY_CLASSES_ROOT\Tencent\shell\open]

[HKEY_CLASSES_ROOT\Tencent\shell\open\command]

@="\"C:\\Program Files\\Tencent\\QQ\\Bin\\Timwp.exe\" \"%1\""



所以我们模仿着写一个弹出计算器

建立注册表文件。复制下面代码到记事本,另存为.reg文件即可。


Windows Registry Editor Version 5.00

[HKEY_CLASSES_ROOT\nmexe]

"URL Protocol"="C:\\WINDOWS\\system32\\calc.exe"

@="TencentProtocol"

[HKEY_CLASSES_ROOT\nmexe\DefaultIcon]

@="C:\\WINDOWS\\system32\\calc.exe,1"

[HKEY_CLASSES_ROOT\nmexe\shell]

[HKEY_CLASSES_ROOT\nmexe\shell\open]

[HKEY_CLASSES_ROOT\nmexe\shell\open\command]

@="\"C:\\WINDOWS\\system32\\calc.exe\" \"%1\""


如果你做完了上面这一步    那么你就可以 啦,没放进注册表是打不开的


%1就是参数,在我的例子里面就是 123456

在java中 

static void Main(string[] args)

args就是传过来的参数 %1


在易语言中,你可以用 取命令行 () 来获取参数 %1




评论列表

访客
访客
2年前 (2019-10-25)

高手

发表评论

访客

◎欢迎参与讨论,请在这里发表您的看法和观点。