js调用可执行性(exe)文件(仅IE可用)

jQuery:

$(function(){

$(‘#exsp‘).click(function(exe){

exe.value=$(‘.exsp‘).attr(‘val‘);

try   {

var   objShell   =   new   ActiveXObject("wscript.shell");

objShell.Run($(‘.exsp‘).attr(‘val‘));

objShell   =   null;

}

catch (exe){

alert(‘找不到文件"‘+$(‘.exsp‘).attr(‘val‘)+‘"(或它的组件之一)。请确定路径和文件名是否正确,而且所需的库文件均可用。‘)

}

});

});

JS:

function   Run(strPath)   {  
    // exit;
    exe.value=strPath;  
    try   {  
        var   objShell   =   new   ActiveXObject("wscript.shell");  
        objShell.Run(strPath);  
        objShell   =   null;  
    }  
    catch (e){
        alert(‘找不到文件"‘+strPath+‘"(或它的组件之一)。请确定路径和文件名是否正确,而且所需的库文件均可用。‘)  
    }  
}

html:

<input type="button" id="exsp" value="播放课程" >

web服务器的js让客户端执行exe  

在本地调用ActiveXObject不会出现问题,问题是在web服务器出现的。总是提示服务器不能创建对象。

那是因为ie里面被禁在外网执行。因此我们可以提示客户端的ie选项的安全的自定义级别里面的"对未标记为可安全执行脚本的ActiveX控件初始化并执行脚本‘‘ 启动就ok了,在里面有四种安全设置。internet 指所有网站都可以运行ActiveXObject,用起来客户端很危险。我们可以让客户端把我们的web服务器添加到受信任的站点,然后对其自定义级别启动"对未标记为可安全执行脚本的ActiveX控件初始化并执行脚本‘‘ 。

//调用exe
function exec(command,type) {
 try {
  if (navigator.userAgent.indexOf("MSIE") <= 0) {
   alert("请使用IE浏览器查看");
   return;
  }
  var fso, f, s;
  fso = new ActiveXObject("Scripting.FileSystemObject");
  if(!fso.FileExists(command)){
   var msg="";
   if(type=="cz"){
    msg="未找到"+command;
   }else{
    msg="可能未安装视频插件,确定下载安装吗?";
   }
   var flag=confirm(msg);
   if(flag){
    return "bucunzai";
   }else if(type!="cz"){
    return "cunzai"
   }
   return;
  }
 }
 catch (e) {
  if(e.number==-2146823281){
   var msg="";
   if(type=="cz"){
    msg="未找到"+command;
   }else{
    msg="可能未安装视频插件,确定下载安装吗?";
   }
   var flag=confirm(msg);
   if(flag){
    return "bucunzai";
   }else if(type!="cz"){
    return "cunzai"
   }
   return;
  }
  alert(e.number+":"+e.message);
  //alert("命令已经被用户禁止!请在ie选项的安全模块将此网站加入可信站点并启动该自定义级别中的‘对未标记为可安全执行脚本的ActiveX控件初始化并执行脚本‘选项,之后刷新页面");
  return "命令已经被用户禁止!请在ie选项的安全模块将此网站加入<可信站点>并<启动>该自定义级别中的‘对未标记为可安全执行脚本的ActiveX控件初始化并执行脚本‘选项,之后<刷新>页面";
 }
 if(type!="cz"){
  return "cunzai";
 }
 //alert(command);
 window.oldOnError = window.onerror;
 window._command = command;
 window.onerror = function (err) {
  if (err.indexOf("utomation") != -1) {
   //alert("命令已经被用户禁止!请在ie选项的安全模块将此网站加入可信站点并启动该自定义级别中的‘对未标记为可安全执行脚本的ActiveX控件初始化并执行脚本‘选项,之后刷新页面");
   return "命令已经被用户禁止!请在ie选项的安全模块将此网站加入<可信站点>并<启动>该自定义级别中的‘对未标记为可安全执行脚本的ActiveX控件初始化并执行脚本‘选项,之后<刷新>页面";
  } else {
   return false;
  }
 };
 var wsh = new ActiveXObject("WScript.Shell");
 if (wsh) {
  wsh.Run(command);
 }
 window.onerror = window.oldOnError;
 return window.oldOnError;
}

js调用可执行性(exe)文件(仅IE可用)

时间: 2024-11-05 23:23:15

js调用可执行性(exe)文件(仅IE可用)的相关文章

JS调用可执行exe

JS调用可执行本地exe文件: <%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%> <% String path = request.getContextPath(); String basePath = request.getScheme()+"://"+request.getServerName()+":&qu

Python生成windows可执行的exe文件

参考: https://segmentfault.com/a/1190000016087451 https://www.cnblogs.com/aoede-jacqueline/archive/2019/07/25/11244714.html 为什么要生成可执行文件 不需要安装对应的编程环境 可以将你的应用闭源 用户可以方便.快捷的直接使用 缺点:程序很大. 安装pyinstaller 在设置好conda软件源为清华开源站之后,Windows开始菜单以管理员模式运行Anaconda Prompt

JS调用activeX实现浏览本地文件夹功能

研究了一天,js访问本地文件本身是不可能的,只能借助于插件.植入正题,IE仅支持ActiveX插件. function openDialog() { try { var Message = "请选择文件夹"; //选择框提示信息 var Shell = new ActiveXObject("Shell.Application"); var Folder = Shell.BrowseForFolder(0, Message, 0x0040, 0x11); //起始目录

js调用打印机自动分页的功能(仅适用于IE浏览器)

做个功能需要打印的时候添加分页,哪怕是内容不够也需要分页. 浏览器上显示 打印预览是这样的: 模拟打印出来是这样的 都是显示的是5页,方法很简单.在需要分页的位置加上一行代码: <div class="PageNext"></div> css样式是这样的: .PageNext{page-break-after: always;} 以上就是实现的打印分页的功能. 另外有几个打印的常用方法记录一下. 1.调用打印的方法: wb.execwb(6,6) 2.调用打印预

c++里面执行一个exe文件,匿名管道

操作系统的实验要用到管道. 管道(Pipe)实际是用于进程间通信的一段共享内存,创建管道的进程称为管道服务器,连接到一个管道的进程为管道客户机.一个进程在向管道写入数据后,另一进程就可以从管道的另一端将其读取出来.匿名管道(Anonymous Pipes)是在父进程和子进程间单向传输数据的一种未命名的管道,只能在本地计算机中使用,而不可用于网络间的通信. 匿名管道实施细则 匿名管道由CreatePipe()函数创建,该函数在创建匿名管道的同时返回两个句柄:管道读句柄和管道写句柄.CreatePi

使用exe4j把java程序生成可执行的.exe文件

exe4j可以很容易把一个jar打成exe.  下载地址:http://dl.dbank.com/c0owlopqf8 1.下载的安装文件,里面包含一个注册码生成的工具 2.安装exe4j以及破解(注意jre版本必须是1.4到1.6) 3.运行exe4j 运行界面如下图 点击change license,用户名公司名可以任意输入,再输入注册码就OK了 4.点击下一步,选择第二个模式,即把jar包打包成exe.

Qt打包成单独可执行的exe文件

1.将图标newIco.ico复制到工程目录下. 2.在工程目录下新建空白txt文档,添加以下内容. IDI_ICON1 ICON DISCARDABLE "newIco.ico" 3.将txt文档后缀修改为.rc(如:newIco.rc) 4.在pro文件中添加如下内容. RC_FILE=newIco.rc 5.重新编译程序,图标已经变成了newIco的样子 6.Qt配置环境执行文件运行坏境 7.EnigmaVirtualBox 原文地址:https://www.cnblogs.co

将文件变成可执行的exe文件

一.JAVA javac +[文件名].java 二.python pip install --upgrade pyinstaller pyinstaller -F [文件名].py 原文地址:https://www.cnblogs.com/future-dream/p/9607630.html

初学c# -- c#创建开机自启服调用外部交互式exe文件

在c#创建的开机自启动服务里,调用外部可执行文件有以下问题:1.带窗口的交互式的exe文件调用后,实际并没有被执行:2.服务是随windows启动的,服务启动后可能windows桌面还没出来,会报错误,导致程序无法执行:3.安装服务需管理员权限等问题.对上面的一些问题进行处理:1.调用带窗口的交互式的exe文件,主要是Interop.cs文件, using System; using System.Collections.Generic; using System.Linq; using Sys