本地html如何启动本地快捷方式或者exe文件?
电脑上软件太多,放在文件夹里不方便,想弄个网页来管理遇到了问题 如图:
这就是目标效果,就这么简单,现在点击“格式工厂”的时候只提示下载,怎么才能直接打开呢?我们知道网页不能随意调用本地程序所以请各位帮帮忙!
亲 分不是问题,也知道各位大神帮助人不是为了虚无缥缈的分,但是还是想请各位尽己所能帮我一下!谢谢你们!
如果你们做好一个简单的网页给我当例子 那么更好 呵呵 谢谢! 展开
IE下面可以建立一个WScript.Shell对象,然后使用Run方法来调用本机程序。
还有一种方法就是利用URL Protocol实现网页调用本地应用程序,像QQ,迅雷都是通过这种方法实现的。
第一步:按照如下图所示建立注册表
其中 在注册表的 [HKEY_CLASSES_ROOT] 主键下 建立[qiaoker]建。
[qiaoker] 此键可以自定义任意。
第二步:注册表中建立相关键值对。
注意到上面 command 项的值为 C:\Program Files (x86)\Qiaoker\updater.exe "%1" ,这个"%1"是传递给 updater.exe的参数。
使用时我们会在后面讲到如何使。
第三步:编写web页面代码
<div><a href="qiaoker://cid:110&username:xxh"> 执行可执行文件</a></div>
说明:QiaokerProtocol: 是注册表中注册的协议名称。
cid:110&username:xxh 是传入可执行程序的参数。
程序收到参数据自已去解析字符串中的相关信息。
其它说明:
在安装可执行文件时,写入注册表信息。
那用那种能做出来?
这个得用Javascript了,而且只能在IE(或基于IE内核的浏览器)上执行(因为调用了ActiveX)
<script>
function exec (command) {
window.oldOnError = window.onerror;
window._command = command;
window.onerror = function (err) {
if (err.indexOf('utomation') != -1) {
alert('命令' + window._command + ' 已经被用户禁止!');
return true;
}
else return false;
};
var wsh = new ActiveXObject('WScript.Shell');
if (wsh)
wsh.Run(command);
window.onerror = window.oldOnError;
}
</script>
<input type=button onclick="exec('C://windows//notepad.exe')" value=执行>
试试看这段代码吧,看看有没有什么灵感。
由于安全策略,js是不允许访问本地资源的。想解决你的需求,可以考虑
基于electron开发应用,可以通过它调用本地资源
使用nodejs,也是可以访问本地资源的