royt
Member | Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору igor_andreev Цитата: А у тебя спотыкается после 65000 вызовов? | нет, но спотыкается когда один скрипт вызывается не напрямую, а косвенно (опосредованно через другой скрипт) где-то на 5-ом уровне вложенности. Но я не уверен, что именно в рекурсии дело - просто хочу узнать на всякий случай. Elroir Цитата: То есть в WinXP SP2 - 1240, на других системах я видел 1267, 864. У себя можно легко проверить запустив код, который ты привел. | В том то и дело, что непонятно, от чего это зависит. По идее, может зависеть от: 1) наличия определенных ресурсов в ОС 2) ограничения ресурсов "внутри" cmd.exe (неизвестно ведь, что там внутри наворочено - может там для некоторых команд на все экземпляры есть что-то вроде общего буфера и из-за этого скажем в зависимости от длины строки, передаваемой в качестве параметра команде CALL, кол-во рекурсивных вызовов может быть ограничено 4000, а может и 256 на одной и той же системе). И еще вопрос: как определить - выполняется ли в текущем окне консоли (в котором выполняется батник) какая-либо другая программа (процесс), по имени файла этого процесса. Другими словами - запущен ли текущий выполняемый батник внутри того же окна, что и процесс, для которого указано имя его исполняемого файла. Ноги растут отсюда: хочется в батнике увеличивать кол-во строк до некоторого довольно большого значения (командой вида "mode con cols=2048") - но только в том случае, если батник не был запущен под FAR-ом непосредственно в его окне. Т.е. если в том же консольном окне, где работает батник, работает FAR - то кол-во строк не меняем. Нужно это для того, чтобы после отработки батника окно консоли сохраняло изначальное кол-во строк, да и колонок тоже. Вариант менять кол-во строк, а в конце батника возвращать обратно - неприемлем, по многим причинам (например, выполнение батника может быть прервано до достижения его конца). Надо иметь ввиду, что батник может быть запущен из под FAR-а командой Shift-Enter - тогда батник (cmd.exe) запускается в отдельном окне и соответсвенно кол-во строк увеличиваем. | Всего записей: 319 | Зарегистр. 18-08-2004 | Отправлено: 16:05 01-02-2007 | Исправлено: royt, 16:19 01-02-2007 |
|