W systemie Windows ustawienia bieżącego użytkownika komputera zapisane są w gałęzi rejestru o skróconej nazwie
A. HKCU
B. HKLM
C. HKCC
D. HKCR
Pytanie z egzaminu CKE, październik 2013 (arkusz E.12-X-13.10).
HKCU to skrót od HKEY_CURRENT_USER i właśnie ta gałąź rejestru przechowuje ustawienia aktualnie zalogowanego użytkownika Windows. Chodzi tu o konfigurację profilu użytkownika, np. ustawienia pulpitu, Panelu sterowania, zmienne środowiskowe użytkownika, preferencje aplikacji czy część konfiguracji zapisywanej pod ścieżkami typu HKEY_CURRENT_USER\Software. W praktyce HKCU jest wygodnym widokiem na odpowiedni wpis w HKEY_USERS, identyfikowany przez SID danego konta. Dane te są zwykle ładowane z pliku NTUSER.DAT znajdującego się w profilu użytkownika. To ważne przy diagnostyce, bo zmiana w HKCU dotyczy konkretnego użytkownika, a nie całego komputera. Moim zdaniem to jedna z tych rzeczy, które warto zapamiętać bardzo praktycznie: jeśli program ma inne ustawienia na różnych kontach, często szukamy właśnie w HKCU. Dobra praktyka administracyjna mówi, żeby przed edycją rejestru zrobić eksport klucza albo punkt przywracania, bo drobna pomyłka może potem robić dziwne problemy.
W tym pytaniu łatwo pomylić skróty, bo wszystkie zaczynają się od HK i wyglądają podobnie, ale w rejestrze Windows każdy z nich ma inne zadanie. Ustawienia bieżącego użytkownika nie są zapisywane w HKLM, ponieważ HKEY_LOCAL_MACHINE dotyczy konfiguracji całego komputera: sprzętu, usług, sterowników, ustawień systemowych i programów instalowanych globalnie. Jeśli coś ma działać jednakowo dla wszystkich kont, wtedy często trafia właśnie tam, ale nie są to osobiste preferencje aktualnie zalogowanej osoby.
HKCR, czyli HKEY_CLASSES_ROOT, kojarzy się głównie ze skojarzeniami plików, klasami COM i informacjami potrzebnymi powłoce systemu do uruchamiania odpowiednich aplikacji. To nie jest typowe miejsce na ustawienia użytkownika, choć technicznie zawiera widok złożony z informacji systemowych i użytkownika. Przez to bywa mylące, szczególnie gdy ktoś widział tam rozszerzenia plików i uznał, że skoro dotyczą pracy użytkownika, to są „jego ustawieniami”.
HKCC, czyli HKEY_CURRENT_CONFIG, odnosi się do aktualnej konfiguracji sprzętowej komputera. To bardziej temat profilu sprzętowego niż preferencji konta. W codziennej administracji Windows, gdy trzeba sprawdzić ustawienia konkretnego konta, należy szukać w HKEY_CURRENT_USER, czyli HKCU. Z mojego doświadczenia zapamiętanie rozwinięcia nazw bardzo pomaga: Current User oznacza bieżącego użytkownika, Local Machine oznacza komputer jako całość. Proste, ale w testach często właśnie takie skróty robią zamieszanie.
HKCR, czyli HKEY_CLASSES_ROOT, kojarzy się głównie ze skojarzeniami plików, klasami COM i informacjami potrzebnymi powłoce systemu do uruchamiania odpowiednich aplikacji. To nie jest typowe miejsce na ustawienia użytkownika, choć technicznie zawiera widok złożony z informacji systemowych i użytkownika. Przez to bywa mylące, szczególnie gdy ktoś widział tam rozszerzenia plików i uznał, że skoro dotyczą pracy użytkownika, to są „jego ustawieniami”.
HKCC, czyli HKEY_CURRENT_CONFIG, odnosi się do aktualnej konfiguracji sprzętowej komputera. To bardziej temat profilu sprzętowego niż preferencji konta. W codziennej administracji Windows, gdy trzeba sprawdzić ustawienia konkretnego konta, należy szukać w HKEY_CURRENT_USER, czyli HKCU. Z mojego doświadczenia zapamiętanie rozwinięcia nazw bardzo pomaga: Current User oznacza bieżącego użytkownika, Local Machine oznacza komputer jako całość. Proste, ale w testach często właśnie takie skróty robią zamieszanie.