UNPKG

@naimi/alib

Version:
86 lines (79 loc) 2.47 kB
//! override ActiveXObject() var ActualActiveXObject = ActiveXObject; ActiveXObject_ = function(progid) { var ax = new ActualActiveXObject(progid); //! a small wrapper for the "MSXML2.XMLHTTP" object. if (progid.toLowerCase() == "msxml2.xmlhttp") { var o = { _ax: ax, _status: "fake", responseText: "", responseXml: null, readyState: 0, status: 0, statusText: 0, onReadyStateChange: null // add the other properties... }; o._onReadyStateChange = function() { var self = o; return function() { self.readyState = self._ax.readyState; self.responseText = self._ax.responseText; self.responseXml = self._ax.responseXml; self.status = self._ax.status; self.statusText = self._ax.statusText; if (self.onReadyStateChange) self.onReadyStateChange(); } }(); o.open = function(bstrMethod, bstrUrl, varAsync, bstrUser, bstrPassword) { varAsync = (varAsync !== false); this._ax.onReadyStateChange = this._onReadyStateChange return this._ax.open(bstrMethod, bstrUrl, varAsync, bstrUser, bstrPassword); }; o.send = function(varBody) { return this._ax.send(varBody); }; // add the other methods... } else { var o = ax; } return o; } function Test() { var r = new ActiveXObject_('Msxml2.XMLHTTP'); alert(r._status); // "fake" r.onReadyStateChange = function() { alert(this.readyState); }; r.open("GET", "z.xml"); r.send(); alert(r.responseText); } // var fso = new ActiveXObject_('Msxml2.XMLHTTP'); // if (!Array.prototype.includes) { // Array.prototype.includes = function(key) { // // for (var i = 0; i < this.length; i++) // for (var i = this.length; i--;) // if (key === this[i]) // return true; // return false; // } // } // var ActiveXObject_ = function(progid) { // var ax = new ActualActiveXObject(progid); // var FSO = WScript.CreateObject("Scripting.FileSystemObject"); // // WScript.Echo(FSO); // // if (!fs.prototype.rmdirSync) { // FSO.prototype.rmdirSync = function(foldername) { // WScript.Echo("deleting: "+foldername); // // fs.DeleteFolder(foldername, force) // return false; // } // // } // // if (!fs.prototype.rmdirSync) { // fs.prototype.rmdirSync = function(foldername) { // WScript.Echo("deleting: "+foldername); // // fs.DeleteFolder(foldername, force) // return false; // } // }