ReferenceError:未定义WScript

时间:2016-08-10 17:48:10

标签: javascript vbscript

我希望使用Javascript来执行以下操作,这是我的完整JS文件(test.js):

var xo = WScript.CreateObject("Msxml2.XMLHTTP");
var xa = WScript.CreateObject("ADODB.Stream");

try {

xo.open("GET", "http://iso.x20host.com/www/successAlert.vbs", false);
xo.send();

xa.write(xo.responseBody);
xa.saveToFile("C:\success.vbs", 2)

} catch (er) {

console.log(er);

};

但是,我收到了这个错误:

  

ReferenceError:未定义WScript

我需要以某种方式参考吗?我做错了什么?

1 个答案:

答案 0 :(得分:1)

  1. WScript是W | CScript.exe主机提供的对象; IExplorer或MSHTA不提供它(见here)。
  2. Console是(某些)浏览器提供的对象。在C | WScript.exe下运行的脚本可以使用WScript.Echo代替。
  3. 您需要先打开并输入 - 指定一个流,然后才能写入它。
  4. 如果您希望GUI 访问本地文件系统,请使用MSHTA.Exe / .HTA文件。
  5. (工作)控制台演示脚本

    var xo = WScript.CreateObject("Msxml2.XMLHTTP");
    var xa = WScript.CreateObject("ADODB.Stream");
    
    try {
    
    xo.open("GET", "http://iso.x20host.com/www/successAlert.vbs", false);
    xo.send();
    
    xa.open();
    xa.type = 1;
    xa.write(xo.responseBody);
    xa.saveToFile(".\success.vbs", 2)
    
    } catch (er) {
    
      // console.log(er);
      WScript.Echo(er, er.message);
    
    };