smirnvlad
Full Member | Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Код: @echo off REM строки начинающиеся с REM являются комментариями :) REM отключили вывод команд на экран :s REM метка s ping 127.0.0.1 -n 2 -w 1000 1>nul 2>nul REM в винде нет стандартной команды задержки, поэтому для задержки используется ping REM пингуем локальный адрес дважды с максимальным временем ожидания 1000 мс REM задержка 1с chcp 1251 1>nul REM переключили кодировку на windows-1251 REM это нужно для нахождения окна пасьянса по его заголовку REM на случай если будет другой процесс с именем sol.exe tasklist /FI "IMAGENAME eq sol.exe" /FI "WINDOWTITLE eq Косынка" 2>nul | find /I "sol.exe" 1>nul && ( REM tasklist выводит список запущенных приложений REM /FI - фильтр по имени (IMAGENAME) равном (eq) sol.exe и заголовку окна (WINDOWTITLE) REM поскольку tasklist не возвращает код ошибки если ничего не найдено, то REM передаем его вывод на вход програамы find, которая ищет, без учета регистра (/I), строчку содержащую sol.exe REM 2>nul запрещает выводить сообщение об ошибке (если sol не найден в процессах) на экран REM 1>nul запрещает выводить эту строчку на экран REM && выполняет следующую команду если предыдущая завершилась без ошибки REM (если find нашел sol.exe в выводе команды tasklist) taskkill /FI "IMAGENAME eq sol.exe" /FI "WINDOWTITLE eq Косынка" 1>nul 2>nul REM taskkill завершает работу приложений подходящих под условие echo ВЫ наверно хотели запустить блокнот >%temp%\solnotepad.txt REM echo выводит сообщение на экран, мы же его отправляем (>) его в файл %temp%\solnotepad.txt REM %temp% приобработки меняется на значение переменной temp REM которая указывает на каталог для временных файлов start "" notepad %temp%\solnotepad.txt REM запускаем блокнот передаем ему имя нашего файла, он его открывает chcp 866 1>nul REM в консоли кодировка по умолчанию cp866 REM изменяем кодировку для вывода сообщения на экран REM 1>nul сообщение о смене кодировки echo.Косынка закрыта и блокнот запущен в %date% %time% REM выводим сообщение на экран REM %date% %time% заменяются на текущие дату и время ) REM конец группы команд goto:s REM переходим к метке s и всё повторяется сначала |
| Всего записей: 417 | Зарегистр. 31-03-2009 | Отправлено: 19:17 24-11-2010 | Исправлено: smirnvlad, 19:18 24-11-2010 |
|