Igor Kulman

Všetko o registroch

· Igor Kulman

Čo sú registre ?

Registre sú databáza používaná na ukladanie údajov a nastavení v 32 bitových Windows (95,98,ME a NT/2000/XP). Obsahujú informácie a nastavenia pre hardvér, softvér a používateľov. Vždy keď používateľ urobí zmeny v Ovládacom panely, asociuje súbor alebo nainštaluje softvér všetky zmeny sa uložia do Registrov.

Fyzické súbory, kotré registre tvoria, závisia od verzie Windows. Vo Windows 95,98 a ME sú to dva skryté súbory vo vašom adresári Windows nazvané USER.DAT a SYSTEM.DAT. Vo Windows NT/2000/XP v adresári %SystemRoot%\System32\Config. Tieto súbory sa nedajú editovať priamo. Musíte použiť Editor registrov ak chcete urobiť nejaké zmeny.

Štruktúra registrov

Registre majú svoju hierarchickú štruktúru. Tá vyzerá zložitá, ale s Editorom registrom sa v nej môžete pohybovať jednoducho ako s Prieskumníkom po vašom disku.

Každá vetva (položka na obrázku vľavo s ikonou adresára) sa volá vlákno (Hive). Všetky vlákna obsahujú kľúče (Keys). Každý kľúč obsahuje niekoľko ďalších (niekedy nazývaných aj podkľúče) kľúčov - hodnôt (Values).Všetky hodnoty obsahujú informácie uložené v registroch.

V registroch sa nachádza šesť hlavných vetiev, z ktorých každá obsahuje informácie o niečom inom :

  • HKEY_CLASSES_ROOT - Táto vetva obsahuje informácie o asociovaných súboroch, informácie o OLE a zástupcov dát.
  • HKEY_CURRENT_USER - Táto vetva obsahuje odkazy na HKEY_USERS, ktorá sa venuje práve prihlásenému používateľovi.
  • HKEY_USERS - Táto vetva obsahuje individuálne nastavenie pre každého používateľa na danom PC.
  • HKEY_CURRENT_CONFIG - Táto vetva obsahuje odkazy na hardvérovú časť vetvy HKEY_LOCAL_MACHINE
  • HKEY_DYN_DATA - Táto vetva obsahuje odkazy na vetvu HKEY_LOCAL_MACHINE, ktorá sa venuje Plug-&-Play. Táto sekcia je dynamická a mení sa pri pridávaní a odoberaní zariadení.

Každá hodnota v registroch je uložená ako jeden z piatich typov dát :

  • REG_BINARY - Tento typ obsahuje binárne data. Veľa hardverových komponentov si ukladá svoje údaje ako binárne data, ktoré môžu byť prezerané v editore v hexadecimálnom formáte.
  • REG_DWORD - Tento typ prezentuje dáta vo formáte 4 bytového čísla, je zvyčajne používaný pre booleovské hodnoty, kde 0 znamená zablokovaný a 1 sprístupnený. V tomto formáte sú uložené ovládače a servisy zariadení. Môžu byť zobrazené v REGEDIT32 v binárnom, hexadecimálnom a decimálnom formáte alebo v REGEDIT v hexadecimálnom a decimálnom formáte.
  • REG_EXPAND_SZ - Tento typ obsahuje variabilné data, ktoré môžu meniť aplikácie. Napríklad “%SystemRoot%” bude nahradený hodnotou aktuálneho umiestnenia adresára obsahujúceho Windows NT.
  • REG_MULTI_SZ - Tento typ je mnohonásobná položka používaná na reprezentáciu zoznamu mnohonásobných hodnôt.
  • REG_SZ - Štandardná hodnota vo forme človekom čitateľného textu.

Editovanie registrov

Editor registrov (regedit.exe) je štandardnou súčasťou Windows (nenájdete ho však v ponuke Štart). Pomocou neho môžete dáta v registroch prezerať, hľadať a editovať. Je viacero spôsobov ako ho spustiť. Najjednoduchší je kliknúť na Štart, potom na Spustiť, do kolónky napísať regedit a kilknuť na OK. Editor registrov sa vám spustí a bude vyzerať ako na obrázku.

Vo Windows NT/2000/XP sa nachádza alternatívny REGEDIT32.EXE, ktorý obsahuje niektoré prídavné funkcie ako napríklad menenie bezpečnostných nastavení a vytváranie a editovanie REG_EXPAND_SZ a REG_MULTI_SZ položiek.

Vytvorenie zástupcu

Editor registrov môžete jednoducho spúšťať pomocou zástupcu na ploche. Kliknite na ňu pravým tlačidlom, zvoľte Nový | Zástupca a do políčka napíšte regedit.exe. Zástupcu nazvite napríklad Editor registrov

Použitie na modifikáciu registrov

Po prvom spustení Editora registrov si určite všimnete, že na ľavej strane je štruktúra vetiev a na pravej sú hodnoty práve otvorenej vetvy.

Vetvy môžeme jednoducho otvárať a prezerať ako v Prieskumníkovi. Nové hodnoty môžete pridávať pomocou voľby pravého tlačidla Nová. Hodnoty môžete editovať ak na ne dvakrát kliknete a premenovať pomocou voľby z menu pravého tlačidla. Mazanie sa dá robiť stlačením DEL na klávesnici alebo pomocou myši.

Poznámka : Nie je na škodu zálohovať si registre pred editáciou. Ak urobíte nejaký nesprávny ťah, môžete doviesť Windows k pádu. V takom prípade je lepšie použiť zálohované registre ako preinštalovať celý systém.

Importovanie a exportovanie registrov

Veľkou výhodou registrov je schopnosť importu a exportu do textového súboru .REG pomocou ktorého môžete prenášať nastavenia na iné počítače. Tieto súbory môžete vytvárať zvolením Exportovať súbor databázy registry z ponuky Databáza registry. Takto vytvorený súbor sa dá potom prezerať napríklad v Notepade. Príklad takého súboru:

REGEDIT4
                 
[HKEY_LOCAL_MACHINE\SYSTEM\Setup]
                 
"SetupType"=dword:00000000
                 
"CmdLine"="setup -newsetup"

"SystemPrefix"=hex:c5,0b,00,00,00,40,36,02

REGEDIT4 znamená, že súbor je určený pre regedit.exe, [HKEY_LOCAL_MACHINE\SYSTEM\Setup] je vetva, z ktorej sú položky, SetupType je názov hodnoty, dword typ a 00000000 hodnota.

Údaje z takéhoto súboru pridáte do svojej databázy jednoduchým dvojklikom na súbor alebo voľby Importovať … z programu Regedit.

Mazanie kľúčov a hodnôt pomocu súboru REG

Pomocu súboru REG sa hodnoty môžu nielen pridávať ale aj mazať. Stačí ak pred hodnotu dáme -. Napríklad ak chceme zmazať vetvu [-HKEY_LOCAL_MACHINE\SYSTEM\Setup] zapíšeme to takto :

REGEDIT4 [-HKEY_LOCAL_MACHINE\SYSTEM\Setup]

Ak nechceme mazať celú vetvu ale len nejakú položku alebo hodnotu v nej dáme - len pred ňu:

REGEDIT4

[HKEY_LOCAL_MACHINE\SYSTEM\Setup]

"SetupType"=-

Regedit z príkazového riadku

Regedit sa dá používať aj z DOSu. Tu je výpis funkcií. Niektoré však závisia od verzie Windows.

regedit.exe [voľba] [názov súboru]

  názov súboru    Importuje .reg súbor do registrov
  /s              Zakryje importovanie súboru
  /e              Exportuje registre do s=uboru
                  napr. regedit /e súbor.reg HKEY_USERS\.DEFAULT
  /L:system       Špecifikuje umiestnenie súboru system.dat
  /R:user         Špecifikuje umiestnenie súboru user.dat 
  /C              Komprimáacia [názov súboru] (Windows 98)

Ako sa dajú registre zálohovať a obnoviť ?

Windows 95

Na inštalačnom CD-ROM od Windows sa nachádza jedna utilita na zálohovanie registrov. Nazýva sa The Microsoft Configuration Backup program, CFGBACK.EXE. Nájdete ju v adresári Other\Misc\Cfgback. <Táto utilita vytvorí kópie registrov v adresári Windows s príponou .RBK.

Windows 98

Windows 98 zálohuje registre pri každom štarte pomocou utility Registry Checker (SCANREGW.EXE, ktorá sa spúšťa pri každom štarte systému).

Obnovovanie registrov

V adresári Windows sa nachádzajú registre v súboroch SYSTEM.DAT a USER.DAT a ich záloha v súboroch SYSTEM.DA0. Zálohovanie prebieha pravidelne, takže nie je problém obnoviť registre zo zálohy podľa týchto inštrukcií:

Reštartuje počítač do módu MS-DOS a v adresári Windows urobte nasledujúce:

attrib -h -r -s system.dat
attrib -h -r -s system.da0
copy system.da0 system.dat
attrib -h -r -s user.dat
attrib -h -r -s user.da0
copy user.da0 user.dat