Js如何调用本地应用程序
一般情况下,浏览器中是无法直接和本机的其他的程序进行交互的,在IE中,我们可以通过ActiveX对象的方式进行。但是这个方式只适用于IE浏览器,另一种比较通用的方式便是URL协议的方式,我们将某种URL的协议注册给某个程序来进行处理,比如将tencent://这样的协议注册给QQ程序来进行处理,当浏览器需要访问这样的协议的时候就转给QQ程序进行处理。这种URL协议的方式是可以跨平台的,比如在Windows上你需要添加注册表项。
首先先看看js应该如何调用qq客户端。
window .open(" tencent://message/?uin=346915968 ")
window.open顾名思义,打开。Tencent就不用多说了吧 BAT之T。上述能直接打开qq帐则做号对应的对话框。由此可以知道网页上的在线客服功能是如何实现了吧。
那要是不需要打开对话框,就想要登陆qq应该如何实现呢肢茄?很简单呀:
window .open(" tencent://message/?uin=qq ") 不过调用应用这种跟黑客没什么差别的行为,浏览器一般都是禁止的,
选择允许后,
启动应用,qq客户端就会被调起。
为什么说这个呢,老板又给了个需求孙饥衡,想让调起qq客户端一样,想通过演示页面的一个按钮,调起售票系统的各种程序...
什么都不说了,先看看什么是自定义协议。
Pluggable Protocol,又叫URL Protocol,有时会叫Shell命令,通用的Protocol有http、ftp、mailto等,这些都是windows安装时自带的协议。
接着也实现一个简单的自己的自定义协议吧。
1,运行window,输入regedit打开注册表。 在HKEY_CLASSES_ROOT下面建一个自己起的名字的表。
用如下格式把各项值添上:
js打开qq音乐.exe
启动应用
end.
javascript 能做本地程序吗
可以的。
使用javascript构建本地程序一般需要如下环境:一个js引擎,一个界面工具。
js引擎:目前都是用nodejs,nodejs是基于chromev8封装的一个本地js解析器。
界面工具:既然是本地程序,一般都需要界面,这里界面工具都是选择某种浏览器封装。比较流扰漏雹仔行的是基于chromium进行封装。
-----------------------------------------------------------
好消息是目前已经有比较完美的封装了,比如electron封装了本地化的引擎和界缓肆烂面工具。
微软的Visual Studio Code就是基于electron开发的。
关于javascript调用本地dll
这根本就是不可能的事情,你想想,页面里的 JS 都是开发人员写的,而在浏览者的颤前春电脑上执行。如果像你说的能用 JS 直接调用 dll 的话,那悔数么这个不是比病毒还要厉害了?人家电脑你想怎么玩就怎么玩。这简茄耐直就是浏览器史无前例的漏洞了,所以不用想了,不可能是你要的这种用法
js调用本地exe文件
通过注册表进行打开销孝本地的exe的运行文件。
打开记戚扮事本,随便命名,保存下面的内容
需要修改的地方:
保存,修改后缀名为reg;双击运行自动生成ChiticData的协议,在Html中写上这个协议即可打开本地运行程亏仔稿序
html编辑javascript 调用本地程序提示找不到文件
1,誉镇羡确保文件存在,庆拍
2.文件所在旅散目录的安全性设下 everyone 所有有权限,再试下呢。
如何用js调用本地exe文件
html
body
SCRIPT language=JavaScript
function Run(strPath) {
exe.value=strPath;
try {
var objShell = new ActiveXObject("wscript.shell");
objShell.Run(strPath);
objShell = null;
}
catch (e){alert('找不到文件"'+strPath+'"(或它的组件之一)。请确定路径和文件名是否正确,而且所需的库文件均可用。')
}
}
/SCRIPT
请输入要运行的程序:brinput name=exe type=text size=20
value="regedit"BUTTON class=button
onclick="Run(exe.value)"确定/BUTTONBUTTON class=button
onclick=exe.value="";重新输入/BUTTONbr
BUTTON class=button onclick="Run('notepad')"记事本/BUTTONbr
BUTTON class=button onclick="Run('mspaint')"画图板/BUTTON斗慎郑br
BUTTON 孝困 class=button onclick="Run('calc')"计算器/BUTTONbr
BUTTON class=button onclick="Run('cmd')"空颂cmd/BUTTONbr
BUTTON class=button onclick="Run('Regedit')"Regedit/BUTTONbr
BUTTON class=button onclick="Run('Msconfig')"Msconfig/BUTTONbr
BUTTON class=button onclick="Run('')"WINAMP/BUTTONbr
BUTTON class=button onclick="Run('IEXPLORE.EXE')"IE/BUTTONbr
BUTTON class=button onclick="Run('..')"../BUTTONbr
BUTTON class=button onclick="Run('%windir%')"%windir%/BUTTONbr
BUTTON class=button onclick="Run('%temp%')"%temp%/BUTTONbr
/body
/html