nicc Опубликовано 5 августа, 2003 Жалоба Поделиться Опубликовано 5 августа, 2003 Мне нужно изменить дату на компе перед запуском программы. Так вот как ее изменить в в bat-файле я допер А как ее вернуть обратно после завершения работы программы ? Возможно ли в батнике запомнить ее перед изменением а потом подставить ? Ссылка на комментарий Поделиться на другие сайты Поделиться
SHARKenstein Опубликовано 5 августа, 2003 Жалоба Поделиться Опубликовано 5 августа, 2003 (изменено) Попробуй прикреплённую прогу. Я ей пользовался - помогает для случаев, типа твоего, отменно. Как я понял, тебе надо обмануть какую-то программу относительно того, какое сейчас время. Так вот, эта прога как раз для этого. Да, прочитай мануал, это поможет разобраться в функиях этой программы и узнать очень полезные её возможности. ЗЫ. Обязательно не забудь рассказать о результатах. ЗЗЫ. Прога очень маленькая (пару десятков килобайт) и не требует установки, все данные хранит в реестре. DateCorr.zip DateCorr.zip Изменено 5 августа, 2003 пользователем SHARKenstein Ссылка на комментарий Поделиться на другие сайты Поделиться
Тролль Опубликовано 5 августа, 2003 Жалоба Поделиться Опубликовано 5 августа, 2003 (изменено) Вообще-то нельзя, но если очень хочется, то, с использованием некоторых ухищрений, можно. Проблема в том, что команда DATE выдает значение даты в середине сопроводительного комментария. Эту строку можно, например, записать в файл командой перенаправления вывода в файл > и извлекать обратно командой перенаправления ввода из файла <. Однако для обратной подстановки строки в команду DATE надо избавиться от комментария в строке. Это можно сделать использованием в bat-файле вызова стандартных DOS-овских утилит, входящих в состав DOS или Windows, или написать короткую ассемблерную программу. Если заблаговременно выделить из строки запись даты, то поскольку в этой записи уже не будет пробелов, можно использовать еще один способ запоминания: в переменной окружения командой SET имя=значение , потом эту строку можно взять из переменной обратно использованием имени этой переменной в окружении знаков %. А вообще SHARKenstein прав: если это не интерес к самой задаче, а просто нужен результат, то для этого есть готовые программы. Изменено 5 августа, 2003 пользователем Тролль Ссылка на комментарий Поделиться на другие сайты Поделиться
SHARKenstein Опубликовано 5 августа, 2003 Жалоба Поделиться Опубликовано 5 августа, 2003 Можно использовать в bat-файле вызов стандартных DOS-овских утилит, входящих в состав DOS или Windows, или написать короткую ассемблерную программу Эта программа уже написана (см выше) хотя и не на асме, не требует создания bat файлов (разве что lnk). Это, как говорится, чисто виндовая утилитка. Ссылка на комментарий Поделиться на другие сайты Поделиться
Тролль Опубликовано 5 августа, 2003 Жалоба Поделиться Опубликовано 5 августа, 2003 SHARKenstein Согласен, просто когда-то у меня встала та же проблема и мне было интересно ее решить с использованием возможностей командных файлов DOS. Это получилось, но bat-файл вышел довольно длинным. Ссылка на комментарий Поделиться на другие сайты Поделиться
SHARKenstein Опубликовано 5 августа, 2003 Жалоба Поделиться Опубликовано 5 августа, 2003 Тролль & ALL, кто закачал прогу, расскажите как она вам? Т.к. автором этой проги является ваш покорный слуга (т.е. я), то хотелось бы услышать отзывы об ней. Не сочтите это пожелание за оффтоп, но я думаю, что с этой программой, проблемы у автора топика решатся. ЗЫ. Может в зацени кинуть? Ссылка на комментарий Поделиться на другие сайты Поделиться
nicc Опубликовано 6 августа, 2003 Автор Жалоба Поделиться Опубликовано 6 августа, 2003 Мне кажется, кнопка "Вернуть былые времена" - лишняя. Лишнее движение... Вся фишка как раз в схеме: запустил прграмму - время изменилось. Вышел - время восстановилось. А то твою схему по сути может выполнить три строки в батнике: data 05,08,2003 (например) программа.exe data В данном случае остается только взглянуть на часы, набить дату и окно автоматически закрывается. ЗЫ. Кстати в твоем варианте еще и закрыть окно надо. Это я для подробности.:) как докучаемый потребитель :))) Ссылка на комментарий Поделиться на другие сайты Поделиться
Тролль Опубликовано 6 августа, 2003 Жалоба Поделиться Опубликовано 6 августа, 2003 (изменено) SHARKenstein Попробовал твою программу. Работает. Выглядит неплохо. Но ты меня простишь, надеюсь, если скажу, что программа для энтузиаста. Много ручной работы, выпадающие списки программ... Чисто программно: у меня стоят на Windows "крупные шрифты", так они слегка не лезут в окошки. По инструкции к программе: я, конечно, как и всякий пользователь, благодарен за высокую оценку моих способностей, но все же лучше было их недооценить. Выражения типа "после того, как время нужно вернуть назад, найдите кнопку ... (обычно она прячется за другие окна)..." - тяжеловато. Или спотыкаешься на таком: "главная полезность - автоматизация, то есть надо будет нажать на кнопку..." Впрочем, понимаю, что еще не совсем доделано, так что это замечания на будущее. Вообще-то, на мой взгляд, лучше для каждой шароварной программы запускать свой экземпляр обманывающей программы. А тут целый центр управления запуском шароварных программ. P.S. Кстати, обычно вовсе ни к чему ждать завершения шароварной программы. Как правило, она считывает дату после запуска и больше к этому вопросу не возвращается. А если держать дату сдвинутой на все время работы этой программы, это мешает работе с другими программами. Я использую пакетный файл, написанный по описанному мной раньше способу, но приводить его текст без описания его настройки для работы с конкретными программами нет смысла, а так как он делался для себя, то инструкций к нему я не писал. nicc У SHARKenstein была, похоже, идея сделать одну программу для обслуживания всякого и разного параллельно работающего shareware. Так что это намного сложнее, чем простенькая схема в батнике. По твоему примеру пакетного файла: такой файл не будет ждать окончания работы шароварной программы. Если быстро вводить прежнюю дату, шароварная программа может даже не заметить, что дату меняли. Надо в строках пакетного файла использовать команды START /W (тонкости смотри в Система - Настройка и оптимизация - Запуск программ, Последовательно) P.S. Некоторый оффтопик, если брать по формулировке темы, но, видимо, то, что нужно: Антишароварщик 1.1 http://nikolay-ivanov.narod.ru/niutilites/ Beyondo 2.0.6 http://bluefive.pair.com/Beyondo.zip Изменено 6 августа, 2003 пользователем Тролль Ссылка на комментарий Поделиться на другие сайты Поделиться
Тимка Опубликовано 9 августа, 2003 Жалоба Поделиться Опубликовано 9 августа, 2003 в батнике используй start... она ждет когда предыдущая прога закончит свою работу Ссылка на комментарий Поделиться на другие сайты Поделиться
SHARKenstein Опубликовано 10 августа, 2003 Жалоба Поделиться Опубликовано 10 августа, 2003 Тролль По моей проге скажу так: я её клепал для себя и нереканий у меня к ней нету, если надо, то интерфейс сменить дело не долгое, можно вставить возврат даты на место после того, как шароварная прога закроется, можно, чтоб через пару минут закрылась, можно ... Просто её до тебя, никто больше не заценивал, и после того, как она была создана в том виде, что ты её видел, я её просто забросил. Если будут заказы, то могу и переделать Ссылка на комментарий Поделиться на другие сайты Поделиться
Рекомендуемые сообщения