zoukankan      html  css  js  c++  java
  • JS实现打开本地文件或文件夹 ActiveXObject

    IE浏览器打开C盘,测试可用。

    如果浏览器报错提示:ActiveXObject is not defined

    Internet 选项 -> 安全 - >安全级别,调低级别

    function openFileIIs(){
    try{
    var obj=new ActiveXObject("wscript.shell");
    if(obj){
    obj.Run("c:/", 1, false );
    //obj.run("osk");/*打开屏幕键盘*/
    //obj.Run('"'+filename+'"');
    obj=null;
    }
    }catch(e){
    alert("请确定是否存在该盘符或文件");
    }

    }
    openFileIIs()

    1. avascript取得机器名,用户名,读写注册表,启动应用程序
    2.  
      //javascript有个特殊的对象ActiveXObject,通过它可以访问windows的本地文件系统和应用程序,
    3.  
      比如:有的时候我们需要得到用户的机器名,用户名,得到某个文件的信息,或者读写注册表,或者启动计算器、outlook等应用程序。
    4.  
       
    5.  
      下面是一些常用的方法,每个都经过了测试。
    6.  
      <script language="JavaScript">
    7.  
      //取得机器名,登录域及登录用户名
    8.  
      function getusername()
    9.  
      {
    10.  
      var WshNetwork = new ActiveXObject("WScript.Network");
    11.  
      alert("Domain = " + WshNetwork.UserDomain);
    12.  
      alert("Computer Name = " + WshNetwork.ComputerName);
    13.  
      alert("User Name = " + WshNetwork.UserName);
    14.  
      }
    15.  
       
    16.  
      //取得系统目录
    17.  
      function getprocessnum()
    18.  
      {
    19.  
      var pnsys=new ActiveXObject("WScript.shell");
    20.  
      pn=pnsys.Environment("PROCESS");
    21.  
      alert(pn("WINDIR"));
    22.  
      }
    23.  
      //返回系统中特殊目录的路径
    24.  
      function getspecialfolder()
    25.  
      {
    26.  
      var mygetfolder=new ActiveXObject("WScript.shell");
    27.  
      if(mygetfolder.SpecialFolders("Fonts")!=null)
    28.  
      {
    29.  
      alert(mygetfolder.SpecialFolders("Fonts"));
    30.  
      }
    31.  
      }
    32.  
      //取得磁盘信息 传入参数如:getdiskinfo('c')
    33.  
      function getdiskinfo(para)
    34.  
      {
    35.  
      var fs=new ActiveXObject("scripting.filesystemobject");
    36.  
      d=fs.GetDrive(para);
    37.  
      s="卷标:" + d.VolumnName;
    38.  
      s+="------" + "剩余空间:" + d.FreeSpace/1024/1024 + "M";
    39.  
      s+="------" + "磁盘序列号:" + d.serialnumber;
    40.  
      alert(s)
    41.  
      }
    42.  
      //取得系统目录
    43.  
      function getprocessnum()
    44.  
      {
    45.  
      var pnsys=new ActiveXObject("WScript.shell");
    46.  
      pn=pnsys.Environment("PROCESS");
    47.  
      alert(pn("WINDIR"));
    48.  
      }
    49.  
      //启动计算器
    50.  
      function runcalc()
    51.  
      {
    52.  
      var calc=new ActiveXObject("WScript.shell");
    53.  
      calc.Run("calc");
    54.  
      }
    55.  
      //读取注册表中的值
    56.  
      function readreg()
    57.  
      {
    58.  
      var myreadreg=new ActiveXObject("WScript.shell");
    59.  
      try{
    60.  
      alert(myreadreg.RegRead ("HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Run\NeroCheck"));
    61.  
      }
    62.  
      catch(e)
    63.  
      {
    64.  
      alert("读取的值不存在!");
    65.  
      }
    66.  
      }
    67.  
      //写注册表
    68.  
      function writereg()
    69.  
      {
    70.  
      var mywritereg=new ActiveXObject("WScript.shell");
    71.  
      try{
    72.  
      mywritereg.RegWrite("HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Run\MyTest","c:\mytest.exe");
    73.  
      alert("写入成功!");
    74.  
      }
    75.  
      catch(e)
    76.  
      {
    77.  
      alert("写入路径不正确!");
    78.  
      }
    79.  
      }
    80.  
      //删除注册表
    81.  
      function delreg()
    82.  
      {
    83.  
      var mydelreg=new ActiveXObject("WScript.shell");
    84.  
      if(confirm("是否真的删除?"))
    85.  
      {
    86.  
      try{
    87.  
      mydelreg.RegDelete("HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Run\MyTest");
    88.  
      alert("删除成功!");
    89.  
      }
    90.  
      catch(e)
    91.  
      {
    92.  
      alert("删除路径不正确");
    93.  
      }
    94.  
      }
    95.  
      }
    96.  
      //取得文件信息 调用方式如:getfileinfo('c:\test.pdf')
    97.  
      function getfileinfo(para)
    98.  
      {
    99.  
      var myfile=new ActiveXObject("scripting.filesystemobject");
    100.  
      var fi=myfile.GetFile(para);
    101.  
      alert("文件类型:"+fi.type+"文件大小:"+fi.size/1024/1024+"M"+"最后一次访问时间:"+fi.DateLastAccessed);
    102.  
      }
    103.  
      //取得客户端的信息
    104.  
      function clientInfo()
    105.  
      {
    106.  
      strClientInfo="availHeight= "+window.screen.availHeight+" "+
    107.  
      "availWidth= "+window.screen.availWidth+" "+
    108.  
      "bufferDepth= "+window.screen.bufferDepth+" "+
    109.  
      "colorDepth= "+window.screen.colorDepth+" "+
    110.  
      "colorEnable= "+window.navigator.cookieEnabled+" "+
    111.  
      "cpuClass= "+window.navigator.cpuClass+" "+
    112.  
      "height= "+window.screen.height+" "+
    113.  
      "javaEnable= "+window.navigator.javaEnabled()+" "+
    114.  
      "platform= "+window.navigator.platform+" "+
    115.  
      "systemLanguage= "+window.navigator.systemLanguage+" "+
    116.  
      "userLanguage= "+window.navigator.userLanguage+" "+
    117.  
      "width= "+window.screen.width;
    118.  
      alert(strClientInfo);
    119.  
      }
    120.  
       
    121.  
      </script>
    122.  
       
    123.  
      //另存为excel文件并写入值
    124.  
      function saveas(){
    125.  
      var ExcelApp = new ActiveXObject("Excel.Application");
    126.  
      var ExcelSheet = new ActiveXObject("Excel.Sheet")
    127.  
      ExcelSheet.Application.Visible = true;
    128.  
      ExcelSheet.ActiveSheet.Cells(1,1).Value = "This is column A, row 1";
    129.  
      ExcelSheet.SaveAs("C:\TEST.XLS");
    130.  
      ExcelSheet.Application.Quit();
    131.  
      alert('ok');
    132.  
      }
  • 相关阅读:
    爬虫工具包
    用于模型选择的AIC与BIC
    4.数据结构---堆
    海量数据查询
    机器学习---算法汇总目录
    RNN/LSTM/GRU/seq2seq公式推导
    Dropout正则化和其他方法减少神经网络中的过拟合
    查看动态链接库中函数参数类型
    ANSI、ASCII、GB2312、GBK
    Unicode(UTF-8, UTF-16)令人混淆的概念
  • 原文地址:https://www.cnblogs.com/changfeng1800/p/10620404.html
Copyright © 2011-2022 走看看