Javascript-форум (https://javascript.ru/forum/)
-   Events/DOM/Window (https://javascript.ru/forum/events/)
-   -   Вывод сообщений в cdm от рекурсивной функции (https://javascript.ru/forum/events/36200-vyvod-soobshhenijj-v-cdm-ot-rekursivnojj-funkcii.html)

kosmonavtom 07.03.2013 11:07

Вывод сообщений в cdm от рекурсивной функции
 
Есть скрипт с рекурсивным обходом папок, который как Вы понимаете, может работать достаточно продолжительное время, и с ним все в порядке так вот нужно, чтобы во время своей работы он мог вывести сообщения о своей работе. Идея у меня была такая:
1) Во время работы скрипта открывается окно cmd
2) В открытое окно cmd от скрипта поочередно выводятся адреса тех папок которые обрабатываются в данный момент. (или другая информация о ходе работы)
3) После завершения может появляться сообщение о завершении скрипта.

Перерыл не один форум, ничего не нашел. В связи с чем подскажите пожалуйста ответы на вопросы:
а) Возможно ли выполнение моей идеи?
б) Возможно ли вывести процесс работы такого скрипта другим способом?

cyber 07.03.2013 12:45

kosmonavtom, причем командная строка в js форуму?:blink:

kosmonavtom 07.03.2013 12:54

Можно чайнику сказать конкретнее: "Из JS вывести в CMD нельзя!" - как тогда? Никак...

cyber 07.03.2013 13:01

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

kosmonavtom 07.03.2013 15:02

Спасибо! Значит судя по Вашей логике, единственный путь вывести ход выполнения моего скрипта это записать его в код веб-страницы и запускать через браузер? Или можно допустим все-таки создать bat файл и запустить скрипт через бат, а он уже сможет выводить в cmd? (ладно посмотрю это на форуме про bat файлы - просто боюсь, что они мне так-же ответят в духе "...что за js на bat форуме..."

kosmonavtom 07.03.2013 15:22

cyber,
Вот нашел функцию которая запрашивает данные из cmd, так мне получается наоборот нужно...
var wsh = new ActiveXObject("WScript.Shell");
var cmd = wsh.Exec("cmd /c dir C:\ /on");

while (cmd.Status === 0) {
    WScript.Sleep(100);
}

var output = cmd.StdOut.ReadAll();
WScript.Echo(output);

cyber 07.03.2013 17:06

kosmonavtom, работает только в ие, я не уточнил это касаеться всех браузеров кроме ие.
Цитата:

конечно нельзя так как js не имеет доступ к ресурсам системы он ограничевается браузером.

cyber 07.03.2013 17:07

Цитата:

Сообщение от kosmonavtom (Сообщение 239297)
Спасибо! Значит судя по Вашей логике, единственный путь вывести ход выполнения моего скрипта это записать его в код веб-страницы и запускать через браузер? Или можно допустим все-таки создать bat файл и запустить скрипт через бат, а он уже сможет выводить в cmd? (ладно посмотрю это на форуме про bat файлы - просто боюсь, что они мне так-же ответят в духе "...что за js на bat форуме..."

можно написать расширение для браузеров..

kosmonavtom 07.03.2013 19:44

cyber, не понимаю при чем тут браузеры, мне скрипт нужен чисто для Windows и работает он у меня на любом компьютере с этой операционной системой не зависимо от установленных браузеров в виде отдельного файла. И в итоге вводит команду в cmd и забирает полученные данные оттуда, и мне нужно точно так-же только наоборот... Т.е. запустить скрипт из bat и получить выходные данные от скрипта в cmd. Твоя cyber точка зрения мне ясна - повторять два раза не нужно было. Хочется просто услышать и мнения других Профессоров. Заранее спасибо.

cyber 07.03.2013 19:59

kosmonavtom, я с батниками работал но давно но что то еще помню, я просто не могу понять что нужно и причем тут Js.


Часовой пояс GMT +3, время: 18:14.