De registry database van NT

In deze database worden de configuratieparameters in een gestructureerde vorm bewaard. Hij vervangt o.a. de autoexec.bat, config.sys, win.ini, system.ini en andere ini-files die bij installatie van toepassingen aangemaakt worden.

De meeste parameters kan men via het control panel wijzigen. Slechts in uitzonderlijke gevallen zal een ingreep in de registry noodzakelijk zijn

Via het programma %SYSTEMROOT%\system32\regedt32.exe kan men wijzigingen in de database aanbrengen.

Om catastrofale gevolgen te vermijden kiest men best voor options, read only mode om de inhoud van deze databank te bekijken.

De registry database bestaat uit 4 trees:

  1. HKEY_LOCAL_MACHINE: informatie van de locale machine, zowel hardware als operating system
  2. HKEY_CLASSES_ROOT: OLE-informatie te vergelijken met de registry van windows 3...
  3. HKEY_CURRENT_USER: user profile van de ingelogde user met o.a. environment variabelen, persoonlijke programmagroepen, desktop settings en netwerkconnecties
  4. HKEY_USERS: informatie over alle actieve profiles

opmerking: H staat voor handle

Elke tree bestaat uit subtrees, keys en subkeys.

linker venster: subtrees,keys en subkeys
rechter venster: values bestaande uit 3 gegevens: name, datatype en value
een voorbeeld
tree HEY_CURRENT_USER
subtree CONTROL PANEL
key INTERNATONAL
name SCURRENCY
datatype REG_SZ
value BEF
een tweede voorbeeld
tree HEY_LOCAL_MACHINE
subtree SOFTWARE
subsubtree MICROSOFT
key WINDOWS NT
subkey CURRENTVERSION
name SOURCEPATH
datatype REG_SZ
value A:\i386

Data types in de registry

  1. REG_SZ: een string
  2. REG_BINARY: binaire data, wordt hexadecimaal voorgesteld
  3. REG_DWORD: een nummer dat 4 bytes lang is en kan binair, hexdecimaal of decimaal voorgesteld worden
  4. REG_EXPAND_SZ: expandable datastring, bevat een variabele die veranderd wordt indien ze door een applicatie opgeroepen wordt b.v. %SYSTEMROOT%\file.exe
  5. REG_MULTI_SZ: een multiple string, kan verschillende zinnen bevatten

Hives en files

Een hive(bijenkorf) is een onderdeel van de registry die verwijst naar een file of een logfile. Deze laatsten bevatten informatie die ingeladen wordt bij het starten van de computer.
De hives verwijzen naar files die voorkomen in de directory %SYSTEMROOT%\SYSTEM32\CONFIG

De standaardhives zijn:

opmerking
De hivelist vindt men terug onder HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\hivelist

Het belang van hives en files

probleem: een applicatie heeft 2 wijzigbare parameters A en B. We veranderen de parameter A waarna een stroomonderbreking de oorzaak is van een systeemcrash.
Normaal krijgt men bij het herstarten de melding corrupte settings maar...
oplossing:
b.v. wijzigingen in de policies
Het wijzigen van parameters gebeurt in 4 stappen:

  1. Alle nieuwe waarden worden in een LOG-file (SECURITY.LOG) gewijzigd. Daarnaast wordt meegegeven in welke hive (HKEY_LOCAL_MACHINE\SECURITY) deze parameter zich bevindt. De LOG-file wordt weggeschreven naar schijf (FLUSH to disk).
  2. De eerste sector van de hive file (SECURITY) wordt gemarkeerd als 'in verwerking'.
  3. De gewijzigde data van de LOG-file (SECURITY.LOG) wordt weggeschreven in de hive file (SECURITY).
  4. De verwerkingsvlag van de hive file wordt op nul geplaatst.

Bij een systeemcrash kan

Enkele voorbeelden van wijzigingen in de registry

voorbeeld 1: Tijdens het inloggen op een NT-server ( na aanslaan van CTRL-ALT-DEL) moet automatisch een boodschap in een venster afgedrukt worden.

HKEY_LOCAL_MACHINE\SOFTWARE\MICROSOFT\WINDOWSNT\CurrentVersion\Winlogon
volgende keys:
LegalNoticeCaption: de titelbalk in het boodschappenvenster
LegalNoticeText: de boodschap

voorbeeld 2: automatisch inloggen zonder invoer van gebruikersnaam en paswoord
Hiervoor moeten 2 keys in de subtree HKEY_LOCAL_MACHINE\SOFTWARE\MICROSOFT\WINDOWSNT\CurrentVersion\Winlogon toegevoegd worden.
Kies daarvoor edit, add value

  1. name: autoadminlogon datatype: REG_SZ value 1
  2. name: defaultpassword datatype: REG_SZ value het paswoord van de defaultusername-key

voorbeeld 3: Bij het activeren van een MSDOS-venster is er niets te zien
reden: de voorgrond- en achtergrondkleur is dezelfde.
Dit kan men oplossen door

  1. kies ALT+spatiebalk en wijzig de kleuren (tijdelijke oplossing)
  2. wijzig de waarde HKEY_USERS\S-1-.....\console\screencolor in 7 in plaats van 0


goed om weten: een systeem met problemen toch starten

vooraf: de bootloader van NT haalt zijn gegevens uit HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet met subkeys control en services. Meerdere controlsets kunnen voorkomen met namen als ControlSet001, ControlSet002, ControlSet003 en ControlSet004. In feite zijn dit automatische backups van de CurrentControlset.
De subkey HKEY_LOCAL_MACHINE\SYSTEM\Select heeft 4 waarden:

  1. current: welke controlset er gebruikt werd
  2. default: welke controlset er een volgende keer zal gebruikt worden
  3. failed: welke controlset er problemen gaf
  4. lastknowgood: de goede recordset voor de huidige

 

De registry van windows 95

Te activeren met het programma c:\windows\regedit.exe.
Bevat volgende trees:

De registry wordt bewaard in de files USER.DAT (met kopie USER.DAO) en SYSTEM.DAT (met kopie SYSTEM.DAO).

 

voorbeelden: