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

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

Запрет закрытие программы. [D7, WinXP]


Laymer ©   (2005-09-26 06:59:00) 

Доброе время суток.
Подскажите, как сделать, чтоб юзер по ХР не смог закрыть прогу.
К примеру если попробывать закрыть процесс "WinLogon.exe", то появится сообщение. "Это критический системный процесс..."
Зарание благодарен.


Laymer   (2005-09-26 14:28:00) [1]


> Вот пример кода который прячит рабочий стол
>  Wnd := FindWindow('Progman', nil);
>  Wnd := FindWindowEx(Wnd, HWND(0), nil, nil);
>  ShowWindow(Wnd, SW_HIDE);
>  ShowWindow(FindWindow('Shell_TrayWnd', nil), SW_HIDE);
>  CloseWindow(FindWindowA('BaseBar', nil));

Народ а этот кусочек кода сработает только тогда, когда загрузится explorer???


evvcom   (2005-09-26 13:54:00) [2]

ну, ну... На [16] уйдет гораздо больше времени.


Sergey_R   (2005-09-26 13:39:00) [3]

Как то раз на www.xakep.ru видел статью, как прогу убрать из Диспетчера задач вообще! Поищи там, может что-нибудь найдешь.


Игорь Шевченко   (2005-09-26 12:11:00) [4]

Жаба хитра, но маленький хрущ с винтом много хитрее ее.


Laymer   (2005-09-26 12:08:00) [5]

На это время надо, да и не очень интересно.
Я такую прогу за пару дней сделал. И предназначалась сначало для 9х
А сейчас еще пару машин появилась с ХР поютому пришлось немного переработать. :р


evvcom   (2005-09-26 10:29:00) [6]


> Студенты, лазят где не поподя.

Для этого в NT-шных ОС предусмотрены настройки системы безопасности. Поэтому [10] за правильный ответ на [9] не принимается.

> :) А Вы наверно его родитель? Судя по тому как задан вопрос
> - [3]?


> Славу богу нет.

:)


Laymer   (2005-09-26 09:39:00) [7]

Славу богу нет. Ну а вообще кажется отвлеклись от темы. :))


dmitry501   (2005-09-26 09:38:00) [8]

evvcom ©   (26.09.05 9:33) [9]
:) А Вы наверно его родитель? Судя по тому как задан вопрос - [3]?
Я тоже сыну подобным тоном подобную фразу говорю, когда он отвлекается от домашнего задания :)


Laymer   (2005-09-26 09:36:00) [9]

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


evvcom   (2005-09-26 09:33:00) [10]


> Почему вредитель???

Укажи хотя бы по одной стоящей причине, для чего тебе скрывать "Рабочий стол" и "Запрещать закрывать свою программу"?


Laymer   (2005-09-26 09:22:00) [11]

Почему вредитель???


evvcom   (2005-09-26 09:20:00) [12]

Прям, вредитель какой-то растет!


Laymer   (2005-09-26 08:58:00) [13]

Хм.
А если мне надо спрятать весь рабочий стол, то это только после загрузки explorera??? И не получится в системной облости памети.
Вот пример кода который прячит рабочий стол
 Wnd := FindWindow('Progman', nil);
 Wnd := FindWindowEx(Wnd, HWND(0), nil, nil);
 ShowWindow(Wnd, SW_HIDE);
 ShowWindow(FindWindow('Shell_TrayWnd', nil), SW_HIDE);
 CloseWindow(FindWindowA('BaseBar', nil));


Laymer   (2005-09-26 08:50:00) [14]

Почему, неизвестны.
Вот ищу инфу, как можно динамиче во время работы программы создавать кнопки.


dmitry501   (2005-09-26 08:50:00) [15]

Laymer   (26.09.05 8:32) [2]
Боюсь, что простыми способами никак. Этот системный процесс, а также
smss
svchost
csrss

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


evvcom   (2005-09-26 08:40:00) [16]

А ответы на все остальные вопросы уже известны? Заняться больше совсем нечем? :)


Laymer   (2005-09-26 08:32:00) [17]

Смеялся.
Работает.
А как сделать чтоб с именим этой проги не закрывался????


dmitry501   (2005-09-26 08:05:00) [18]

Переименуй свою прогу в winlogon.exe и попробуй убить из таск менеджера :)


Наверх

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