客户端脚本(比如Javascipt)本身没有权限进行系统调用,但是在windows 系统下,在IE浏览器中利用JS创建activeX对象可以调用本地的可执行文件:
<script language="javascript" type="text/javascript">
function runExe()
{
//创建ActiveX对象
var shell = new ActiveXObject("WScript.shell");
//命令字符串,路径不能为反斜杠且路径中的文件夹名称中不得有空格,
//如果出现空格,会被解析成两个命令
var cmd="d:/test/target.exe";
//true的t小写
shell.run(cmd,1,true);
}
</script>
其中的shell.run参数介绍如下:
参数1:执行命令字符串;
参数2:应用执行时的窗口风格,1表示激活并显示窗口;
参数3:是否等待命令执行完再向下执行,true表示等待。
参考资料:
How to run an executable program on the client?
Client-side scripts themselves cannot make system calls but on Windows
systems you can insert Windows Script Host commands in client-side
script.
To launch an application on the client machine, place this script in the head of the HTML page.
<script language="javascript" type="text/javascript">
function runApp()
{
var shell = new ActiveXObject("WScript.shell");
shell.run("notepad.exe", 1, true);
}
</script>
Place this in the body of the HTML page. The button click will trigger off the function and the application is run.
<input type="button" name="button1" value="Run Notepad" onClick="runApp()" />
var shell = new ActiveXObject("WScript.shell");
Creates the WSH object as a new instance of an ActiveXObject.
shell.run("notepad.exe", 1, true);
The
run method of WSH starts the executable program.
The first parameter passed into the run method executes the command
"notepad.exe".
The second parameter is optional and its integer value specifies the window style of the application launched.
The
1 value will activate and display the window.
The third parameter is optional and its boolean value specifies if it is
to wait for the command to complete before further execution. The
true value will wait for the completion of the command.
Note that running such scripts properly require to change the client's security settings.
分享到:
相关推荐
javascript打开本地可执行文件javascript打开本地可执行文件
JS音乐播放器,实现获取存储本地音频文件,原生JS实现播放,内含可执行程序
主要记录在vue.js工程在利用electron转exe可执行程序时遇到的各种问题及解决办法。
将您的Node.js应用程序打包到单个可执行文件中。 产品特点 使用node-packer编译任何项目都需要不到5分钟的时间。 只要您在纯node.js中工作,无论您如何开发,都无需在应用程序中修改任何一行代码! 工作于 视窗,...
关于润乾报表超链接调用js文件实现可交互
从命令行在node_modules中运行可执行文件 使用npm-run可以确保您在命令行和package.json脚本中使用了相同版本的软件包。 npm生命周期脚本可用的任何可执行文件都可用于npm-run 。 用法 > npm install mocha # mocha...
(英文)启用本地文件链接与IE不同,Chrome无法打开指向本地文件(file://)的链接。 此扩展名使您可以打开本地文件链接。从iframe打开window.open Chrome会阻止从跨域框架中单击的所有window.open。 该扩展名允许...
exec-local-bin 一个简单的助手,用于在节点中执行本地node_module bin。 安装 npm i exec-local-bin 如何使用 const execLocalBin = require ( 'exec-...bin (必填)=可执行文件和参数 options (可选)=可以接受
使用API作为本地Markdown内容文件的目录从ReadMe中获取现有文档站点使用API将Markdown内容文件目录推送到自述文件(可选)在推送时清理陈旧的自述页面(没有相应的Markdown内容文件的页面) 对本地Markdown...
16.4.html 在JavaScript中使用FileSystemObject操作本地文件的方法。 第18章(\c18) 示例描述:学习XMLHttpRequest对象。 18.1.html 使用Ajax获取HTTP头信息。 18.2.html 使用Ajax获取全部响应头信息...
一个自托管的拖放式文件转换服务器和文件共享工具,支持86种文件格式,4种配色方案和13种最终用户可选语言。 转换 86 种不同的文件格式。 自托管。安装在家庭服务器上! 所有转换都在您的服务器上本地执行。 对PDF和...
空气扑通AirPlop 是 Apple 的 AirDrop 的产物,它是一个 Node.js 命令行工具,用于将文件从运行 node.js 的计算机传输到本地网络上具有浏览器的任何设备。 非常适合将文件从计算机传输到平板电脑或手机,而无需先将...
slfsrv 是一个可执行程序让你使用 HTML、JS 和 CSS 来创建 GUI 应用,并启动默认的浏览器打开应用。使用 JS 来访问本地计算机系统、文件和可执行程序。 标签:slfsrv
剧本npm run start运行程序所需的一切npm run start-server跳过构建可执行文件,节省了时间,但是您必须打包恶意软件才能查看对其的更改npm run pack-malware将恶意npm run pack-malware打包到/build可执行文件中...
20.15 执行客户端的可执行程序 20.16 自动调用OutLook发送邮件 20.17 弹出窗口选择颜色 20.18 弹出框式邮件发送 20.19 把网站作为用户的Active桌面 20.20 判断是否安装了flash插件 第21章 流行技术:DOM和userData的...
另类的解决办法:利用bwip-js包,通过node.js环境搭建本地服务器 ,将其打包成exe可执行文件,就可以通过本地获取二维码、条形码图片,在WPS宏编辑器、VBA编辑器中,用 Shapes.AddPicture 方法即可向工作表插入需要...
20.15 执行客户端的可执行程序 20.16 自动调用OutLook发送邮件 20.17 弹出窗口选择颜色 20.18 弹出框式邮件发送 20.19 把网站作为用户的Active桌面 20.20 判断是否安装了flash插件 第21章 流行技术:DOM和userData的...
PHP HTML5批量上传图片Demo源码,不涉及数据库,演示了ajax上传文件,上传完毕后可在本地目录中查看文件,回调可以调用三个参数 总数,成功数和失败数,如果不需要可以不传,本示例的上传文件类型被限制为.jpg|.jpeg|....
- 可执行文件(.exe):21个,可能是用于特定环境下的执行脚本; - 安装信息文件(dist-info/INSTALLER):15个,包含安装相关的元数据。 本项目不仅涵盖了前后端的交互逻辑,还考虑了性能优化和数据的实时性,利用...
NetBox 提供将您的应用编译成独立可执行文件的能力,极大的加快运行速度和代码安全性。使用 NetBox 开发,大大提高了应用系统的可扩展性、稳定性和安全性。NetBox 的出现也首次让应用软件开发商能够如此快速和容易的...