在网页中执行本地exe程序(run exe from web browser)

有时候,需要在 网页上去执行本地的一个EXE文件,如果用javascript ,一般浏览器,由于安全问题,都会禁止掉这个特性。但经过测试,目前在ie,firefox中仍然可以用JS来实现,但在chrome,safari 中没有实现。本文就用javascript在IE,FIREFOX中执行 exe 文件做例子。

程序代码 程序代码

<!DOCTYPE HTML PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
  <head>
      <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
      <title> IE 或 Firefox 执行 Exe 文件 </title>
      <script>
            function LaunchApp() {
                var exepath="C:\\WINDOWS\\NOTEPAD.EXE";
                if (!document.all) {
                    netscape.security.PrivilegeManager.enablePrivilege("UniversalXPConnect");                              
                    var file = window.Components.classes['@mozilla.org/file/local;1'].createInstance(Components.interfaces.nsILocalFile);
                    file.initWithPath(exepath);                
                    var run = window.Components.classes['@mozilla.org/process/util;1'].createInstance(Components.interfaces.nsIProcess);
                    run.init(file);
                    var parameters = [""];
                    run.run(false, parameters,parameters.length);    
                }
                else{
                  var ws = new ActiveXObject("WScript.Shell");
                  ws.Exec(exepath);
              }
            }
        </script>
  </head>
  <body>
    <input type="button" onclick="javascript:LaunchApp()" value="执行EXE" />
  </body>
</html>


打开的文件是 notepad ,记事本,你可以替换成,你想要打开的文件。在 IE,FIREFOX 下通过。
使用这种方式打开 EXE,不是很方便,而且有局限。还有另外一种方法:url protocol .在下一篇博客中再讲解。

除非申明,文章均为一号门原创,转载请注明本文地址,谢谢!
文章来自: 本站原创
引用通告: 查看所有引用 | 我要引用此文章
Tags:
相关日志:
评论: 1 | 引用: 0 | 查看次数: -
回复回复大笨兔博客[2012-08-12 10:38 AM | del]
感觉跟黑客有点像
回复来自 轻舞肥羊 的评论 轻舞肥羊 于 2012-08-12 11:04 AM 回复
可以做黑客用途,但一般不会吧,比如,迅雷下载,在网页上点击链接,直接启动迅雷等呀。不过他采用的是urlprotocol技术。
发表评论
昵 称:
密 码: 游客发言不需要密码.
内 容:
验证码: 验证码
选 项:
虽然发表评论不用注册,但是为了保护您的发言权,建议您注册帐号.