![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Вопрос по запрету завершения своего приложения. [D7, Win2k, WinXP]
Dreamse © (2007-11-22 11:04:00)Пишу оболочку для ограничения запуска приложений и доступа пользователей к системным файлам.
Смысл в том что есть программы управления ( комп. клубы) которые при окончании сеанса выгружают все запущенные приложения.
Смысл сделать невозможным убить оболочку из других программ.
Была идея написать сервис который будет висеть в списке сервисов и загружать оболочку если её выгрузили, но программы блокировки выгружают все приложения по мере их запуска что приводит к постоянному миганию ( запуск - заверщение)
Тут есть модераторы которые почему то не въезжают в смысл и закрывают обсуждение не дав положительных ответов. Попрошу на этот раз дать пообсуждать проблему СО ЗНАЮЩИМИ ЛЮДЬМИ а не закрывать топик если вы не знаете ответа.
Реализовать программу в виде службы НЕВОЗМОЖНО так как это оболочка замена Explorer
Нужно пресечь любую попытку завершения моего приложения сторонними программами. Как это можно реализовать ?
Сергей М. (2007-11-23 08:12:00) [1]
> Hook ?
Для процессов, создающих хотя бы одно окно, - хук.
С прочими сложнее.
Все же прислушайся к [19].
Грамотно реализованные политики безопасности решают задачу на все 100%.
stud (2007-11-22 17:08:00) [2]Dreamse (22.11.07 11:04)
Пишу оболочку для ограничения запуска приложений и доступа пользователей к системным файлам.
если это СУТЬ - то решается задача с помощью политик, например
разрешением пользователю запуска определенных программ и раздачей им соответствующих прав. и если ваша оболочка будет запущена от имени системы например - врядли ее смогут убить
Dreamse (2007-11-22 16:34:00) [3]> stud © (22.11.07 16:29) [19]
Если вы не знаете суть проблеммы, поставленую задачу, работу интернет кафе, то не лезьте с глупыми советами пожайлуста.
stud (2007-11-22 16:29:00) [4]Dreamse (22.11.07 14:40) [12]
Вариант простой есть.
самый простой вариант найти нормального сисадмина!
Dreamse (2007-11-22 16:19:00) [5]> Сергей М. © (22.11.07 15:16) [16]
> перехвати глобально вызов ф-ции TerminateProcess
В какую строну копать ? Hook ?
Сергей М. (2007-11-22 15:22:00) [6]
> Dreamse
Это не ты ли трындел намедни в форуме про " методTerminate" &)
Сергей М. (2007-11-22 15:16:00) [7]
> Dreamse (22.11.07 15:12) [15]
> Если вдруг прочитаешь
Читал. Прослезился.
Нахрен было писать какой-то там ехплорер, чтобы иметь сабжевый геморрой - так и не понял)
ну если ты чукча, то перехвати глобально вызов ф-ции TerminateProcess - этого, думаю, будет достаточно для такой кулибинской задачи)
Dreamse (2007-11-22 15:12:00) [8]> Сергей М. © (22.11.07 14:59) [14]
> Ну а причины того, что твое приложение не м.б. службой ты изложить не сподобился)
Если вдруг прочитаешь выше то увидешь что там написано что оболочка грузиться ЗАМЕСТО Exploer'a соответствено это НЕ СЛУЖБА
к тому же она взаимодействет с рабочим столом перекрывая своим окном весь десктоп.
Соответственно приложение НЕ СЛУЖБА а обычное приложение и нам нужно не допустить выгрузку его из памяти.
Сергей М. (2007-11-22 14:59:00) [9]
> вернёмся к поискам метода защиты приложения от выгрузке
> его из памяти
Приложение должно быть службой- это тебе уже сказали.
Ну а причины того, что твое приложение не м.б. службой ты изложить не сподобился) ... Парься дальше)
Сергей М. (2007-11-22 14:57:00) [10]
> хочу лишь одного, понять каким образом запретить ЛЮБЫМ программам
> завершать мой процесс. ВСЁ!
Ну и к чему тогда в твоих постах так много буквов про какие-то там "комп. клубы", "сеансы" и прочую дребедень ?)
Зри в корень, как говаривал Козьма !)
> Сможет ли программа с правами польователя завершить например
> процесс игрызапущенный с правами админа ?
А если не игры ? Что это меняет ? Опять же - учись у Козьмы !)
По сабжу - сможет.
Dreamse (2007-11-22 14:40:00) [11]Вариант простой есть.
Стартовать доп программы которые могут завершить процесс от имени обычных пользователей а саму оболочку запускать под администратором.
Вопрос в следующем : Сможет ли программа с правами польователя завершить например процесс игры запущенный с правами админа ?
Dreamse (2007-11-22 14:37:00) [12]> Только причем здесь те самые "другие" программы ? Ты о них печешься или о своей супер-пупер-оболочке ?
мда... хорошо, попробуем ещё раз.
1) Вот ты написал антивирус :)
2) А я вирус
3) На компьютере пользователя установлен твой антивирус ... и вдруг туда попадает мой вирус .. что он делает ? Первым делом он конечно же выгружает из памяти твой антивирус чтобы он не машел ему убивать систему.
4) И ты сразу же думаешь как сделать так чтобы мой вирус не выгрузил твой супер антивирус ?
Так вот я думаю ТАК ЖЕ :) Я хочу лишь одного, понять каким образом запретить ЛЮБЫМ программам завершать мой процесс. ВСЁ!
Если там запущенна оболочка и другие программы которые её завершают значит так нужно :) Если бы небыло бы программ которые выгружали из памяти мою оболочку я бы не писал!
Давайте вернёмся к поискам метода защиты приложения от выгрузке его из памяти ?!
Сергей М. (2007-11-22 14:29:00) [13]
> Если есть значит нужна
Ну нужна и нужна)
Только причем здесь те самые "другие" программы ? Ты о них печешься или о своей супер-пупер-оболочке ?
> программы блокировки
Эт что за зверь ?
Какого лешего они делают на машине, которая должна быть полностью подконтрольна лишь администратору ?
Dreamse (2007-11-22 14:17:00) [14]> Reindeer Moss Eater © (22.11.07 14:06) [6]
> Сначала пустил в систему гостя с правами админа, затем мучаешь мозг как же ему запретить завершать процессы.
Все программы работают от имени Админа, такова специфика работы программ.
> Сергей М. © (22.11.07 14:07) [7]
> Нахрен она вообще нужна ?) Вот это непонятно.
Решать нужна она или нет к сожалению не вам а мне. Если есть значит нужна. Вопрос в другом. Как её запустить с правами системы как например WinLogon который невозможно выгрузить даже с правами админа.
Сергей М. (2007-11-22 14:11:00) [15]
> Reindeer Moss Eater © (22.11.07 14:06) [6]
Обычное дело - ни секунды не чесав репу создать себе трудности, чтобы потом их героически преодолевать)
Сергей М. (2007-11-22 14:07:00) [16]
> 1) Есть моя оболочка, замена Explorer она сибе работает
> и работает
Нахрен она вообще нужна ?) Вот это непонятно.
> 2) Есть программы управления временем
Какое отношение эти программы имеют к твоему суперпуперэксплореру ?
> приоритет системы
Какой еще нафих "приоритет" ?) Может ты о привелегиях?)
Reindeer Moss Eater (2007-11-22 14:06:00) [17]1) Запускаем нашу программу , запускаем таскменеджер выбираем программу и жмём кнопочку : Завершить процесс
2) Вопрос : Нужно чтобы программа при этох действиях НЕ ЗАВЕРШИЛАСЬ а осталась работать.
Сначала пустил в систему гостя с правами админа, затем мучаешь мозг как же ему запретить завершать процессы.
Dreamse (2007-11-22 14:02:00) [18]Ещё раз :)
1) Есть моя оболочка, замена Explorer она сибе работает и работает
2) Есть программы управления временем. Которые по истечении оплачегоно вренени в интернет кафе закрывают все запущенные приложения.
Вопрос. Как не дать себя завершить ?
Я хочу чтобы моя оболочка работала и работала себе. При этом её никто не мог выгрузить !
p.s подойдём к вопросу с другой стороны :
1) Запускаем нашу программу , запускаем таскменеджер выбираем программу и жмём кнопочку : Завершить процесс
2) Вопрос : Нужно чтобы программа при этох действиях НЕ ЗАВЕРШИЛАСЬ а осталась работать.
Есть варианты?
Может быть каким то образом можно установить уже запущенной программе приоритет системы?
Или может быть подскажите как можно стартовать программу с приоритетом системы чтобы она стала невыгружаемой ?!
Сергей М. (2007-11-22 13:56:00) [19]
> Не могу понять при чём тут планировщик заданий
При том что этот штатный сервис как раз и предназначен для выполнения неких действий в соответствии с заданным ему расписанием.
В твоем паталогическом случае:
Расписание = "окончание сеанса"
Действие = "выгрузить все запущенные приложения"
Что непонятного ?
Dreamse (2007-11-22 13:42:00) [20]> Сергей М. © (22.11.07 11:30) [1]
К сожалению не понятна ваша мысль. Не могу понять при чём тут планировщик заданий