Якщо ти знаєш, як з допомогою Delphi відключити щура, клаву і інше, то можеш не читати далі, тому що мова тут піде саме про це.

Все що ти тут побачиш написано на Delphi і під Windows98 може бути попре і під 95. Що таке Delphi і Windows98 я сподіваюся, ти знаєш. Якщо не знаєш, то Delphi це прога на якій пишуть проги, а Windows98 це операційна система.

Ось про що тут буде читатися:

1.Відключаємо щура

2.Відключаємо клаву

3.ВыключаемВключаем монітор

4.ПерегружаемВыключаем комп

5.Открываемзакрываем сідюк

6.Вчимося звертатися з реєстром

7.Запускаємо який — небудь файл

8.Ховаємо прогу від трьох клавіш

9.Ховаємо ПУСКЧАСЫПАНЕЛЬ ЗАВДАНЬ

Почнемо:

1.Відключаємо щура:

var

dirWin: array[0..255] of char;

begin

GetWindowsDirectory(dirWin,255); //Визначаємо директорію вінди

WinExec(PChar(dirWin + ‘undll32.exe mouse,disable:’), SW_SHOWNORMAL);

end;

Сам розберешся. По частіше використовуй хелп.

2.Відключаємо клаву: Аналогічно…

var

dirWin: array[0..255] of char;

begin

GetWindowsDirectory(dirWin,255);

WinExec(PChar(WinDir + ‘undll32.exe keyboard,disable:’), SW_SHOWNORMAL);

end;

3.ВыключаемВключаем монітор: робиться це так…

Щоб вимкнути:

SendMessage(Application.Handle, WM_SYSCOMMAND, SC_MONITORPOWER, 0);

Щоб включити:

SendMessage(Application.Handle, WM_SYSCOMMAND, SC_MONITORPOWER, -1);

Для чого вам це треба, думайте самі.

4.ПерегружаемВыключаем комп:

Перевантажуємо:

ExitWindowsEx(EWX_REBOOT,0);

Вимикаємо:

ExitWindowsEx(EWX_SHUTDOWN,0);

Скаламутився з цими функціями. Вони можуть дещо ще.

5.Открываемзакрываем сідюк: спочатку припишемо в uses слово MMSystem

Відкриваємо:

mciSendString(‘Set cdaudio door open wait’, nil, 0, handle);

Закриваємо:

mciSendString(‘Set cdaudio door closed wait’, nil, 0, handle);

Ще раз, якщо щось не зрозуміло використовуй хелп.

6.Вчимося звертатися з реєстром: для того, щоб редагувати реєстр через Delphi потрібно у тій же
рядку Uses приписати Registry.

Ось приклад редагування реєстру:

var

reg:TRegIniFile //змінна з допомогою, якої ми будемо редагувати реєстр.

begin

reg:=TRegIniFile.Create(‘Software’); //Ініціалізуємо переменною

reg.RootKey:=HKEY_LOCAL_MACHINE; //Вказуємо головний розділ

reg.OpenKey(‘SoftwareMicrosoftWindowsCurrentVersion’,true); //Відкриваємо потрібний ключ

reg.WriteString(‘Run’,’Proga’,Application.ExeName); //Створюємо рядковий параметр

reg.Free; //Звільняємо змінну

Помучся з цим добром, адже це ж не всі можливості.

7.Запускаємо який — небудь файл:

У Uses припишемо ShellApi і пиши:

var

dirWin:array[0..255] of char;

begin

GetWindowsDirectory(dirWin,255);

ShellExecute(handle,’Open’,PChar(dirWin+’Regedit.exe’),nil,nil,0); //Для прикладу я запустив Regedit.exe

end;

8.Ховаємо прогу від трьох клавіш: хто не знає, три клавіші — це Ctrl+Alt+Delete.

Ось як це робиться:

Спочатку після {$R *.DFM} припишемо


Type tregisterserviceprocess = function (dwprocessid,dwtype:dword): dword;stdcall;

Type TWNetEnumCachedPasswords = function (lp: lpStr; w: Word;b: Byte; pc: Pointer; dw: DWord): Word;stdcall;


Потім в процесорі:


var

hndl: thandle;

registerserviceprocess: tregisterserviceprocess;

begin

hndl:=дзвінки на loadlibrary(‘KERNEL32.DLL’);

registerserviceprocess:=getprocaddress(hndl,’RegisterServiceProcess’);

registerserviceprocess(getcurrentprocessid,1);

freelibrary(hndl);

9.Ховаємо ПУСКЧАСЫПАНЕЛЬ ЗАВДАНЬ:

Спочатку ховаємо годинник:


var

window:THandle;

begin

window := FindWindow(‘Shell_TrayWnd’, nil);

window := FindWindowEx(window, HWND(0),’TrayNotifyWnd’, nil);

window := FindWindowEx(window, HWND(0),’TrayClockWClass’, nil);

ShowWindow(window, SW_HIde);

Тепер пуск:


var

window:THandle;

begin

window := FindWindow(‘Shell_TrayWnd’, nil);

window := FindWindowEx(window, HWND(0),’Button’, nil);

ShowWindow(window, SW_HIde);

Ховаємо Панель завдань:


var

window:THandle;

begin

window := FindWindow(‘Shell_TrayWnd’, nil);

window := FindWindowEx(window, HWND(0),’TrayNotifyWnd’, nil);

ShowWindow(window, SW_HIDe);

Всі.