Rejestr To baza danych, w której przechowywane są informacje o konfiguracji systemów operacyjnych Windows serii 9x (95/98/Me) oraz NT, do których naleŝą: NT, 2000 i XP. Zawiera ona informacje i ustawienia dotyczące sprzętu, oprogramowania, uŝytkowników oraz ich indywidualnych preferencji. Z bazy danych Rejestru korzysta oczywiście cie Windows, a takŝe pracujące w nim aplikacje. Zmieniając jakiekolwiek ustawienia czy instalując nowe oprogramowanie dokonujemy jednocześnie zmian w Rejestrze. W sensie fizycznym na Rejestr składają się konkretne pliki, których nazwy i połoŝenie są róŝne w poszczególnych wersjach systemu.
w systemach Windows 95 i 98 są to ukryte pliki user.dat i system.dat znajdujące się w folderze systemowym (najczęściej C:\Windows) w Windows Me część rejestru zawiera dodatkowo plik classes.dat w systemach NT Rejestr znajduje się w folderze Windows\System32\Config i w folderze Documents and Settings\nazwa uŝytkownika\ntuser.dat Do przeglądania Rejestru i jego modyfikacji słuŝy wbudowane w Windows narzędzie o nazwie Edytor Rejestru. Nie moŝna jednak dostać się do niego bezpośrednio z poziomu menu Start. To niejako forma zabezpieczenia przed przypadkowym dostępem niedoświadczonego uŝytkownika. Uwaga!! usuwanie nieodpowiednich wpisów lub ich nieprzemyślana modyfikacja moŝe czasami skończyć się reinstalacją całego systemu.
Aby uruchomić Edytor Rejestru klikamy na przycisk Start, następnie wybieramy polecenie "Uruchom". W oknie, które się pojawi wpisujemy "regedit" i klikamy na OK. Otwiera się okno, które przypomina Eksploratora Windows. W lewej części znajduje się 5, a w systemach operacyjnych Windows 9x - 6 Ŝółtych ikon. Są to odpowiedniki folderów zwane kluczami. Po kliknięciu na widoczne obok znaczniki "+" uzyskujemy oczywiście dostęp do kolejnych gałęzi drzewa kluczy. Kliknięcie na klucz powoduje, Ŝe w prawym oknie pojawiają się odpowiedniki plików zwane w Rejestrze "Wartościami. ŚcieŜka dostępu do danej wartości wyświetlana jest na pasku stanu edytora. Rejestr jest zatem podzielony na 5 lub 6 zasadniczych kluczy.
HKEY_CLASSES_ROOT zawiera informacje o wszystkich skojarzeniach plików, skrótach i innych elementach interfejsu uŝytkownika jak menu kontekstowe. Jest to inna nazwa gałęzi klucza HKEY_LOCAL_MACHINE HKEY_CURENT_VERSION to alias podgałęzi czyli alternatywny (dodatkowy) klucz Rejestru HKEY_USERS, odnoszącej się do uŝytkownika właśnie zalogowanego na komputerze. Informacje tu zawarte to między innymi ustawienia pulpitu czy menu Start oraz ustawienia zainstalowanych programów. HKEY_LOCAL_MACHINE ten klucz zawiera informacje dotyczące komputera: typu sprzętu oraz sterowników, a takŝe podstawowych ustawień aplikacji. Są to dane wspólne dla wszystkich uŝytkowników peceta. HKEY_USERS zawiera indywidualne ustawienia kaŝdego z uŝytkowników komputera HKEY_CURRENT_VERSION jest aliasem podgałęzi klucza HKEY_LOCAL_MACHINE i pokazuje aktualną konfigurację sprzętową komputera. HKEY_DYN_DATA jest wyodrębnionym jedynie w systemach linii Windows 9x aliasem podgałęzi klucza rejestru HKEY_LOCAL_MACHINE i zawiera dynamiczne, przechowywane w pamięci RAM ustawienia sprzętowe.
W systemach linii NT uŝytkownik nie posiadający dostępu do konta administratora nie moŝe dokonywać Ŝadnych modyfikacji w podstawowych kluczach z wyjątkiem swoich ustawień osobistych zawartych w kluczu HKEY_CURRENT_ USER. Podobnie jak istnieją róŝne formaty plików tak samo w Rejestrze moŝemy odnaleźć róŝne typy wartości, a kaŝdy z nich pełni inną rolę. Wartość DWORD moŝe zawierać liczby o długości maksymalnej 32 bitów (2 32 ). Typ DWORD jest teŝ uŝywany do przechowywania danych logicznych: 0 - wyłączony, 1 - włączony. Korzystaliśmy z nich uprzednio przy modyfikowaniu niektórych ustawień.
Wartość binarna moŝe przechowywać dane zawierające liczby dłuŝsze niŝ DWORD. Edytor Rejestru wyświetla je w postaci szesnastkowej. Wartość ciągu - przechowuje dane tekstowe, takie jak na przykład ścieŝka dostępu do pliku. Wartość ciągu rozwijanego występuje tylko w systemach Windows NT, 2000 i XP. Zawiera zmienne, które zostaną zastąpione przez właściwe dane, kiedy zaŝąda ich aplikacja.
W systemach linii NT występuje teŝ Wartość wielociągu zawierająca kilka danych ciągu oddzielonych separatorem np. spacją lub gwiazdką. Pomimo, Ŝe wartości kluczy nadal pozostają "czarną magią" korzystanie z nich i modyfikacja wcale nie są takie trudne jeŝeli logicznie przeanalizuje się ich zawartość. Dla przykładu w kluczu HKEY_CURRENT_USER - Control Panel i Colors moŝemy zmienić domyślne ustawienia wszystkich kolorów systemowych interfejsu i w ten sposób zindywidualizować swoje ustawienia, które graficznie nie będą róŝnić się od pozostałych uŝytkowników. To jednak co u innych jest systemowo niebieskie, u mnie moŝe mieć odcień lekko fioletowy itp. Na pozór skomplikowane wartości ciągu dword są bowiem niczym innym jak parametrami barw składowych RGB. Przedstawiony przykład jest opisem barw stosowanych w przycisku paska tytułowego w klasycznym schemacie Windows XP. Ale zaczniemy od sporządzenia kopi rejestru. Wykorzystując Notatnik wprowadzimy zmiany metodą skryptu, który wyeksportujemy następnie do Rejestru Windows.
Ciekawą funkcją Edytora Rejestru jest moŝliwość importowania i eksportowania ustawień Rejestru do pliku tekstowego. Plik ten jest rozpoznawany przez edytor dzięki unikalnemu rozszerzeniu.reg. Podwójne kliknięcie na taki plik eksportuje zawarte w nim dane do Rejestru. To właśnie dzięki tej właściwości moŝemy sporządzić kopię rejestru i w kaŝdej chwili go przywrócić. Szansę taką daje równieŝ sam system, który kaŝdego dnia, niezaleŝnie od nas, wykonuje kopię Rejestru. W razie dostrzeŝonej awarii moŝna przywrócić Rejestr i prawidłową konfigurację np. z poprzedniego dnia. Ta właściwość rodzi jednak pewne niebezpieczeństwo. JeŜeli zdarzy się nam trafić na jakiś plik z rozszerzeniem.reg a nie wiemy jakie modyfikacje są w nim zawarte lepiej go nie dotykać. W najgorszym razie moŝemy nawet poŝegnać się z systemem i poszukać czasu na reinstalację.
Aby wyeksportować cały Rejestr (zrobić jego kopię) w oknie edytora klikamy na ikonę "Mój Komputer", a następnie z menu kontekstowego wybieramy polecenie "Eksportuj". W oknie, które się pojawi, wpisujemy nazwę pliku (najlepiej podać datę) oraz zaznaczamy pole "Wszystko". Jak widać moŝna równieŝ eksportować dowolną gałąź rejestru, a nawet pojedynczy klucz który zamierzamy zmodyfikować. W takim przypadku w lewym oknie zaznaczamy gałąź (klucz) a precyzując zakres eksportu oznaczamy "Wybrana gałąź". Aby lepiej zrozumieć zasady edycji wartości Rejestru posłuŝę się przykładem:
Kiedy klikamy na przycisk "Start" pojawia nam się szereg dostępnych pozycji w kolejnych rozwijanych menu. Stąd zwykle wędrujemy do menu "Programy", "Ustawienia", szukamy plików i moŝemy uruchamiać aplikacje np. właśnie Edytor rejestru. Warto się zastanowić, czy wszystkie widoczne pozycje są nam na prawdę potrzebne. Na przykład gdy jestem jedynym uŝytkownikiem komputera - po co mi "Wyloguj"? RozwaŜmy, czy korzystamy na tej drodze z dostępu do dokumentów i potrzebujemy, aby kaŝdy kto zatrzyma się na tej pozycji musiał widzieć z jakimi plikami ostatnio pracowaliśmy, jakie strony internetowe zgromadziliśmy w katalogu Ulubione. Nie wnikając co komu się przyda zaczniemy dowolnie skracać te listę. Jak w wielu podobnych przypadkach musimy dokonać zmian w rejestrze.
Radzę jednak zabezpieczyć jego kopię bo zapamiętanie zmienionych pozycji moŝe być bardzo trudne i dokonane zmiany okaŝą się wtedy nieodwracalne. Przy eksporcie upewniamy się, Ŝe jest zaznaczona opcja Wszystko. Dobrze aby znajdowała się w niej aktualna data. Gdyby po wprowadzeniu zmian w Rejestrze okazało się, Ŝe komputer nie działa prawidłowo albo dokonana zmiana nas nie satysfakcjonuje, dwukrotne kliknięcie na tę ikonę przywróci poprzednie ustawienia. Mając gotową kopię rejestru wróćmy do jego modyfikacji. Kolejno otwieramy zatem pozycje: HKEY_CURENT_VERSION/SOFTWARE/Microsoft/W indows/curentwersion/policies/explorer
Teraz w prawym oknie zobaczymy dziwnie długą listę poleceń albo teŝ tylko dwa. Będą to zapewne wartości CDRAutoRun i NoDrive TypeAutoRun odpowiadające za zdolność do automatycznego uruchamiania płyt CD po włoŝeniu do napędu. A teraz cała tajemnica: Wydaje się to logiczne, ale nazwy są trudne do zapamiętania. Analizując treść pozostałych moŝna się domyśleć, Ŝe niektóre decydują o dostępie do drukarek, monitora itp. Tu bardzo ostroŝnie bo po restarcie poza czarnym ekranem moŝemy nie zobaczyć nic więcej. Jak dodać wartość DWORD? W oknie Edytora rejestru rozwijamy listę Edycja, wybieramy Nowy, a następnie Wartość DWORD. Po wykonaniu tej czynności w prawym oknie edytora pojawi się wartość: Nowa wartość #1 0x00000000 (0)
W polu nowa wartość naleŝy wpisać wybraną nazwę np. NoLogoff. Aby uruchomić jej działanie (w tym przypadku zlikwidować wybraną pozycję) wartość (0) musimy zamienić dane wartości na (1). W tym celu dwukrotnie klikamy w nazwę wartości otwierając okno Edycji wartości DWORD. Zaznaczamy system dziesiętny i w pole dane wartości wpisujemy 1 w miejsce 0. Klikamy OK. Po dokonaniu wszystkich planowanych zmian zamykamy okno edytora rejestru. JeŜeli wymagane wartości DWORD są juŝ na liście dla dokonania zmian wystarczy zmienić 0 na 1 lub odwrotnie.
Nie chcemy w menu Start Wyloguj Ulubione Dokumenty Znajdź Uruchom Dodajemy wartość DWORD NoLogOff NoFavoritesMenu NoRecentDocsMenu NoFind NoRun
Wyobraźmy sobie, Ŝe modyfikując rejestr dokonaliśmy usunięcia opcji "Wyloguj" z menu Start. W tym celu zmieniliśmy odpowiednią wartość DWORD w kluczu HKEY_CURRENT_USER. Komuś, kto narzekał równieŝ na nieprzydatność tej funkcji chcemy zaproponować identyczną modyfikację. Zamiast tłumaczenia zawiłości tego procesu chcemy pomóc udostępniając kopię odpowiedniego klucza rejestru. Zaznaczając w edytorze klucz (ścieŝka oznaczona na niebiesko na zdjęciu kolejny slajd) przygotowaliśmy plik log.reg. Zgrywając go na dyskietkę i przekazując tej osobie z pewnością zrobimy jej nie tyle dobrą przysługę co niezły kawał. Otwierając ten plik w Notatniku zauwaŝymy, Ŝe klucz zawiera o wiele więcej wartości niŝ ta, o którą chodziło. Oprócz wartości DWORD 00000001 przy pozycji "NoLogoff" mamy identyczną wartość przy pozycji "NoRecentDocsMenu", a to oznacza, Ŝe usunęliśmy takŝe dostęp do historii ostatnio otwieranych dokumentów w menu Start.
Takich zmian mogliśmy dokonać znacznie więcej i przy zaimportowaniu takiego pliku funkcje te automatycznie zostałyby usunięte równieŝ na innym komputerze. A przecieŝ nie o to chodziło. MoŜemy jednak ten plik odpowiednio zmodyfikować. Co więcej moŝemy stworzyć taki plik od podstaw w notatniku i zapisując go z rozszerzeniem.reg nadać mu postać pliku rejestru, który da się zaimportować. W ten sposób tworzymy skrypt. Aby to było moŝliwe przyjrzyjmy się tekstowej postaci pliku rejestru. Nagłówek zawiera informację o typie pliku oraz jego wersji. W naszym przypadku REGEDIT4 oznacza, Ŝe jest to plik w systemie Windows 9x. W przypadku Windows XP nagłówek będzie miał postać następującą:
Pod treścią nagłówka znajdujemy ścieŝkę dostępu do klucza. Uwaga! ŚcieŜka pokazana na rysunku z notatnikiem i oznaczona niebieskim polem, została dla potrzeb tej strony podzielona na trzy wiersze. Tworząc skrypt musimy ją bezwzględnie zapisać w jednym wierszu bez uŝywania klawisza Enter. Bezpośrednio pod ścieŝką mamy listę wartości. KaŜda jest umieszczona w oddzielnym wierszu, a jej nazwa ujęta w cudzysłów. Po znaku równości znajdują się dane wartości, a typ wartości ilustruje składnia zapisu. Spróbujmy je zidentyfikować:
Wartość DWORD zawiera po znaku równości nazwę dword i po dwukropku dane np. NoRecentDocsMenu =dword:00000001 (wartość logiczna 1 oznacza "wykonaj polecenie" czyli w tym przypadku nie pokazuj ostatniio uŝywanych dokumentów). Wartość ciągu zawiera po znaku równości dane w cudzysłowie np: ScreenSeveTimeOut = 60 (czas po którym nastąpi uruchomienie wygaszacza określono na 60 sek) Wartość binarna, po znaku równości zawiera wyraŝenie hex i po dwukropku wartości szesnastkowe oddzielone przecinkami np: NoDriveTypeAutoRun =hex:95,00,00,00 (ta konkretna wartość decyduje o funkcji automatycznego uruchamiania krąŝków - autorun.
KaŜdy klucz rejestru zawiera teŝ wartość ciągu o nazwie "Domyślna", która w systemach linii Windows 9x jest z reguły nieokreślona. W serii NT np. Windows XP występuje najczęściej w postaci nazwy i tym samym lepiej pozwala zorientować się uŝytkownikowi w zastosowaniu innych wartości klucza np: Jak widać w pliku tekstowym.reg oznaczana jest symbolem @. Aby przygotować właściwy skrypt modyfikujący tylko jedną wybraną wartość musi zatem pozostawić w pliku tyko: nagłówek zaleŝny od wersji systemu ścieŝkę dostępu do klucza zmodyfikowaną wartość
Stąd jeden wniosek - jeŝeli nasza modyfikacja ma dotyczyć usunięcia wybranego klucza to wskazana metoda nie będzie skuteczna. A teraz dwa małe tricki, które przygotujemy właśnie w postaci pliku tekstowego (skryptu), nadamy mu następnie rozszerzenie.reg i wyeksportujemy do Rejestru. Modyfikacja systemowych postaci skrótów - napis Kiedy tworzymy w Windows skrót do pliku, katalogu czy dokumentu system oznacza ikonę specjalną strzałką i napisem "Skrót do...". Z reguły kaŝdy usuwa potem tę część nazwy, aby podpis pod ikoną wyglądał estetycznie. Wprowadzając odpowiednią zmianę moŝemy spowodować aby ten dodatkowy napis nie pojawiał się nigdy. W tym celu przygotujemy skrypt (plik.reg) o treści jak na rysunku poniŝej. Wartość binarna przywracająca napis ma standardową postać: 1e 00 00 00
Przyspieszanie dostępu do menu i list rozwijanych Gdy klikamy na przycisk Start a następnie przeciągamy kursor na pozycję ze strzałką, wywołujemy na ekran podmenu. Za kaŝdym razem musimy jednak chwilę odczekać zanim ujrzymy jego zawartość na ekranie. To moŝe być denerwujące. Z tej animacji pozwoli nam zrezygnować skrypt po prawej. Standardowo nie ma w Rejestrze tej wartości.