Выкладываю еще одну свою программу, вдруг пригодится кому. Программа называется
Check Gates
как нетрудно догадаться. Суть ее, опять же, исходит из названия.
История создания и назначение программы:
Тут всё очень просто — на работе у меня, в числе прочих, есть задача следить за работоспособностью всяких устройств. У некоторых из них, в силу интерьерного расположения, индикаторы состояния находятся не в поле моего зрения. Поэтому визуальный контроль сопряжен со скачками по стульям, что не есть хорошо. Простейший способ решить проблему -пинговать устройства. Ну не вручную же это делать. Надо написать утилиту, которая это будет делать за тебя и сообщать тебе же результаты.
Конечно, по сети полно подобных утилит. Но. Еще одна моя рабочая забота — безопасность сети. А кто знает, что в бесплатных утилитах в коде предусмотрено? Бэкдуры и прочие дуры допускать на работу нельзя. Но не дезасемблить же их. А своя тула будет делать только то, что надо и ничего лишнего и скрытого.
То есть, коротко, назначение программы Check Gates — пинговать заданный набор IP-адресов и доменов по заданному периоду времени, а так же оповещение о статусе пинга.
Про программу:
При первом запуске программа выглядит так:
Таймер пингования остановлен, список адресов пуст.
Первым делом надо ввести адреса, которые мы хотим пинговать. Для некоторого удобства есть кнопки «3» и «2». Это заполнения шаблона IP-адреса наиболее используемыми значениями. Нажав на кнопку «3» получим:
Осталось только ввести последнее значение адреса и нажать «Add IP». Если какое-то поле из обязательных не будет заполнено, программа «подсветит» его:
Если все поля корректно заполнены, то IP-адрес появится в списке:
Галка перед адресом обозначает выбор этого адреса для пингования. Если галку снять, то адрес не будет пинговаться.
Если необходимо сохранить список добавленных адресов, то надо нажать кнопку «Save».
Обратим внимание на опцию, находящуюся выше кнопки «Save». Это тип уведомления о проблемах с пингованием. Если галка стоит, то уведомления будут появляться всплывающей подсказкой над иконкой программы, находящейся в системном трее. Если она снята, то форма программы будет выскакивать на экран.
Кнопка «Ping» отвечает за разовое пингование тех адресов в списке, которые выбраны.
Результаты этого пингования сразу отображаются (и записываются) в логе.
Как уже говорилось, можно пинговать и сайты, например:
Для этого есть поле в котором вводится доменное имя и кнопка добавления в список «Add Host». После добавления сайта еще раз сделаем ручное пингование:
Запуск автоматического пингования начинается установки таймера — выставляется временной период, по истечении которого будет осуществлено пингование списка (опять-таки, выбранных в нем адресов):
После чего нажатием кнопки «START» запускается таймер:
Легко видеть, что кнопка «START» превратилась в кнопку «STOP». Их смысл, думаю понятен.
Статусы пинга я переводить не стал, ибо лень. Итак понятно, что «Success» — это хорошо 🙂 Если же что-то не хорошо, то статус будет, понятно, другим:
Обратим внимание на столбец под названием «Error event first time». Сюда будет записано время, когда первый раз был сбой пинга по данному адресу. Чтобы понимать (придя с утра на работу, например) сколько времени уже устройство «лежит», если пинг так и не восстановился.
После того, как информация станет не нужна, ее можно удалить нажав кнопку «Clear»:
Если какой-то адрес надо удалить из списка пингования совсем, то можно воспользоваться кнопкой «Delete», которая станет видимой после выделения адреса в списке:
Разумеется, будет уточняющий вопрос:
Напоминаю, для сохранения изменения списка после удаления или добавления адреса необходимо нажимать кнопку «Save». Таким образом можно добавлять временные адреса, которые «самоудалятся» при перезапуске (любым способом) программы.
Кнопка «Hide» — скрыть форму программы с экрана.
Как видно из скриншотов, общий статус пингования и статусы отдельных адресов представлены значками. Их расцветка говорит сама за себя. На всякий случай я заложил еще один цвет флажков — желтый. Он возникает в случае времени пинга более 500 мс. Что для локальной сети, например, повод проверить провода и разъемы 🙂
Про безопасность сети:
Как я уже говорил выше, я написал эту программу, так как не доверяю бесплатным программам, выложенным в интернете. Чем же тогда я отличаюсь от таких людей? Ответ простой — я выкладываю исходник программы. Для чего:
а) каждый может посмотреть код прежде чем скомпилирует эту программу для использования;
б) начинающий программист может использовать исходник как пример программы пингования и прочих элементов;
в) никаких копирайтов — называйте как хотите, модернизируйте как хотите , используйте в своих проектах и т.д.
А можете скачать сразу готовую программу, если Вы не такой параноик, как я на работе.
Единственно, поскольку я не программист с точки зрения профессии, то кодю я на VB 🙂
Файлы и системные требования:
Что-то мне подсказывает, что на виндусах начиная с висты, при всех установленных апдейтах программа запустится без проблем. Она, в сущности, примитивная, сделанная из стандартных элементов МС. Тем не менее, скажу, что:
1) проект создан на VS 2010;
2) компилировалась на опции «.Net Framework 4 Client Profile». Впрочем, это можно изменить в исходнике на любой доступный фрэймворк.
Готовый Check Gates скачать.
Исходник Check Gates скачать.
Спасибо за внимание! 🙂