Имя пользователя:
Пароль:
 

Показать сообщение отдельно

Старожил


Сообщения: 415
Благодарности: 257

Профиль | Отправить PM | Цитировать


Enforcer7, насчет использования только встроенных средств - скажите, а в этом самом батнике что-то обрабатывается в цикле? Т.е. он работает непрерывно, и нужно не прерывая его работы, ожидать нажатия enter? Если да, то вот такой вот демонстрационный образец:


Код: Выделить весь код
@Echo Off
If Exist "%temp%\stop.flag" Del "%temp%\stop.flag"

:: Запуск второй копии внутри первой
:: (для организации примитивного управления вторым запущенным процессом)
If "%SelfStart%"=="" (
Set SelfStart=yes
Start /B "" "%~nx0"
GoTo ControlThread
)

:: Именно тут крутится основной скрипт
:WorkThread
:: Ерунда со счетчиком в виде имитации полезной нагрузки
Cls
Set /A i+=1
Echo  [%i%]
Ping -n 2 127.0.0.1>nul
:: А вот тут проверка на наличие файла, дающего сигнал о выходе
:: Естественно, что вместо выхода можно совершать любое нужное действие, главное -
:: время от времени опрашивать наличие файла, что совсем не блокирует работу
:: основного скрипта ожиданием ввода от пользователя
If Exist "%temp%\stop.flag" Exit
GoTo WorkThread


:: Создание файла завершения работы по нажатию Enter
:ControlThread
Set Input=
Set /P Input=
If "%Input%"=="" (Echo.>"%temp%\stop.flag") Else (GoTo ControlThread)
Exit

Отправлено: 20:56, 28-04-2012 | #10