Registrul este depozitul central pentru informații despre parametrii sistemului și programele instalate. În versiunile Windows înainte de Windows 95, programatorii au stocat parametrii programului fie în fișierele INI WIN.INI și SYSTEM.INI, fie în fișiere INI suplimentare. Deși utilizarea fișierelor INI este de asemenea acceptată în Win32, Microsoft recomandă cu insistență utilizarea registrului pentru a stoca parametrii necesari în program. Registrul este o bază de date ierarhică, constând din secțiuni, subsecțiuni și elemente. Fiecare secțiune are scopul propriu. Pentru a stoca date despre programele de utilizator, Microsoft recomandă în secțiunea HKEY_CURRENT_USER și subsecțiunea Software. În această subsecțiune, creați o subsecțiune care identifică programul sau firma dvs. și aveți deja date în interiorul acestuia.
Pentru a simplifica lucrul cu registratorul de Delphi (începând cu versiunea 2.0) include modulul REGISTRU care conține punerea în aplicare a celor trei clase, - TRegistry, TRegistryIniFile și TRegIniFile.
Atenție, vă rog. Pentru a utiliza proprietățile și metodele din clasele TRegistry, TRegistryIniFile și TRegIniFile, trebuie să includeți modulul Registry din lista de utilizări.
Strict vorbind, clasele de probleme TRegIniFile - simplifica migrarea programelor pe 16 biți în Windows 95. Metode de miercuri din această clasă sunt metode echivalente de clasa TIniFile în versiunea de 16 biți din Delphi. clasa TRegIniFile permite accesul la secțiunea HKEY_CURRENT_USER, citi și scrie linii (metode ReadString și WriteString), valori integrale (metode ReadInteger și WriteInteger), valori logice (metode ReadBool și WriteBool), secțiunea (metode ReadSection, ReadSections și ReadSectionValues), îndepărtați secțiunile ( metoda EraseSection) și elemente (metoda DeleteKey). Să examinăm exemplele, cum sunt folosite funcțiile acestei clase.
Microsoft vă recomandă să notați date referitoare la programul dvs. în subsecțiunea secțiunii HKEY_CURRENT_USER_Software. Să presupunem (nu fantezitic în legătură cu acest subiect) că programul dvs. se numește RegDemo, iar datele pentru acesta sunt localizate în secțiunea Software \ RegDemo. Mai jos vom arăta cum să punem loggerul în șir, datele întregi și logice și apoi să le citim - aceste operațiuni vor fi suficiente pentru a stoca parametrii programului nostru în reportofon și apoi să le citească.
Înainte de a scrie date într-o anumită secțiune, trebuie să fie creată. Acest lucru se întâmplă când se numește constructorul obiect TRegIniFile. Ca parametru, specificați numele secțiunii și, dacă nu există, este creată:
După ce fișierul registratorului este deschis (și este creată o anumită secțiune), putem scrie datele. Se acceptă trei tipuri de date: date întregi, logice și șir. Pentru a scrie aceste date, există metode WriteInteger, WriteBool și WriteString. Parametrii sunt:
- numele subsecțiunii;
- numele elementului;
- datele înregistrate.
Deci, pentru a scrie valoarea elementului MyIntVal în sub-secțiunea IntKey, ar trebui să executați codul
și pentru a citi valoarea, este necesar să apelați metoda ReadInteger (numele subsecțiunii, numele elementului și valoarea implicită sunt specificate ca parametri):
Metodele ReadBool și ReadStr sunt folosite pentru a citi datele logice și șir, iar metodele WriteBool și WriteString sunt folosite pentru a le scrie.
Să luăm în considerare un exemplu de utilizare a metodelor de clasă TRegIniFile de mai sus. Aranjăm componenta Memo, două grupuri GroupBox și șase butoane - trei în grupul Write și trei în grupul Read. Apăsând fiecare buton din grupul Write scrieți valoarea corespunzătoare în registru, apăsând fiecare buton din grupul Citire va citi această valoare.
Mai jos este codul sursă al modulului, care conține butoanele cu click-click utilizând metodele din clasa TRegIniFile.
Înainte de a examina un exemplu de utilizare a proprietăților și a metodelor din clasa TRegistry, să le menționăm pe scurt.
Următorul tabel afișează proprietățile clasei TRegistry.