run script Надо создать текстовый файл

Akro

Участник
Топикстартер
Сообщения
480
Реакции
26
Вот есть такой пробный скрипт

function f() {
var fso = WScript.CreateObject("Scripting.FileSystemObject");
var f1 = fso.CreateTextFile("./111.txt", true);
f1.WriteLine("This is a test.");
f1.Close();
return "ok";
}
f();

Если запустить run script то вот это ему не нравиться: "var f1 = fso.CreateTextFile("./111.txt", true);"
В принципе можно используя run script создавать, сохранять, менять содержимое текстовых файлов. Если можно, то не получается.
 

baraka

Участник
Сообщения
193
Реакции
90
Нужно место работы поменять, я бы с этого начал.
 

splxgf

12 лет на форуме
Сообщения
7 744
Реакции
3 425
ну честно мне тоже не нравится.
Какой-то относительный путь, с левым слешем, в линукс-стиле.
Пробуйте полный путь или только имя файла без всяких извращений типа ./
 

Gad

Сообщения
2 975
Реакции
1 408
Какой-то относительный путь, с левым слешем, в линукс-стиле
Путь к текущему каталогу. Ничего странного.
Все работает для VBS в таком виде:
Код:
Set FSO = CreateObject("Scripting.FileSystemObject")
Set f1 = FSO.CreateTextFile("./111.txt", True)
f1.WriteLine("This is a test.")
f1.Close()
 

Akro

Участник
Топикстартер
Сообщения
480
Реакции
26
ну честно мне тоже не нравится.
Какой-то относительный путь, с левым слешем, в линукс-стиле.
Пробуйте полный путь или только имя файла без всяких извращений типа ./
Если его запустить в windows script host, с относительным путем то файл вполне создается. И с полным создается.
А вот из runscript не создается в любом случае.
1638781786673.png
 

Chiga

15 лет на форуме
Сообщения
802
Реакции
519
Может так?

Код:
var fso = new ActiveXObject("Scripting.FileSystemObject");
 

Gad

Сообщения
2 975
Реакции
1 408
Может так?

Код:
var fso = new ActiveXObject("Scripting.FileSystemObject");
А может просто
Код:
function f() {
Dim FSO, f1
Set FSO = CreateObject("Scripting.FileSystemObject")
Set f1 = FSO.CreateTextFile("./111.txt", True)
f1.WriteLine("This is a test.")
f1.Close()
return "ok";
}
f();
Так не прокатит?
Мельком заглянул в https://docs.esko.com/docs/en-us/automationengine/18/userguide/pdf/ae_ScriptRunner.pdf Вроде как в нутри функции должен сохраняться синтаксис VBS, не?
 
  • Спасибо
Реакции: Akro

Akro

Участник
Топикстартер
Сообщения
480
Реакции
26
А может просто
Код:
function f() {
Dim FSO, f1
Set FSO = CreateObject("Scripting.FileSystemObject")
Set f1 = FSO.CreateTextFile("./111.txt", True)
f1.WriteLine("This is a test.")
f1.Close()
return "ok";
}
f();
Так не прокатит?
Мельком заглянул в https://docs.esko.com/docs/en-us/automationengine/18/userguide/pdf/ae_ScriptRunner.pdf Вроде как в нутри функции должен сохраняться синтаксис VBS, не?
Действительно. Там вообще никакой явыскрипт нету для скриптов под винду. Только vbs. Спасибо )
 

Chiga

15 лет на форуме
Сообщения
802
Реакции
519
Что то никакой из вариантов изложенных выше не работает.
Вы бы хоть


Код:
function main (inputs, outputFolder, params)
{
    var fso = new ActiveXObject("Scripting.FileSystemObject");
    var f1 = fso.CreateTextFile(outputFolder + "/111.txt", true);
    f1.WriteLine(params);
    f1.Close();
    return;
}
ae.PNG
 
  • Спасибо
Реакции: Akro и Gad

Gad

Сообщения
2 975
Реакции
1 408
Добавлю на VBS
Код:
Function f()
Dim FSO, f1
Set FSO = CreateObject("Scripting.FileSystemObject")
Set f1 = FSO.CreateTextFile("./111.txt", True)
f1.WriteLine("This is a test.")
f1.Close()
f = "ok"
End function
f()
 
  • Спасибо
Реакции: Akro

Akro

Участник
Топикстартер
Сообщения
480
Реакции
26
Ну если честно не особо понятно куда ТС нужно то:) Кстати, а аргументы как передаются?
Вообще нужно взять текстовый файл. Расшифровать его содержимое и на основе этого содержимого выдать нн-е кол-во новых текстовых файлов с данными. А есть какой то отладчик, чтобы все это отлаживать? А то гугловский явно не подходит.