前端、js调用exe、pc本地应用

接下来以windows为例,我们经常看见页面上有些效果,比如打开迅雷,等等,那是怎么做到的呢,其实原理是通过注册表,来实现打开pc引用,

我们先自己实现一个注册表

新建一个vs.txt,用编辑器的,可以直接建reg文件,命名要和指定的协议,一致

Windows Registry Editor Version 5.00

[HKEY_CLASSES_ROOT\vs]  //注册文件位置 \后面要和文件名一致下面同理
"URL Protocol"=""
@="URL:vs" //指定协议

[HKEY_CLASSES_ROOT\vs\shell] 

[HKEY_CLASSES_ROOT\vs\shell\open]

[HKEY_CLASSES_ROOT\vs\shell\open\command] //下面的@中对应的是应用 exe所在位置 \%1\ 表示传递的参数
@="\"D:\\Microsoft VS Code\\Code.exe\" --open-url -- \"%1\"" 


上面我是以vscode为例,然后就有人说了=-= 我用不了,首先,把我的注释内容删除,然后每个人安装位置不一样,那这个位置咋找呢

在桌面找到对应vscode的图标,右键属性就能找到位置了,不过要注意路径要改成反斜杠

在这里插入图片描述

编写好reg文件,点击执行,注册好注册表

然后前端干啥勒,来了

<!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"/>
</head>
<body>
<div>
    <a href="vs://name1,name2"> //协议要与要打开注册表的协议一直,//后面属于参数没有不填都行
        打开vs
    </a>
</div>
</body>
</html>

同理,如果找到电脑中对应应用的注册表,获取到他的协议,那么我们就可以通过这个自定义协议来打开对应应用

如何找到对应的注册表呢

window+R 然后输入 regedit 打开注册表编辑器
在这里插入图片描述

安装的文件基本都放在下面, 一般注册表名字和软件表一直

在这里插入图片描述

找到有这个文件的,文件夹,右键vscode文件夹导出,

然后你就看见他的注册表了

Windows Registry Editor Version 5.00

[HKEY_CLASSES_ROOT\vscode]
"URL Protocol"=""
@="URL:vscode"

[HKEY_CLASSES_ROOT\vscode\shell]

[HKEY_CLASSES_ROOT\vscode\shell\open]

[HKEY_CLASSES_ROOT\vscode\shell\open\command]
@="\"D:\\Microsoft VS Code\\Code.exe\" --open-url -- \"%1\""


猜你喜欢

转载自blog.csdn.net/marendu/article/details/108148388
今日推荐