Uživatelské nástroje

Nástroje pro tento web


hkcr

HKCR (HKEY_CLASSES_ROOT)

HKCR je zkratka pro HKEY_CLASSES_ROOT, což je jeden ze základních kořenových klíčů (tzv. *hive*) v registru operačního systému Microsoft Windows.

Co je HKCR?

Registrační klíč HKEY_CLASSES_ROOT slouží k ukládání informací o:

  • Asociacích souborových přípon (např. `.txt`, `.docx`)
  • Typu dokumentu (tzv. ProgID – Programmatic Identifier, např. `txtfile`, `Word.Document.12`)
  • Třídách COM objektů (Component Object Model)
  • Kontextových nabídkách pro soubory a složky
  • Ikonech a popisech typů souborů

Interní struktura

Technicky vzato HKCR není samostatným fyzickým klíčem v registru. Jedná se o virtuální pohled (alias) na data uložená v jiných částech registru:

  • Prioritně ukazuje na HKEY_CURRENT_USER\Software\Classes
  • Pokud daný záznam v uživatelském profilu neexistuje, přistupuje k HKEY_LOCAL_MACHINE\Software\Classes

Tímto způsobem Windows umožňuje uživatelům přepsat systémové asociace souborů svými vlastními nastaveními.

Příklady použití

  • Přiřazení programu ke spuštění při dvojkliku na .log soubor:
    HKCR\.log
        (výchozí) = "txtfile"
    HKCR\txtfile\shell\open\command
        (výchozí) = "C:\Windows\notepad.exe %1"
    
  • Registrace vlastního typu souboru:
    HKCR\.myext
        (výchozí) = "MyApp.Document"
    HKCR\MyApp.Document
        (výchozí) = "Můj vlastní dokument"
    HKCR\MyApp.Document\DefaultIcon
        (výchozí) = "C:\Program Files\MyApp\icon.ico"
    

Důležité poznámky

  • Úprava registru může vést k nestabilitě systému – vždy je doporučeno zálohovat registr před zásahem.
  • Na systémech s více uživateli se změny v HKCR projeví pouze pro aktuálního uživatele, pokud nejsou provedeny v HKLM\Software\Classes.
  • V aplikacích je často vhodnější používat assoc a ftype příkazy v příkazovém řádku nebo rozhraní API Windows (např. `SHOpenWithDialog`) místo přímé manipulace s registrem.

Související klíče v registru

  • HKEY_CURRENT_USER (HKCU) – nastavení aktuálního uživatele
  • HKEY_LOCAL_MACHINE (HKLM) – globální nastavení celého počítače
  • HKEY_CLASSES_ROOT (HKCR) – kombinace HKCU a HKLM pro asociace souborů a COM třídy
hkcr.txt · Poslední úprava: autor: admin