|
|
Регистрация | << Правила форума >> | FAQ | Пользователи | Календарь | Поиск | Сообщения за сегодня | Все разделы прочитаны |
|
Опции темы | Поиск в этой теме | Опции просмотра |
#1
|
|||
|
|||
Программа контроля доступа
Пишу диплом. Не могу найти исходники или инфу о таких программах. Загвозка в следующем, как сделать что бы процес нельзя было выгружить как процес каспера. Тоесть через диспечер задач выдавал что мол нельзя выгрузить. И самое главное загружался при старте системы, чем раньше тем лучше. Накачал исходников, но толку мало
|
#2
|
|||
|
|||
Сделай сервис.
При попытке его остановить - говори, что нельзя, а можно останавливать только если, например, не существует пользовательскоо десктопа (что бы при шатдауне винды она не орала про неостанавливаемый процесс). |
#3
|
|||
|
|||
Cервис это конечно хорошо, но незнаю как его сделать. Самое главное что бы он еще грузился раньше есплорера. Можно инфу или исходничек какой нибудь?
Последний раз редактировалось новичёк, 23.03.2009 в 10:57. |
#4
|
|||
|
|||
да, думаю тут мне не помогут. Поиду искать другой форум
|
#5
|
|||
|
|||
Пример можно посмотреть в демках самой дельфи.
Сервис - это такой специальный тип проекта. Создается через File -> New -> Other. Сервис, обычно, действительно грузится до всего клиентского, т.е. даже до логина пользака. Хотя в последних версиях этот процесс может идти и параллельно. Только имей в виду, что начиная с Vista и Server 2008 сервис не может иметь GUI. Если нужен GUI, то надо делать отдельную прогрммку, которая общается с сервисом. |
#6
|
|||
|
|||
Спасибо, буду искать в дельфи. Я надеялся найти развернутую литературу, но с этим глухо.
|
#7
|
||||
|
||||
есть такое понятие hook - поищи, я развернуто писать не буду. Смысл в том что ты сожешь отловить все события которые происходят в системе.
(кстати ты можешь перехватить событие и не передавать управление дальше, то есть на самом то деле - запретить его обработку другими приложениями) Сервис.. Он только грузиться будет с системой, обычный сервис осановить несложно. Ну и естественно почитай про "права". Не имея системных прав - мало чего сделаешь. Нет повести печальнее на свете, чем повесть о заклиневшем Resete. |
#8
|
|||
|
|||
попробуй инжект в другой процесс. и в диспетчере не видно и выгрузить не получиться (если инжектится в системный)
|
#9
|
|||
|
|||
В чужой проект не надо, да и гемора много. Посмотрел демку сервиса ничего не понял. Сложное это дело. Про хуки знаю. Уже думаю своими силами не справлюсь придется заказать кому нибуть, но зделаю еще пару рывков.
|
#10
|
|||
|
|||
Сервис - это очень просто.
Кратко - надо создать проект соответсвующего типа (File -> New -> Over -> Service Application - кажется так). В основной форме реализуешь обработку нужных тебе событий (типа старт сервиса, его остановка и т.д.). В событии старта запускаешь свой поток, который и будет делать основную работу. Все. Остановить какой-либо сервис если он сделан правильно - не так-то и просто. Естественно, его надо спрятать от менеджера процессов. |
#11
|
|||
|
|||
http://www.realcoding.net/article/view/4164
Нашел статью, очень толковая. И как я раньше её не замечал. Пока разбираюсь с сервисом. Еще вопросик как реализовать ввод логина и пароля при входе в виндовс с моего сервиса? Типа если надо то логин админ пароль 123 интер. Хук или АПИ? |
#12
|
|||
|
|||
1. Можно просто проверять какой пользователь залогинился.
2. Если именно логин в сервис (не запуск под пользователем - это настраивается в параметрах сервиса), то надо делать специальную дырочку, например, через COM или через сеть. |
#13
|
|||
|
|||
нет, мне надо тупо вводить логин пароль и жать кнопку вход в систему.
|
#14
|
||||
|
||||
В реестре есть ветка которая отвечает за запускаемую оболочку, таким образом ее можно заменить на вашу прогу, если ввод правильный, то она запускает EXPLORER иначе выполняет перезагрузку компа. Блокировку менеджера процессов и редактора реестра можно выполнить также внеся изменения в реестр.
|
#15
|
|||
|
|||
Всех с празником. Сделал сервис. Работает.
Как запретить остановку сервиса? Из деспечера задач удаляется на ура. |