最近一直想搞这个,一下子试验成功了,就来发个帖,避免以后频繁在其他网站上搜索,浪费时间。
试验完成后一定要清理一下你的注册表!
(2020/2/18更新) 软件新思路:程序被唤醒后写入配置项,原来已开启的程序使用时钟检测命令行是否被更改,若更改,配置项再次写入一个close=true,可让新程序销毁,原程序开始获取网页内容。
(2019/6/5更新) 软件设计思路:时钟检测命令行是否被更改,被更改取新,并销毁新程序;未被更改则销毁新程序。

小提示:程序人为打开一次后可以写一次注册表,路径取运行目录+执行文件名即可,随机应变。

代码(例如在test://中,test就是头)

Windows Registry Editor Version 5.00

[HKEY_CLASSES_ROOT\F1]
@="URL:头 Protocol Handler"
"URL Protocol"=""

[HKEY_CLASSES_ROOT\头\shell]

[HKEY_CLASSES_ROOT\头\shell\open]

[HKEY_CLASSES_ROOT\头\shell\open\command]
@="程序路径(双反斜杠) "%1""

外部参数传入程序:
例子:test://?hash=233
你需要在“_启动窗口创建完毕”子程序下写入以下代码,以便接收传入的参数:
(子程序代码)

.版本 2
.支持库 spec

    取命令行 (命令行数组)
    .判断开始 (取数组成员数 (命令行数组) = 0)
        调试输出 (“无参数”)
    .判断 (取数组成员数 (命令行数组) ≠ 0)
        调试输出 (“参数是:” + 命令行数组 [1])

(定义程序集文本型数组)

    .版本 2
    
    .程序集变量 命令行数组, 文本型, , "0"

外部访问1:test://?hash=233
参数接收1:test:///?hash=233(多一个/,所以别忘了替换一下)
外部访问2:test://model9s(必须以字母结尾)
参数接收2:test:///model9s/(后面多一个/,所以别忘了替换一下)

感谢阅读
资料引用:http://bbs.eyuyan.com/simple/?t306972.html

标签: 网络, 协议打开外部程序, 易语言

已有 2 条评论

  1. 想到了微信的wxp://,哈哈哈

添加新评论