JavaScript调用客户端Java程序的方法


Posted in Javascript onJuly 27, 2015

本文实例讲述了JavaScript调用客户端Java程序的方法。分享给大家供大家参考。具体如下:

一般说来,JavaScript是没有权限调用客户端可执行程序的。但有时有些特殊需要,又不得不调用。例如有时涉及客户端文件的操作此时,当然我们可以用 FileSystemObject对象来完成。又例如我们前些时做的项目中,需求是点击页面一个链接不弹出IE的那个文件下载的对话框 (有三个选项:打开、保存、取消的那个),直接把文件下载到指定目录 。此时就不得不绕过浏览器的这个对话框,自己写一个客户端的java程序来实现下载。本代码在IE8中测试通过,要将你的站点设为受信任的站点,再将浏览器的中受信任的站点安全选项中的“初始化未标记为安全的ActiveX控件”项设为Enable。

function callJava(){
 try{
    var strPath="C:\\AJava.jar";\\客户端java程序路径
    var objShell=new ActiveXObject("WScript.Shell");
    window.status="操作正在进行,请稍候......";
    objShell.Run(strPath,8,true); \\程序会阻塞在此直到客户客户端程序返回
    objShell=null; 
    window.status="操作结束。";
  }catch(e){
    alert("操作失败!原因可能是浏览器安全选项设置不对或找不到客户端处理程序.");
  }
}

希望本文所述对大家的javascript程序设计有所帮助。

Javascript 相关文章推荐
Ext 表单布局实例代码
Apr 30 Javascript
Javascript闭包用法实例分析
Jan 23 Javascript
jQuery实现右下角可缩放大小的层完整实例
Jun 20 Javascript
js的各种排序算法实现(总结)
Jul 23 Javascript
AngularJS基础 ng-hide 指令用法及示例代码
Aug 01 Javascript
JavaScript ES6中CLASS的使用详解
Nov 22 Javascript
slideToggle+slideup实现手机端折叠菜单效果
May 25 Javascript
使用javascript函数编写简单银行取钱存钱流程
May 26 Javascript
解决layui laydate 时间控件一闪而过的问题
Sep 28 Javascript
vue+iview实现文件上传
Nov 17 Vue.js
js定时器出现第一次延迟的原因及解决方法
Jan 04 Javascript
quickjs 封装 JavaScript 沙箱详情
Nov 02 Javascript
详细解读JavaScript编程中的Promise使用
Jul 27 #Javascript
JavaScript中的Repaint和Reflow用法详解
Jul 27 #Javascript
javascript实现类似java中getClass()得到对象类名的方法
Jul 27 #Javascript
AngularJS的一些基本样式初窥
Jul 27 #Javascript
javascript实现网页子页面遍历回调的方法(涉及 window.frames、递归函数、函数上下文)
Jul 27 #Javascript
JavaScript数组对象实现增加一个返回随机元素的方法
Jul 27 #Javascript
使用HTML+CSS+JS制作简单的网页菜单界面
Jul 27 #Javascript
You might like
解决phpmyadmin 乱码,支持gb2312和utf-8
2006/11/20 PHP
php 处理上百万条的数据库如何提高处理查询速度
2010/02/08 PHP
php 目录与文件处理-郑阿奇(续)
2011/07/04 PHP
有关PHP中MVC的开发经验分享
2012/05/17 PHP
PHP整数取余返回负数的相关解决方法
2014/05/15 PHP
Codeigniter购物车类不能添加中文的解决方法
2014/11/29 PHP
自己写的php中文截取函数mb_strlen和mb_substr
2015/02/09 PHP
php实现httpRequest的方法
2015/03/13 PHP
PHP随机获取未被微信屏蔽的域名(微信域名检测)
2017/03/19 PHP
javascript offsetX与layerX区别
2010/03/12 Javascript
JavaScript实现快速排序(自已编写)
2012/12/19 Javascript
从数据结构的角度分析 for each in 比 for in 快的多
2013/07/07 Javascript
jQuery+slidereveal实现的面板滑动侧边展出效果
2015/03/14 Javascript
关于JS中match() 和 exec() 返回值和属性的测试
2016/03/21 Javascript
jQuery的each循环用法简单示例
2016/06/12 Javascript
Vue2.0使用过程常见的一些问题总结学习
2017/04/10 Javascript
基于代数方程库Algebra.js解二元一次方程功能示例
2017/06/09 Javascript
微信小程序页面生命周期详解
2018/01/31 Javascript
setTimeout时间设置为0详细解析
2018/03/13 Javascript
angular 表单验证器验证的同时限制输入的实现
2019/04/11 Javascript
微信小程序 下拉刷新及上拉加载原理解析
2019/11/06 Javascript
python实现下载指定网址所有图片的方法
2015/08/08 Python
python+selenium+autoit实现文件上传功能
2017/08/23 Python
Python如何实现MySQL实例初始化详解
2017/11/06 Python
python二进制文件的转译详解
2019/07/03 Python
python爬虫分布式获取数据的实例方法
2020/11/26 Python
css3 实现圆形旋转倒计时
2018/02/24 HTML / CSS
HTML5新特性之用SVG绘制微信logo
2016/02/03 HTML / CSS
canvas仿写贝塞尔曲线的示例代码
2017/12/29 HTML / CSS
Debenhams百货英国官方网站:Debenhams UK
2016/07/12 全球购物
在求职信中如何凸显个人优势
2013/10/30 职场文书
医院搬迁方案
2014/06/14 职场文书
大学生创业,为什么都会选择快餐饮?
2019/08/08 职场文书
Python实现日志实时监测的示例详解
2022/04/06 Python
Python tensorflow卷积神经Inception V3网络结构
2022/05/06 Python
一文解答什么是MySQL的回表
2022/08/05 MySQL