Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Контроль работы приложения на уд. компе [D7]


Страницы:   1 2 3

novice ©   (2006-06-05 10:51:00) 

Даже не знаю, с какой стороны подойти к этому вопросу, может и постановка его изначально неверна... Суть такова: на n машинах в сети работает некая программа (моя). Юзеры очень не хотят, чтобы она работала и стараются ее убить (на 9х виндах - легко). Недопустить этого, на мой взгляд, невозможно, но проконтролировать хотелось бы. Как я это представляю: моя программа слушает некий порт. Со своей машины я на этот порт засылаю пакет (тут пока не понятно, считать ли приход на этот порт любого пакета успехом и тогда не заморачиваться его чтением, или же критичным установить содержание), программа на него отвечает (или нет). Если ответа нет, но пинг проходит = программу "убили".


novice   (2006-06-05 13:30:00) [41]

Alien1769 ©   (05.06.06 13:03)
Это более приемлимый вариант. У меня сейчас происходит так.
У нас в конторе одним из главных инструментов является 1С. Я сделал программку (стартер), которая:
1. запускает 1С
2. Проверяет наличие на лок. компе всех необходимых файлов (ехе, dll, ini). Если юзер их сподобился удалить - копирование с сервера на лок. комп.
3. Запуск программы с лок. компа.
В ярлыках на запуск 1С я подменил строку запуска на запуск стартера (тоже на сервере хранится, куда доступ у юзеров только на чтение). Т.о., запуск программы довольно незаметен для юзера, да и имя в процессах показывается как 1сv77.ехе (настоящий 1с - 1Сv7s.exe). Пока, вобщем, этого хватает, но возможность предотвращения все-таки остается. Вот и хотелось бы иметь контроль.
А насчет загрузки именно перед ОС - не годится, т.к.:
1. На лок. компе необходимые файлы могут осутствовать (напр., удалены хитросделанным юзером в безопасном режиме)
2. Сервер, с которого эти файлы можно скопировать - не доступен (сервер - это только название, обычный комп 2к с 1С и сиквелом, который на ночь выключают, да и свитчи тоже отключают на ночь).


Alien1769   (2006-06-05 13:03:00) [42]


> 1. Недопущение прерывания пользователем
> 2. Контроль (периодический) работы программы.


Програмку желательно разнести на 2 уровни.
Первую загружать резидентно до загрузки Win9x.
Вторая основная - контроль за нужными дейвиями.
Если вторую уничтожат, резидент через некоторое время запустит второй блок.


novice   (2006-06-05 13:02:00) [43]


> Может быть стоит подумать над тем, чтобы уйти от Win9k (до
> некоторой степени "дремучесть")


Невозможно по определению. Что, кроме 98, можно воткнуть на Cel-600? А на Cel-333? При том, что со своей работой такое железо справляется, и, как результат, замене не подлежит. На железе, которое может, давно уже 2к стоит.


Alarm   (2006-06-05 12:55:00) [44]

стараются ее убить (на 9х виндах - легко)

Может быть стоит подумать над тем, чтобы уйти от Win9k (до некоторой степени "дремучесть"), а под Win2k, WinXP, довольно просто (многочисленными твикерами) ограничить юзеров тем, что считаешь необходимым (разумеется, если ты админ)


novice   (2006-06-05 12:47:00) [45]

На мой взгляд, проблема здесь двойная:
1. Недопущение прерывания пользователем
2. Контроль (периодический) работы программы.
Если успешно выполнен п.1, зачем, казалось бы п.2?
Программу надо запустить. Сделать это можно несколькими способами - прописать в реестр, поместить в папку автозагрузки, по шедулеру и т.д.
Но, даже если юзер не может ничего сделать с процессом,  в таких системах, как вин9х, ему ничто не помешает выбросить программу из автозагрузки и перезагрузиться. Так что мой вопрос актуальности не теряет.


Сергей М.   (2006-06-05 12:16:00) [46]

Копай в сторону глоб.хуков.
Сеть здесь вряд ли нужна.


novice   (2006-06-05 11:59:00) [47]

Dmitrij_K
Посмотрю

Сергей М.
Да


Сергей М.   (2006-06-05 11:42:00) [48]


> novice   (05.06.06 11:26) [2]


Если я правильно понял, подконтрольное приложение призвано следить за несанкц. запуском юзером тех или иных программ ?


Dmitrij_K   (2006-06-05 11:42:00) [49]

Попробуй это http://madshi.netmadCodeHook
по-моему в 9x но работает


novice   (2006-06-05 11:36:00) [50]

Не представляю, как это можно сделать для 9х винды.


Dmitrij_K   (2006-06-05 11:30:00) [51]

Сделай так чтобы программу нельзя было убить извесными способами


novice   (2006-06-05 11:26:00) [52]

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


Сергей М.   (2006-06-05 11:18:00) [53]


> проконтролировать хотелось бы


Предположим, ты тем или иным образом узнал о факте принудительного терминирования юзером процесса твоего подконтрольного приложения.
Что дальше ?


Страницы:   1 2 3

Наверх

Титульная страница Поиск, карта сайта Написать письмо