js调exe 利用URL Protocol

2 篇文章 0 订阅
2 篇文章 0 订阅

通过regedit打开注册表,在根目录KEY_CLASSES_ROOT下插入你的exe,具体如何插入,看下面

如果你已经安装了迅雷,那就在KEY_CLASSES_ROOT下找到thunder,右击,导出,保存好,然后用记事本等工具打开,内容如下:

Windows Registry Editor Version 5.00  // 据说必须空一行

[HKEY_CLASSES_ROOT\thunder]
@="URL:迅雷专用链"
"EditFlags"=hex:02,00,00,00   // 这句可以不要 我不知道什么意思
"URL Protocol"=""

[HKEY_CLASSES_ROOT\thunder\DefaultIcon]
@="D:\\Program Files\\Thunder\\Program\\Thunder.exe, 1"  // 最后的那个,1不用,我也不知道有什么用

[HKEY_CLASSES_ROOT\thunder\Shell]

[HKEY_CLASSES_ROOT\thunder\Shell\Open]

[HKEY_CLASSES_ROOT\thunder\Shell\Open\command]
@="\"D:\\Program Files\\Thunder\\Program\\ThunderNewTask.exe\" \"%1\""

然后在此基础上改,把thunder换成你喜欢的名字,把exe所在的路径替换上去,比如我的:

Windows Registry Editor Version 5.00

[HKEY_CLASSES_ROOT\AnPlayer]
@="AnPlayerProtocol"
"URL Protocol"=""

[HKEY_CLASSES_ROOT\AnPlayer\DefaultIcon]
@="E:\\csharpworkspace\\CSharpVLC\\CSharpVLC\\bin\\Debug\\AnPlayer.exe"

[HKEY_CLASSES_ROOT\AnPlayer\Shell]

[HKEY_CLASSES_ROOT\AnPlayer\Shell\Open]

[HKEY_CLASSES_ROOT\AnPlayer\Shell\Open\command]
@="\"E:\\csharpworkspace\\CSharpVLC\\CSharpVLC\\bin\\Debug\\AnPlayer.exe\" \"%1\""

最后一行要注意\,别少了或者多了,注意空行,我不知道哪些空行是必须的,所以就在导出来的文件上改。最后那个%1表示参数,具体下面会讲。然后把上面的文件保存成xxx.reg,后缀名是reg,双击运行就行。成功的话打开注册表,会看到你刚才添加的东西,和迅雷的很类似的,注意DefaultIcon和command必须有值,否则就失败了。

迅雷的这个比较好用,百度网盘的那个太坑。不建议抄。

自己编写的exe不需要安装,比如我是C#写的,可以看到我的路径直接就是C#工程下的debug目录,当然这里是测试用的,正式的话我不会定位到debug目录的,我只是想说这个exe不需要打包成setup,随便丢哪里都行。

然后html的写法:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>无标题文档</title>
</head>

<body>
<a href="AnPlayer:1">ds</a>
</body>
</html>

AnPlayer:1 这段话会被赋值到刚才的%1上去,对的,AnPlayer:1整个都过去了,不是1过去了,所以C#收到的是AnPlayer:1。

C#的main改写成这样:main(string[] args),就和java最常见的main方法一样。然后args[0]=AnPlayer:1,你可以通过split函数把1取出来。1可以是任何一个string,比如AnPlayer:helloworld。

其他exe类似吧,我只试过C#。

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值