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

Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » Скриптовые языки администрирования Windows » CMD/BAT - изменение программы waiter.exe

Ответить
Настройки темы
CMD/BAT - изменение программы waiter.exe

Новый участник


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

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


Вложения
Тип файла: zip waiter.zip
(9.1 Kb, 19 просмотров)
Есть очень полезная программка, которую я использую в батнике, называется WAITER.exe. Она делает паузу в батнике, отсчитывает указанное количество секунд и завершается, выполнение батника продолжается. Причем тип завершение влияет на errorlevel. Если дождаться завершения отсчета или нажать ctrl+a, errorlevel 0, если нажать любую другую клавишу, то errorlevel 1. Возможно ли каким-то образом влезть в тело exe'шника и поменять так, чтобы errorlevel был 0 при завершении отсчета и при нажатии любой клавиши, а нажатие ctrl+a давало errorlevel 1?

Вот выдержка из описания, идущего с прогой:

DESCRIPTION
Waiter counts down for a default of five seconds, then terminates with ERRORLEVEL 0. If the user presses a key during countdown, waiter terminates with ERRORLEVEL 1.

A hidden feature allows the user to terminate with ERRORLEVEL 0 by pressing ctrl-A. This allows the impatient user to override the wait, but take the default action.
PARAMETERS

waiter [-q -s seconds] msgline1 msgline2....

заранее благодарен.

Отправлено: 02:47, 23-01-2011

 

Ветеран


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

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


Проще написать заново этот waiter
А в чём состоит более общая задача?

Отправлено: 13:34, 23-01-2011 | #2



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

Если же вы забыли свой пароль на форуме, то воспользуйтесь данной ссылкой для восстановления пароля.


Новый участник


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

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


задача довольно-таки простая - запущенная в теле батника с параметром секунд, программа отсчитывает указанное число секунд, после чего завершается и выполнение батника продолжается. Но самая главная для меня функция - возможность завершить отсчет до истечения таймера со следующими условиями:
нажатие какого-то сочетания клавиш (ctrl+a например) результирует в errorlevel 1, а нажатие любой клавиши - errorlevel 0. Окончание отсчета так же результирует в errorlevel 0.

подскажи, чем можно текст программы посмотреть, возможно, сам что-то смогу, да и на будущее пригодится.

Был бы очень признателен за помощь!

Отправлено: 15:02, 23-01-2011 | #3


Googler


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

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


Цитата TheFox:
нажатие какого-то сочетания клавиш (ctrl+a например) результирует в errorlevel 1, а нажатие любой клавиши - errorlevel 0. Окончание отсчета так же результирует в errorlevel 0 »
если вывод на консоль оставшегося времени не важен (в постановке задачи отсутствует), то можно преобразовать исходную таблицу истинности одной строчкой батника (выделено цветом):
Код: Выделить весь код
@echo off
(waiter -s 10 2>nul||echo #)|findstr/irc:"Waiting: *0" /c:"#">nul

echo ERRORLEVEL:%ERRORLEVEL%
pause>nul
Это сообщение посчитали полезным следующие участники:

Отправлено: 06:52, 24-01-2011 | #4


Новый участник


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

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


выполнение такого кода во всех вариантах (дождаться окончания счетчика, нажатия эникея, сочетание контрол+а) дает результат errorlevel 1. В чем смысл не понял

Отправлено: 12:17, 27-01-2011 | #5


Googler


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

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


TheFox, у меня на XP вроде нормально работает... а смысл - уберите в конце ">nul", тогда перед ERRORLEVEL:0 должно быть выведено для окончания счетчика "Waiting: 0", для эникея что-то типа "# iting: 9", для Ctrl+A перед ERRORLEVEL:1 должно быть пусто

Отправлено: 14:48, 27-01-2011 | #6


Новый участник


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

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


не очень пока въехал, но попробую поиграться, спасибо...

Отправлено: 19:45, 27-01-2011 | #7


Новый участник


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

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


Вложения
Тип файла: zip WAITER_ready!.zip
(7.7 Kb, 18 просмотров)

На другом форуме помогли с редактированием файла. Так что выкладываю, может кому пригодится.
errorlevel'ы такие:
ctrl+a - 1
anykey - 0
wait - 0

с findstr пока не попробовал, времени нет. Но обязательно попробую и отпишусь...

Отправлено: 18:09, 30-01-2011 | #8



Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » Скриптовые языки администрирования Windows » CMD/BAT - изменение программы waiter.exe

Участник сейчас на форуме Участник сейчас на форуме Участник вне форума Участник вне форума Автор темы Автор темы Шапка темы Сообщение прикреплено

Похожие темы
Название темы Автор Информация о форуме Ответов Последнее сообщение
Ресурсы - Изменение оформления программы установки Windows 7 Smarty Оформление Windows 11/ 10 / 8 / 7 / Vista 314 21-11-2024 19:55
Мультимедиа - Программы для конвертирования appref-ms в exe qawa123 Программное обеспечение Windows 2 15-12-2010 16:28
Прочие - [решено] Изменение системного времени для программы wolfxr Программное обеспечение Windows 1 01-01-2010 17:04
Разное - Программы для конвертирования EXE в MSI Artem Nikitin Программное обеспечение Windows 2 31-10-2008 11:23
Изменение скрипта установки программы biosss Автоматическая установка приложений 3 12-04-2006 11:49




 
Переход