mirror of
https://github.com/gnh1201/welsonjs.git
synced 2025-10-26 18:41:18 +00:00
Remove makeInterface(<number>) and replace to UseObject(<string>)
Remove makeInterface(<number>) and replace to UseObject(<string>)
This commit is contained in:
parent
3de5b618db
commit
6e89bda453
112
lib/pipe-ipc.js
112
lib/pipe-ipc.js
|
|
@ -98,25 +98,31 @@ function makeProbabilityBit(p) {
|
|||
return !( p > 0.0 ? ( (randomize() / p) > 1.0 ) : true) ? 1 : 0;
|
||||
}
|
||||
|
||||
function makeInterface(i) {
|
||||
return CreateObject(["Scripting.FileSystemObject", "ADODB.Stream"][i]);
|
||||
}
|
||||
|
||||
function openTextFile(filename, iomode) {
|
||||
return makeInterface(0).OpenTextFile(filename, iomode, true, TristateTrue);
|
||||
return UseObject("Scripting.FileSystemObject", function(fso) {
|
||||
return fso.OpenTextFile(filename, iomode, true, TristateTrue);
|
||||
});
|
||||
}
|
||||
|
||||
function checkFileExists(filename) {
|
||||
return makeInterface(0).FileExists(filename);;
|
||||
return UseObject("Scripting.FileSystemObject", function(fso) {
|
||||
return fso.FileExists(filename);
|
||||
});
|
||||
}
|
||||
|
||||
function deleteFile(filename) {
|
||||
if (checkFileExists(filename)) makeInterface(0).DeleteFile(filename);
|
||||
if (checkFileExists(filename)) {
|
||||
return UseObject("Scripting.FileSystemObject", function(fso) {
|
||||
fso.DeleteFile(filename);
|
||||
});
|
||||
}
|
||||
}
|
||||
|
||||
function getFileSize(filename) {
|
||||
try {
|
||||
return makeInterface(0).GetFile(filename).Size;
|
||||
return UseObject("Scripting.FileSystemObject", function(fso) {
|
||||
return fso.GetFile(filename).Size;
|
||||
});
|
||||
} catch (e) {
|
||||
return -1;
|
||||
}
|
||||
|
|
@ -130,40 +136,43 @@ function Converter() {
|
|||
};
|
||||
|
||||
this.getBinaryFromText = function() {
|
||||
var stream = makeInterface(1);
|
||||
stream.Type = adTypeText;
|
||||
stream.CharSet = CdoCharset.CdoUTF_8;
|
||||
stream.Open();
|
||||
stream.WriteText(this.value);
|
||||
stream.Position = 0;
|
||||
stream.Type = adTypeBinary;
|
||||
return stream.Read();
|
||||
return UseObject("ADODB.Stream", function(stream) {
|
||||
stream.Type = adTypeText;
|
||||
stream.CharSet = CdoCharset.CdoUTF_8;
|
||||
stream.Open();
|
||||
stream.WriteText(this.value);
|
||||
stream.Position = 0;
|
||||
stream.Type = adTypeBinary;
|
||||
return stream.Read();
|
||||
});
|
||||
};
|
||||
|
||||
this.getTextFromBinary = function() {
|
||||
var stream = makeInterface(1);
|
||||
stream.Type = adTypeBinary;
|
||||
stream.Open();
|
||||
stream.Write(this.value);
|
||||
stream.Position = 0;
|
||||
stream.Type = adTypeText;
|
||||
stream.CharSet = CdoCharset.CdoUTF_8;
|
||||
return stream.ReadText();
|
||||
return UseObject("ADODB.Stream", function(stream) {
|
||||
stream.Type = adTypeBinary;
|
||||
stream.Open();
|
||||
stream.Write(this.value);
|
||||
stream.Position = 0;
|
||||
stream.Type = adTypeText;
|
||||
stream.CharSet = CdoCharset.CdoUTF_8;
|
||||
return stream.ReadText();
|
||||
});
|
||||
};
|
||||
|
||||
this.repositionObject = function(stream, position) {
|
||||
position = (position !== "number" ? 0 : position);
|
||||
|
||||
return UseObject("ADODB.Stream", function(newStream) {
|
||||
newStream.Type = adTypeBinary;
|
||||
newStream.Mode = adModeReadWrite;
|
||||
newStream.Open();
|
||||
stream.Position = position;
|
||||
stream.CopyTo(newStream);
|
||||
stream.Flush();
|
||||
stream.Close();
|
||||
return newStream;
|
||||
});
|
||||
|
||||
var _stream = makeInterface(1);
|
||||
_stream.Type = adTypeBinary;
|
||||
_stream.Mode = adModeReadWrite;
|
||||
_stream.Open();
|
||||
stream.Position = position;
|
||||
stream.CopyTo(_stream);
|
||||
stream.Flush();
|
||||
stream.Close();
|
||||
|
||||
return _stream;
|
||||
};
|
||||
}
|
||||
|
||||
|
|
@ -399,14 +408,15 @@ function PipeIPC() {
|
|||
}
|
||||
|
||||
// Convert UTF-16 BOM to a character set
|
||||
var stream = makeInterface(1);
|
||||
stream.Type = adTypeText;
|
||||
stream.Charset = charset;
|
||||
stream.Open();
|
||||
stream.WriteText(str);
|
||||
stream = (new Converter()).repositionObject(stream, 3);
|
||||
stream.SaveToFile(dst, adSaveCreateOverWrite);
|
||||
stream.Close();
|
||||
UseObject("ADODB.Stream", function(stream) {
|
||||
stream.Type = adTypeText;
|
||||
stream.Charset = charset;
|
||||
stream.Open();
|
||||
stream.WriteText(str);
|
||||
stream = (new Converter()).repositionObject(stream, 3);
|
||||
stream.SaveToFile(dst, adSaveCreateOverWrite);
|
||||
stream.Close();
|
||||
});
|
||||
|
||||
// Set a result
|
||||
isCommited = true;
|
||||
|
|
@ -462,7 +472,7 @@ function PipeIPC() {
|
|||
this.openReader();
|
||||
text += this._read(this.reader);
|
||||
isReadCompleted = true;
|
||||
|
||||
|
||||
this.lastReadTime = this.getCurrentTime();
|
||||
this.closeReader();
|
||||
} catch (e) {
|
||||
|
|
@ -495,15 +505,15 @@ function PipeIPC() {
|
|||
var isReadCompleted = false;
|
||||
while (!isReadCompleted) {
|
||||
try {
|
||||
var ado = makeInterface(1);
|
||||
ado.Charset = charset;
|
||||
ado.Open();
|
||||
ado.LoadFromFile(filename);
|
||||
text += ado.ReadText();
|
||||
ado.Close();
|
||||
UseObject("ADODB.Stream", function(stream) {
|
||||
stream.Charset = charset;
|
||||
stream.Open();
|
||||
stream.LoadFromFile(filename);
|
||||
text += stream.ReadText();
|
||||
stream.Close();
|
||||
});
|
||||
isReadCompleted = true;
|
||||
} catch (e) {
|
||||
//console.log(e.message);
|
||||
isReadCompleted = false;
|
||||
}
|
||||
}
|
||||
|
|
@ -555,7 +565,7 @@ exports.adSaveCreateNotExist = adSaveCreateNotExist;
|
|||
exports.adSaveCreateOverWrite = adSaveCreateOverWrite;
|
||||
exports.adModeReadWrite = adModeReadWrite;
|
||||
|
||||
exports.VERSIONINFO = "PIPE-based IPC Module (pipe-ipc.js) version 0.1.23";
|
||||
exports.VERSIONINFO = "PIPE-based IPC Module (pipe-ipc.js) version 0.1.24";
|
||||
exports.AUTHOR = "gnh1201@catswords.re.kr";
|
||||
exports.global = global;
|
||||
exports.require = require;
|
||||
|
|
|
|||
Loading…
Reference in New Issue
Block a user