Рекурсия в и сохранение состояния объектов

Рассматриваются вопросы связанные с автоматизацией процесса управления сетью, установки программного обеспечения, управления пользователями и т.д.

Модератор: Модераторы

Новый участник
Сообщения: 6
Зарегистрирован: 05 фев 2005, 16:20
Откуда: Odesa, Lviv

Сообщение Yola » 12 фев 2005, 00:26

Вот такой скрипт:
Код
var strresult = "";

function EnumFiles(fldr)
{
fc = new Enumerator(fldr.SubFolders);
for (; !fc.atEnd(); fc.moveNext()) {
 strresult += fc.item() + "{ENTER}";
 EnumFiles(fso.GetFolder(fc.item()));
}

}

var fso;
fso = new ActiveXObject("Scripting.FileSystemObject");

var fldr = fso.GetFolder("2ParcelMapInstall");

var str = EnumFiles(fldr);

var WSHShell = WScript.CreateObject("WScript.Shell");
WSHShell.Run("notepad",5);
WScript.Sleep(100);
WSHShell.AppActivate("notepad");

WSHShell.SendKeys (strresult);
WScript.Echo(strresult);
[/code]


Вроде, должен выдавать список всех подпапок а выдаёт только одно прохождение вглубь. Ну, типа, крайнюю "правую" ветку:)
Активный пользователь
Сообщения: 243
Зарегистрирован: 30 июн 2004, 16:18
Откуда: Кировоград (Украина)

Сообщение Valeriy » 12 фев 2005, 20:31

Yola
fc должна быть явно задана как локальная переменная. Вот так будет работать
Цитата
var strresult = "";
function EnumFiles(fldr)
{
var fc = new Enumerator(fldr.SubFolders);
for(; !fc.atEnd(); fc.moveNext()) {
  strresult += fc.item() + "{ENTER}";
  EnumFiles(fc.item());
}
return strresult;
}

var fso;
fso = new ActiveXObject("Scripting.FileSystemObject");

var fldr = fso.GetFolder("2ParcelMapInstall");

var str = EnumFiles(fldr);

var WSHShell = WScript.CreateObject("WScript.Shell");
WSHShell.Run("notepad",5);
WScript.Sleep(2000);
WSHShell.AppActivate("notepad");

WSHShell.SendKeys(str);
WScript.Echo(str);
[/quote]
C уважением, Валерий

Новый участник
Сообщения: 6
Зарегистрирован: 05 фев 2005, 16:20
Откуда: Odesa, Lviv

Сообщение Yola » 14 фев 2005, 19:53

красно дякую :D

Вернуться в Автоматизация процесса управления

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 4