На главную страницу ЗАО Софткей
 Главная   Новости   Статьи   Пресс-релизы   Рассылки 
 
MS O365 test

Самостоятельный компьютер

28.01.2003 / Программы / Андрей Кулабухов

Не только сервера могут работать самостоятельноИногда хочется сделать компьютер более самостоятельным. А то ведь как бывает? В каком-нибудь банке обязанности так называемого "оператора ПК" могут быть самыми разнообразными. Например, часто полученные по электронной почте файлы с какими-то данными нужно открыть в одной программе, обработать их, сохранить результат и снова отослать его по почте. Или рассортировать пришедшую корреспонденцию - какие-то документы распечатать, какие-то скопировать в нужные каталоги. И программы при этом могут использоваться не такие уж и современные. К примеру, устаревшая система электронной почты, которой все еще пользуются по не зависящим от пользователя причинам. И приходят по этой почте письма, которые надо распаковывать специальной программой-распаковщиком. Затем, ориентируясь на имена файлов, нужно "раскидывать" разные файлы по разным каталогам. Добавьте сюда какие-нибудь банковские, бухгалтерские или другие специализированные программы, написанные "местными" программистами, которыми (программами, разумеется) приходится пользоваться ежедневно. Каждый рабочий день оператора состоит из бесконечного набора простых по сути операций, которые, тем не менее, требуют внимательности и аккуратности. А человеку, как известно, свойственно ошибаться, тем более, если он устал и ему скучно. Особенно это касается различных файловых операций - рядовому пользователю, обученному работать с конкретными программами, очень легко "наломать дров" в файловом менеджере. Тут невольно задумаешься, нельзя ли как-то автоматизировать хотя бы часть этих действий?

Control AgentОдно из правил системного администратора предписывает не кидаться сразу же с головой в написание своей идеальной программы, а для начала попробовать поискать подходящую программу, которая бы помогла управлять другими приложениями. В Windows NT есть встроенный "планировщик" для запуска различных приложений в определенное время. Это средство для аскетов, но вот в Win9x даже аскетам ничего не светит - в самой системе таких средств не предусмотрено. Но есть специально разработанные для таких целей программы. Называют их обычно "шедулерами" (от англ. schedule - план, расписание) или "планировщиками". Вот, например, "ветеран" отечественного рынка - Control Agent. Если бы продукт до сих пор развивался, то он, наверное, был бы и сейчас в числе лидеров. Но разработка прервалась в 1997 году, и, видимо, поэтому во всех архивах "торчат" ссылки на несуществующую страничку (в конце статьи приведена рабочая ссылка на один из любительских архивов). Control Agent - программа небольшая, но мощная. Все настройки (когда, с какой периодичностью и что, собственно, нужно сделать) хранятся в обычном текстовом файле. Там же хранятся и настройки самой программы. То есть можно не беспокоиться об их сохранности перед переустановкой системы - достаточно просто сохранить этот файл. Это также позволит вам без проблем переносить Control Agent с машины на машину. Редактировать этот файл вы можете любым удобным для вас редактором, а можете воспользоваться встроенным редактором и даже инструментом для визуального конструирования событий.

Control Agent - Редактор

С помощью Control Agent можно проверять наличие на диске какого-то файла, его размер или время создания и, в зависимости от результата этой проверки, производить какие-то действия. Ваш компьютер сможет самостоятельно запускать и завершать программы в определенное время, выдавать различные сообщения пользователю (например, он напомнит вам заглянуть в кассу в день зарплаты). Еще можно автоматически перезагружать и выключать компьютер, помещать программы в системный трей или совсем убирать их с экрана, нажимать на кнопки в окне программы, вносить значения в поля ввода. Проверять можно также наличие конкретного окна на экране и код возврата выполнившейся программы. Комбинируя возможности Control Agent и набора командных файлов, можно создать достаточно сложную автономную систему, которая будет, к примеру, периодически забирать почту, распаковывать архивы, раскладывать файлы по нужным папкам, следить за работой других программ и, в случае их сбоя, "бить тревогу". При этом, конечно же, используемые программы должны позволять запускать их из командной строки с параметрами, иначе придется повозиться, детально изучая язык, на котором пишутся сценарии. А язык этот достаточно мощный. Например, такая строчка заставит программу проверять наличие некоего файла, удалять его и запускать другую программу или командный файл. Можно даже делать это периодически, скажем, каждые 10 минут и, к тому же, в промежутке с 10 утра до 5 вечера:

Period 10:00 17:00 Repeat 00:10 FindFile "C:\Bank\account.txt" DeleteFile "C:\Bank\account.txt" Exec "C:\Utils\start_acc.cmd"

А вот так можно каждые 30 секунд проверять, не зависла ли какая-нибудь постоянно работающая программа или даже сервер:

Period 10:00 17:00 Repeat 30 (FileTime "C:\Bank\protocol.log" >= 0:05 Box "Караул! Банковская система зависла!"

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

nnCronЕсли возможностей Control Agent вам окажется недостаточно (все-таки написан он достаточно давно), тогда обратите внимание на nnCron. Это более современный и, как следствие, более мощный и "продвинутый" продукт. Он уверенно себя чувствует на всем семействе Windows (95/98/ME/NT/2000/XP) и не так требователен к ресурсам; у него гораздо более обширный набор функций, а частый выход новых версий гарантирует, что все пожелания пользователей будут учтены. Есть поддержка русского языка, а жителям стран бывшего СССР его можно бесплатно зарегистрировать для некоммерческого использования. Наряду со всеми теми функциями, что есть у Control Agent, nnCron умеет работать с буфером обмена, файлами и реестром, синхронизировать системное время, отслеживать окна, процессы, движения мыши, время простоя, появление диска в дисководе или приводе CD-ROM. Он может запускать произвольные программы как сервисы, менять размер, местоположение и даже "прозрачность" окон, выводить на экран и в лог-файл различные сообщения. Любителям острых ощущений nnCron позволит присваивать процессам указанный приоритет и прерывать работу любых запущенных процессов. Можно вдобавок заставить его следить за количеством свободного места на диске.

nnCron - Новая задача
Создание новой задачи в nnCron
nnCron может быть запущен в качестве службы (сервиса) или как обычное приложение. И поскольку он призван выполнять важные и даже критические для системы задачи и управлять другими приложениями, в нем предусмотрено специальное средство для обеспечения повышенной "живучести" (так называемый "непотопляемый режим"), проявлением которого является способность автоматически перезапускаться после фатальных ошибок. То есть он сможет вполне успешно работать даже на нестабильной системе или там, где используются ненадежные программы.

nnCron - действия

Сценарии можно создавать как с помощью удобного графического интерфейса, так и редактируя файлы сценариев вручную. nnCron понимает cron-формат, который, как и название программы, пришел из мира Unix. Автор, Николай Немцев, лишь добавил к нему две скромные буквы "n". За полным описанием почти безграничных возможностей этого "шедулера" можно обратиться к справочному разделу на сайте nnCron, где есть даже так называемый "Вводный курс для начинающих".

nnCron - условия

А теперь давайте помечтаем. Представьте себе изумление вашего начальника, который в один прекрасный день вместо взмыленного оператора, работающего за компьютером, увидит приютившийся в недрах вашей серверной комнаты одинокий самостоятельный компьютер, который целый день (а может и круглосуточно) может выполнять такие скучные и, в то же время, нужные операции. Удачной вам автоматизации.

P.S. Автор выражает благодарность Валерию Кондакову, из статьи которого он узнал о существовании nnCron.


Ссылки по теме:

Автор статьи: Андрей Кулабухов


Рубрики статей
Все статьи
Аналитика
Программы
Игры
Интернет
Авторские права
Интервью
События в мире ПО
Рассылки
Новости мира ПО
Статьи: Мир ПО
Статьи: Программы
Статьи: Игры
Архив выпусков
  «   Январь 2018   »  
Пн Вт Ср Чт Пт Сб Вс
1234567
891011121314
15161718192021
22232425262728
293031    
Поиск в архиве

Логин / пароль:
запомнить




Наши партнеры:

 САПР и графика



Написать редактору  | RSSЭкспорт новостей и обзоров


Rambler's
Top100 Rambler's Top100

Разработка компании «Битрикс»
Разработано
«Битрикс»


Copyright © 2001-2018 ЗАО «Софткей»