mirror of
https://github.com/gnh1201/welsonjs.git
synced 2025-05-15 06:01:04 +00:00
Update pipe-ipc.js
This commit is contained in:
parent
01cfdb0f72
commit
04ec2586a5
|
@ -69,6 +69,18 @@ function createADO() {
|
||||||
return CreateObject("ADODB.Stream");
|
return CreateObject("ADODB.Stream");
|
||||||
}
|
}
|
||||||
|
|
||||||
|
function SetPositionADO(ado, position) {
|
||||||
|
var newAdo = createADO();
|
||||||
|
newAdo.Type = adTypeBinary;
|
||||||
|
newAdo.Mode = adModeReadWrite;
|
||||||
|
newAdo.Open();
|
||||||
|
ado.Position = position;
|
||||||
|
ado.CopyTo(newAdo);
|
||||||
|
ado.Flush();
|
||||||
|
ado.Close();
|
||||||
|
return newAdo;
|
||||||
|
}
|
||||||
|
|
||||||
function PipeIPC() {
|
function PipeIPC() {
|
||||||
this.path = "data\\.pipe_:pipename";
|
this.path = "data\\.pipe_:pipename";
|
||||||
this.delimiter = "\r\n";
|
this.delimiter = "\r\n";
|
||||||
|
@ -237,19 +249,6 @@ function PipeIPC() {
|
||||||
var charset = this.charset;
|
var charset = this.charset;
|
||||||
var isCommited = false;
|
var isCommited = false;
|
||||||
|
|
||||||
// define functions
|
|
||||||
var StripAdoBOM = function(adoObj) {
|
|
||||||
var newAdoObj = createADO();
|
|
||||||
newAdoObj.Type = adTypeBinary;
|
|
||||||
newAdoObj.Mode = adModeReadWrite;
|
|
||||||
newAdoObj.Open();
|
|
||||||
adoObj.Position = 3;
|
|
||||||
adoObj.CopyTo(newAdoObj);
|
|
||||||
adoObj.Flush();
|
|
||||||
adoObj.Close();
|
|
||||||
return newAdoObj;
|
|
||||||
};
|
|
||||||
|
|
||||||
while (!isCommited) {
|
while (!isCommited) {
|
||||||
try {
|
try {
|
||||||
// Open a temporary file
|
// Open a temporary file
|
||||||
|
@ -268,13 +267,13 @@ function PipeIPC() {
|
||||||
str = text;
|
str = text;
|
||||||
}
|
}
|
||||||
|
|
||||||
// Convert UTF-16 BOM to UTF-8
|
// Convert UTF-16 BOM to a character set
|
||||||
var ado = createADO();
|
var ado = createADO();
|
||||||
ado.Type = adTypeText;
|
ado.Type = adTypeText;
|
||||||
ado.Charset = charset;
|
ado.Charset = charset;
|
||||||
ado.Open();
|
ado.Open();
|
||||||
ado.WriteText(str);
|
ado.WriteText(str);
|
||||||
ado = StripAdoBOM(ado);
|
ado = SetPositionADO(ado, 3);
|
||||||
ado.SaveToFile(dst, adSaveCreateOverWrite);
|
ado.SaveToFile(dst, adSaveCreateOverWrite);
|
||||||
ado.Close();
|
ado.Close();
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue
Block a user