Nu bea din fierbător - va deveni un fierbător de apă.
Crearea și folosirea unui DLL:
Dar ce se poate face. Astăzi, trebuie să se adapteze planul și să efectueze solicitările dumneavoastră. În această problemă de codificare ambele articole sunt construite pentru numeroasele cereri.
Pentru acest exemplu, am scris un fișier DLL, care va fi acum vopsite în fața ochilor tăi. Nimic special vizual nu facem astăzi. Numai codificare și nimic altceva. Apropo, m-am dus la Delphi 6, astfel încât toate sursele vor fi acum scrise în ea. Dacă sunteți încă blocat în Delphi 5, apoi a fugit la piață pentru a conduce direct din tablă.
În primul rând, creați un nou proiect. Dar nu cel care a fost folosit înainte, și biblioteca DLL de proiect. Pentru a face acest lucru, selectați meniul Fișier> New-> Altele ... (pentru Delphi 5 este pur și simplu Fișier-> Nou). o fereastră se va deschide în fața ta. Găsiți aici DLL element Wizard și dublu-clic pe el. Delphi va crea un DLL proiect gol. apăsați imediat Pimp «Salvare», pentru a salva proiectul. Ca un nume, introduceți «hackpass», același lucru va fi numit dll.
Acum, șterge tot textul, care este scris Delphi și scriere;
Cel mai de bază a DLL noastre - o procedură RunStopHook. Ea a trecut opțiune singură. Dacă este adevărat, atunci am înregistra o capcană, care va prinde toate mesajele de Windows ei înșiși. Acesta utilizează funcția SetWindowsHookEx. Această funcție are patru parametri:
- Tipul de Trap. Am WH_GETMESSAGE, care prinde toate mesajele.
- Un pointer la o funcție, care va fi transmis mesaje Windows.
- Un pointer la aplicație.
- Identificator de flux. Dacă zero, atunci este utilizat curent.
Al doilea parametru este numele am funcția SysMsgProc. Ea, de asemenea, descrisă în acest dll. Să aruncăm o privire la ea.
Capcane pentru mesaje:
În primul rând am adus un mesaj prins restul de capcane instalate în sistem folosind CallNextHookEx. Apoi am obține o fereastră a generat evenimentul și verificați tipul de eveniment. Dacă a existat un șobolan buton din stânga a făcut clic și a avut loc Pimp de control, îndepărtați asteriscuri.
Acum să scrie un program care va încărca DLL și rula o capcană. Pentru a face acest lucru, creați un nou proiect (de exemplu, am creat deja). Du-te la codul sursă și găsiți secțiunea var. Lângă ea ar trebui să fie scris ceva de genul «Form1: TForm1». Completați aici linia:
În această linie, am explica Delphi, care este o funcție RunStopHook, care este în scris mine biblioteca hackpass.dll și indexul său = 1. Aici, pe acest indice și Delphi va apela funcția. Puteți, desigur, și după nume, dar va fi un pic mai lent.
Acum, creați o tratare a evenimentului pentru forma OnShow și scrie acolo: