Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #41 (permalink)  
Старый 09.03.2013, 16:48
х.з
Посмотреть профиль Найти все сообщения от dmitriymar
 
Регистрация: 21.11.2010
Сообщений: 4,588

Сообщение от cyber
dmitriymar, это я знаю, но Тс говорил по Xp и 7,
вобщето я ответил на "знания" дефачки
Ответить с цитированием
  #42 (permalink)  
Старый 09.03.2013, 18:53
Аватар для rgl
rgl rgl вне форума
Профессор
Отправить личное сообщение для rgl Посмотреть профиль Найти все сообщения от rgl
 
Регистрация: 28.02.2011
Сообщений: 349

kosmonavtom, во-первых, смените тон. Вам тут никто ничего не обязан, тем не менее стараются помочь кто как может. А задуматься следует вам, напр. над тем, что возможна ситуация, когда кто-то либо не знает ответа на ваш вопрос настолько хорошо, чтобы сходу написать работающий пример, либо просто не имеет времени, но знает, что найти ответ можно в конкретном месте. Он за вас должен там его искать? Что плохого в том, что хотел помочь и порекомендовал книги?
А если у вас мое предложение по поводу запуска не работает, то вы что-то делаете не так, либо (что более вероятно) просто нагло врете. Я этим пользуюсь уже много лет, и под 2000, и под XP, и под семеркой. Ваш же пример у меня при запуске выводит информацию в консоль.
Если бы у вас это не работало, вы, вместо того, чтобы учить других как вести себя на форуме, рассказали бы что именно не работает - не запускается вообще, или запускается и не выводит ничего в консоль.
И что делает простейшая программи в одну строчку, типа:
WScript.Echo( "test" );
если запустить ее
cscript test.js
И что происходит если сказать
cscript //H:cscript
ну и т.д., т.е. вы пытались бы разобраться в вопросе, который вас поначалу интересовал, а не учили бы старожилов форума, на который вы только что пришли, "хорошим манерам"
Ответить с цитированием
  #43 (permalink)  
Старый 09.03.2013, 23:19
Аватар для cyber
I am Student
Отправить личное сообщение для cyber Посмотреть профиль Найти все сообщения от cyber
 
Регистрация: 17.12.2011
Сообщений: 4,415

rgl, так все таки прав, Тс пишет не на js?
__________________
Цитата:
Если ограничения и условия описываются как "коробка", то хитрость в том что бы найти именно коробку... Не думайте о чем то глобальном - найдите коробку.
Ответить с цитированием
  #44 (permalink)  
Старый 10.03.2013, 01:20
Аватар для rgl
rgl rgl вне форума
Профессор
Отправить личное сообщение для rgl Посмотреть профиль Найти все сообщения от rgl
 
Регистрация: 28.02.2011
Сообщений: 349

Сообщение от cyber Посмотреть сообщение
rgl, так все таки прав, Тс пишет не на js?
Не понял, это вопрос или утверждение?
Если вопрос ко мне, то я уже некоторое время назад понял безуспешность отстаивания своего мнения на форумах, ибо есть форумы про JavaScript в браузерах, и нет форумов про JavaScript вне браузеров. А на тех форумах что есть, побеждают в споре в подобном вопросе большинством, а большинсво заранее уверено в своей правоте и даже не пытается вникнуть в доводы оппонента.
Мое мнение - вы тут готовы друг другу глотки перегрызть в споре о том, JScript и JavaScript - одно и то же или совершенно разные языки. А вопрос то не в сути, а в терминологии, не договорившись что обозначает данный конкретный термин, нельзя спорить применим ли он в каком-то конкретном случае или нет. Если принять по определению, что JavaScript - язык браузеров, то утверждение "вре браузеров JavaScript нет" становится тавтологией. А если принять по определению, что JavaScript - это реализация стандарта ECMA-262 от фирмы Netscape, то тот язык, что в IE и в опере - уже не JavaScript. Назовем термином xerox только агрегаты, выпущенные одноименной фирмой, и копировальный аппарат, стоящий в соседней комнате - никакой не ксерокс.
Я же склонен называть термином JavaScript язык, соответствующий всем известному стандарту, в котором ничего не говорится про браузер, про объектную модель документа.
Это принято называть базовым JavaScript, и микрософтовский JScript несомненно таковым является. Когда мы добавляем объекты браузера и документа, это уже клиентский JavaScript, но мне такое название не нравится и вот почему - все конструкции языка - простые операторы, циклы, условные операторы, функции, объекты и массивы, регулярные выражения - все это определено в базовом языке, клиентский же - это объекты документа, с которыми можно работать на JavaScript, но (иногда) можно и на VBScript, т.е. это уже находится вне языка, а язык (тот, который есть) имеет к этому доступ. Поэтому я под JavaScript понимаю именно базовый язык, а название JScript говорит не о том, что это "совсем другой язык, не имеющий ничего общего" а о войне терминов.

Последний раз редактировалось rgl, 11.03.2013 в 10:09.
Ответить с цитированием
  #45 (permalink)  
Старый 10.03.2013, 01:23
Аватар для rgl
rgl rgl вне форума
Профессор
Отправить личное сообщение для rgl Посмотреть профиль Найти все сообщения от rgl
 
Регистрация: 28.02.2011
Сообщений: 349

kosmonavtom, закралось подозрение, может скрипт отрабатывает так быстро, что вы просто не успеваете увидеть консоль? Тогда попробуйте вставить в конце своего скрипта что-то вроде:
WScript.Sleep(5000);
Ответить с цитированием
  #46 (permalink)  
Старый 10.03.2013, 10:14
Интересующийся
Отправить личное сообщение для kosmonavtom Посмотреть профиль Найти все сообщения от kosmonavtom
 
Регистрация: 07.03.2013
Сообщений: 27

rgl,
1) Ну понятно, спасибо за разъяснения. Просто обычно люди общаются на форуме и приходят к какому -то решению конструктивному. А тут что-то все ругаются вместо изучения.

2) нет на самом деле я пишу команду script в cmd? а у меня выдается, что мул "script" не является внутренней или внешней командой, исполняемой программой или пакетным файлом. Может что-то не так и не туда написал?

deff, речь о том, что я и не просил ни у кого "сигарет" нет возможности реально подсказать, так лучше вообще ничего не пишите в теме.
Ответить с цитированием
  #47 (permalink)  
Старый 10.03.2013, 11:58
Аватар для rgl
rgl rgl вне форума
Профессор
Отправить личное сообщение для rgl Посмотреть профиль Найти все сообщения от rgl
 
Регистрация: 28.02.2011
Сообщений: 349

Сообщение от kosmonavtom Посмотреть сообщение
rgl, 2) нет на самом деле я пишу команду script в cmd? а у меня выдается, что мул "script" не является внутренней или внешней командой, исполняемой программой или пакетным файлом. Может что-то не так и не туда написал?

Запустить скрипт можно несколькими способами. Не все, но существенные для обсуждаемого вопроса способы:

wscript filename.js
(буковка W вначале очень важна) в этом случае, если в скрипте есть команды Echo, они будут выводить информацию в модальное окно и заставлять кликать мышкой.

cscript filename.js
(буковка c в начале тоже необходима)
в этом случае, во-первых, команда echo будет выводить информацию на консоль, но кроме того появляется более продвинуная возможность писать в stdout и stderr а также читать из stdin

и наконец, можно просто набрать имя файла
test.js
в этом случае скрипт запустится одним из двух вышеупомянутых способов, каким именно - зависит от настроек операционки. Поменять данную настройку операционки проще всего с помощью команд
cscript //H:cscript
cscript //H:wscript

если набрать
cscript
без параметров, можно почитать коротенький хэлп

Последний раз редактировалось rgl, 10.03.2013 в 12:04.
Ответить с цитированием
  #48 (permalink)  
Старый 13.03.2013, 16:27
Интересующийся
Отправить личное сообщение для kosmonavtom Посмотреть профиль Найти все сообщения от kosmonavtom
 
Регистрация: 07.03.2013
Сообщений: 27

спасибо за подсказку. Все получилось вот теперь как это выглядит:

var wsh = new ActiveXObject("WScript.Shell");
// var cmd = wsh.Exec("cmd /c cscript //H:cscript");
var cmd = wsh.Exec("cmd /c cscript rekursya.js");

if (cmd.Status === 0) 
	{
	
// 1 Взято но не рабочее с сайта: [url]http://forum.oszone.net/nextnewesttothread-199998.html[/url]
// 2объект файловой системы
var fso = new ActiveXObject("Scripting.FileSystemObject"); 
// 4 путь к каталогу, откуда запускается скрипт
var path = WScript.ScriptFullName.substr(0, (WScript.ScriptFullName.length - WScript.ScriptName.length)),  
	p = fso.GetFolder(path);

var vsePapki = [];  //Массив записей путей ко всем подпапкам.
var nomerProverki=0; //Количество провереных и обработанных папок.
var nomerZapisi=1;  // Количество записанных папок в массив.

//12 Вызываем рекурсивную функцию
sFolders(path);
//14 Рекурсивная функция перебора всех папок и подпапок
	
	}


function sFolders(folder)//полный путь
{	
	// 17 доступ к объекту-папке
	var root = fso.GetFolder(folder);
	// 19 Коллекция подпапок
	var sfCount = root.SubFolders.Count;
	// 21 последовательность подпапок
	var seq = new Enumerator(root.SubFolders);
	// WScript.Echo("\nКоличество подпапок в корневой папке (" + root + ") = " + sfCount);
        // 24 если в текущей папке есть подпапки, то вызываем функцию для каждой подпапки рекурсивно.
	while (sfCount>0)
	{
		for(; !seq.atEnd(); seq.moveNext())
		{
			// WScript.Echo("Путь к подпапке = " + seq.item().path);
			vsePapki[nomerZapisi] = seq.item().path;
			nomerZapisi=nomerZapisi+1; // Количество записей в массиве адресов
		}
		nomerProverki=nomerProverki+1;
		
		WScript.Echo("Номер проверки = " + nomerProverki +  "          Номер записи = " + [nomerZapisi-1]);
		
		if (nomerProverki>=nomerZapisi)
		{
			sfCount = 0;
		}
		else
		{
			WScript.Echo("ПАПКА НА ПРОВЕРКУ = " + vsePapki[nomerProverki]);
			sfCount = sfCount - 1;
			sFolders(vsePapki[nomerProverki]);
		
		}
	
	}
 
}
Ответить с цитированием
  #49 (permalink)  
Старый 13.03.2013, 16:30
Интересующийся
Отправить личное сообщение для kosmonavtom Посмотреть профиль Найти все сообщения от kosmonavtom
 
Регистрация: 07.03.2013
Сообщений: 27

О! только у меня закралось подозрение, что скрипт выполняется два раза один раз просто при запуске, а второй раз при запуске через cmd. - ну ладно подумаю еще доработаю - самое главное он информацию выводит в cmd )))
Ответить с цитированием
  #50 (permalink)  
Старый 13.03.2013, 16:47
Аватар для rgl
rgl rgl вне форума
Профессор
Отправить личное сообщение для rgl Посмотреть профиль Найти все сообщения от rgl
 
Регистрация: 28.02.2011
Сообщений: 349

Сообщение от kosmonavtom Посмотреть сообщение
О! только у меня закралось подозрение, что скрипт выполняется два раза один раз просто при запуске, а второй раз при запуске через cmd. - ну ладно подумаю еще доработаю - самое главное он информацию выводит в cmd )))
Так зачем внутри скрипта (уже работающего) он запускает сам себя еще раз?
var cmd = wsh.Exec("cmd /c cscript rekursya.js");
Удивительно что только два раза, а не больше.

Запускайте скрипт сразу с консоли комадной cscript
C:\>cscript rekursya.js

либо же замените

var cmd = wsh.Exec("cmd /c cscript rekursya.js");

на
if( ! /cscript\.exe$/.test( WScript.FullName ) ) {  // проверить что запущено в консольном режиме
  wsh.Run("cmd /c cscript " + WScript.ScriptName ); // если нет, перезапустить в консоли
  WScript.Quit(0); // и завершить текущую инкарнацию (пусть работает перезапущенный в консоли)
}

Последний раз редактировалось rgl, 13.03.2013 в 17:10.
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
вывод значения функции через равный интервал cOAPerator Общие вопросы Javascript 43 31.12.2012 03:54
Скрипты отправка сообщений между пользователями, скрипт вывод текста на страницу.... Rapala Элементы интерфейса 2 12.01.2011 17:27
arguments вызвавшей функции mister_maxim Общие вопросы Javascript 4 12.10.2010 16:21
Динамический вывод текстовых сообщений Артём Тарасов Общие вопросы Javascript 4 19.02.2009 13:36