Rejestr - serce Windows
Jak wskazuje tytuł niniejszego artykułu, bazą danych konfiguracyjnych, czyli sercem Windows 9x, jest Rejestr. Zapoznanie się z nim jest jakby kolejnym krokiem wtajemniczenia w procesie poznawania systemu operacyjnego. Przedstawimy tutaj informacje o strukturze Rejestru, sposobach bezpośredniego wprowadzania zmian w jego zawartości i tym, jak przeniesione zostały do niego wartości z plików INI systemu Windows 3.x. Autor w miarę możliwości opisuje zawartość Rejestru jak najszczegółowiej, z naciskiem na praktyczne wykorzystanie wiedzy o tym, gdzie szukać użytecznych "kluczy".
Cała konfiguracja w dwóch plikach
Rejestr jest centralną bazą danych przeznaczoną do przechowywania w ujednolicony sposób wszystkich informacji konfiguracyjnych systemu operacyjnego i aplikacji. Zawiera on kompletny zestaw wpisów dotyczących ustawień takich elementów, jak programy obsługi (sterowniki) urządzeń, pamięć czy programy obsługi sieci. Narzędzia systemu operacyjnego pozwalają na dostęp do niego zarówno z komputera, którego dotyczy, jak również poprzez sieć.
Architektura Rejestru jest połączeniem idei znanych z Windows 3.x plików INI oraz występującego także w tym środowisku Rejestru (przechowującego znacznie mniej informacji). Rejestr Windows 95 ujednolica i łączy te mechanizmy. Sekcjom plików INI odpowiadają tzw. klucze Rejestru, a poszczególnym wpisom -- wartości Rejestru. Podstawowe różnice to wprowadzenie struktury hierarchicznej (drzewiastej) i umożliwienie korzystania z wartości binarnych.
Niestety, wprowadzenie koncepcji jednolitego Rejestru jako bazy danych konfiguracyjnych nie pozwala na natychmiastowe "uwolnienie się" od takich plików, jak WIN.INI, SYSTEM.INI, ATM.INI, CONFIG.SYS czy AUTOEXEC.BAT. Pomimo tego, że ich rola w Windows 95 sprowadzona została do pozostałości po poprzednim środowisku pracy, ich usunięcie z dysku twardego może wręcz uniemożliwić uruchomienie komputera. Powodem jest głównie zgodność z 16-bitowym, pochodzącym z DOS-u i Windows 3.x oprogramowaniem. Ani aplikacji użytkownika, ani wszystkich programów obsługi urządzeń z reguły nie jesteśmy w stanie wymienić od razu na ich nowe, pisane dla Windows 95, odpowiedniki. Pliki INI w dalszym ciągu są więc obsługiwane na równi z Rejestrem.
Wymieniane przez Microsoft zalety użytej w Windows 95 koncepcji Rejestru są następujące:
Jedno miejsce przechowywania danych wykorzystywanych przy enumeracji i konfigurowaniu urządzeń, ich sterowników, aplikacji oraz samego systemu operacyjnego.
System operacyjny automatycznie tworzy kopię ostatniej poprawnej konfiguracji wykorzystywanej przy uruchamianiu komputera.
Jeżeli zastosowana zostanie opcja wykorzystywania indywidualnych profili konfiguracyjnych użytkowników, odpowiednie dane mogą być przechowywane na serwerze sieci. Pozwala to na korzystanie z własnej konfiguracji niezależnie od tego, której końcówki sieci używamy.
Administratorzy sieci mogą korzystać ze specjalnych narzędzi umożliwiających wprowadzenie wszelkich zmian konfiguracyjnych z dowolnej końcówki sieci, niezależnie od jej rodzaju.
Wprowadzanie zmian w Rejestrze
Uwaga: Wszelkie zmiany w Rejestrze czynimy na własną odpowiedzialność. Jeżeli modyfikacje można wprowadzić bez korzystania z Edytora Rejestru, zawsze lepiej uniknąć jego używania -- nie sygnalizuje on jakichkolwiek błędów we wprowadzonych wartościach. Gorąco można polecić Edytor założeń systemowych (CD-ROM Windows 95 -- folder ADMIN). |
Podstawowym narzędziem przeznaczonym do przeglądania i modyfikowania Rejestru jest specjalny edytor, uruchamiany poleceniem z menu Start | Uruchom:
regedit
Windows 95 nie umieszcza w folderze MENU START żadnego skrótu do niego. Możemy więc korzystać z polecenia Uruchom lub stworzyć skrót samemu -- plik REGEDIT.EXE znajdziemy w głównym folderze systemu operacyjnego (C:\WINDOWS).
Łatwo zauważyć podobieństwo do Eksploratora. Nawyki z niego z powodzeniem można wykorzystać. Lewy obszar okna możemy traktować jak drzewo folderów, a prawy podobnie jak listę plików. Szczegółowe informacje możemy wyszukiwać rozwijając kolejne gałęzie drzewa lub korzystając z dostępnego poprzez menu polecenia Znajdź.
Choć podobieństwo do Eksploratora skłania do nazywania gałęzi drzewa Rejestru folderami, oficjalny słowniczek jest nieco inny. Zapoznaje z nim poniższa tabelka, zawierająca krótki opis elementów, oraz najprostsze metody dodawania nowych i zmian wybranych elementów.
ELEMENT |
OPIS |
DODANIE ELEMENTU |
ZMIANA ELEMENTU |
Kategoria |
Jeden z sześciu kluczy głównych, zaczynających się od HKEY_ |
Brak możliwości |
Brak możliwości |
Klucz |
Jeden z folderów Rejestru. Pomijając hierarchiczną strukturę, klucze porównać można do sekcji plików INI |
Podobnie jak przy tworzeniu folderu w Eksploratorze, wybranie klucza nadrzędnego, a następnie z kontekstowego menu Nowy | Klucz. |
Wybranie z menu kontekstowego polecenia Zmień nazwę (F2) |
Wartość |
Widoczna tylko w prawym oknie Edytora Rejestru, w kolumnie Nazwa. Każdy klucz może zawierać jedną lub więcej wartości. Można je porównać do tej części wpisów w plikach INI, która znajduje się po lewej stronie znaku =. |
Wybranie klucza, do którego należeć ma wartość, a następnie z kontekstowego menu klucza Nowy | Wartość ciągu. Można również utworzyć wartość binarną lub DWORD. |
Jeżeli chodzi o zmianę nazwy wartości, wybieramy z jej menu kontekstowego Zmień nazwę (F2). |
Dane |
Widoczne w prawym oknie edytora, w kolumnie Dane. Dane porównać można do wpisu w pliku INI po prawej stronie znaku =. Dane mogą być tekstowe, binarne lub typu DWORD. Dwa ostatnie rodzaje danych stosują tylko aplikacje. |
Dane są ściśle przyporządkowane wartościom. |
Podwójne kliknięcie na nazwie wartości (ENTER). |
Kopiowanie gałęzi... |
Współpraca Edytora Rejestru ze Schowkiem jest znikoma, a z mechanizmem przeciągnij-i-upuść -- żadna. Działalność na polu eksport-import może więc niekiedy okazać się jedynym ratunkiem przed ręcznym przepisywaniem. Sposób eksportowania i importowania danych Rejestru opisanemy w następnych częściach, ale odrobina namysłu pozwoli samodzielnie poradzić sobie z poleceniami Importuj plik Rejestru i Eksportuj plik Rejestru z menu Plik. |
Dwie główne grupy przechowywanych w Rejestrze danych to:
HKEY_LOCAL_MACHINE (HKLM) -- komputer. Konfiguracja sprzętowa oraz zainstalowanych aplikacji i samego systemu operacyjnego. Są one przechowywane w pliku SYSTEM.DAT.
HKEY_USERS (HKU) -- użytkownicy. Profile konfiguracyjne użytkowników, ustawienia niektórych aplikacji, indywidualne opcje drukowania i sieci. Przechowywane w pliku USER.DAT, który może być przechowywany na lokalnym dysku systemowym lub serwerze sieci.
W rzeczywistości kategorii jest tyle co plików, czyli dwie. Pozostałe klucze główne powstają następująco:
HKEY_CLASSES_ROOT (HKCR) w rzeczywistości jest wskaźnikem do HKEY_LOCAL_MACHINE\Software\Classes,
HKEY_CURRENT_CONFIG (HKCC) jest kopią HKEY_LOCAL_MACHINE\Config\numer wykrytej konfiguracji,
HKEY_CURRENT_USER (HKCU) jest kopią HKEY_USERS\nazwa zalogowanego użytkownika,
HKEY_DYN_DATA (HKDD) zmienia się dynamicznie i jest przechowywana w pamięci RAM.
Pliki SYSTEM.DAT i USER.DAT znajdziemy w folderze WINDOWS. Jest tam również kopia Rejestru wykonywana w momencie uruchomienia Windows -- pliki SYSTEM.DA0 i USER.DA0, użyteczne w razie popełnienia pomyłki. Wszystkie cztery mają atrybuty plików systemowych, ukrytych i tylko-do-odczytu, dzięki czemu są widoczne w oknach Eksploratora tylko wtedy, gdy włączona jest opcja Pokaż wszystkie pliki.
Warto zwrócić uwagę, że Windows 95 tworzy kopię Rejestru tylko po bezproblemowym uruchomieniu -- znakomicie zabezpiecza to przed utratą "ostatniej deski ratunku". W razie, gdy w trakcie uruchamiania Windows, stwierdzony zostanie brak lub uszkodzenie któregoś z plików DAT, po poinformowaniu o tym użytkownika wykorzystany zostanie DA0 (dodatkowym zabezpieczeniem jest kopia systemowej części Rejestru w pliku SYSTEM.1ST tworzonym przy pierwszym po instalacji uruchomieniu Windows 95, a przechowywanym w głównym folderze dysku).
Windows 98 automatycznie tworzy szereg kopii zapasowych rejestru i innych plików konfiguracyjnych. Znajdują się one w folderze SysBackup w plikach *.cab. Przywracanie, w razie awarii, poprzednich (dobrze działających kopii) znakomicie wykonuje (z poziomu DOS) program Scanreg.exe. |
Niezależnie od kopii automatycznej, w przypadku takich danych jak Rejestr przed rozpoczęciem jakichkolwiek modyfikacji bezwzględnie należy wykonać własną kopię wspomnianych plików DAT. Zabezpieczy to zarówno przed błędami drobnymi, jak i takimi, które uniemożliwią uruchomienie Windows 95. W tym ostatnim przypadku możliwość odtworzenia kopii daje wciśnięcie klawisza f8 na samym początku inicjalizacji systemu operacyjnego -- gdy widać na ekranie napis Uruchamianie Windows 95. Ukaże się wtedy rozbudowane menu startowe, z którego w najgorszym wypadku możemy wybrać linię komend trybu awaryjnego.
Jeżeli musimy skorzystać z kopii zapasowej Rejestru, kopiowanie należy wykonać poza środowiskiem graficznym. Należy więc zamknąć system wybierają opcję Uruchomić komputer ponownie w trybie MS-DOS (oznacza to zamknięcie Windows 95 i pozostawienie użytkownika w DOS-ie). Jeżeli powodem skorzystania z kopii zapasowej jest brak możliwości uruchomienia Windows 95, należy skorzystać ze wspomnianego menu startowego i wybrać jedną z opcji Tylko wiersz poleceń. Pliki SYSTEM.DAT, USER.DAT, SYSTEM.DA0 i USER.DA0 posiadają atrybuty "ukryty", "systemowy" i "tylko-do-odczytu", które można usunąć wyłącznie poleceniem attrib -r -h -s nazwa_pliku. |
Choć jesteśmy dopiero na początku zapoznawania się z Rejestrem, konieczne jest umieszczenie w tym miejscu informacji, że jeżeli chcemy zabezpieczyć się przed edycją Rejestru przez niepowołane osoby, powinniśmy umieścić w kluczu
HKEY_CURRENT_USER\SOFTWARE\Micorosoft\Windows\CurrentVersion\Policies\System
(jeżeli nie korzystamy z profili użytkowników) lub
HKEY_USERS\użytkownik\SOFTWARE\Micorosoft\Windows\CurrentVersion\Policies\System
(jeżeli korzystamy z profili użytkowników) wartość DWORD DisableRegistryTools równą 1. W przypadku, gdy korzystamy z profili użytkowników zmianę warto wprowadzić nie tylko w odniesieniu do istniejących użytkowników, ale również do nowych (.Default). Łatwiejsze wprowadzenie tych wartości umożliwia Edytor założeń systemowych, który znajdziemy na CD-ROM-ie w folderze ADMIN.
Jak zmniejszyć i przeczyścić Rejestr z Windows 95?
To często zadawane pytanie. Publikujemy przepis polegający na eksporcie i imporcie (pod DOSem) pliku Rejestru. Pełny przepis i gotowe pliki wsadowe BAT znajdziesz w archiwum Przepis.zip (2 kB). Uważnie przeczytaj plik CZYTAJ.TXT...
Jak to zrobić w Windows 98?
Tutaj mamy do dyspozycji wspaniałe narzędzie SCANREG.EXE, które należy uruchamiać z poziomu DOS. Jeśli uruchomimy program komendą scanreg /fix to nastąpi:
Skanowanie i sprawdzenie struktury Rejestru
Przebudowanie Rejestru
Program działa bardzo sprawnie i rzeczywiście zmniejsza Rejestr w znaczny sposób (usuwa niedopuszczalne zapisy i puste bloki danych). Program znajduje się w folderze COMMAND w Windows 98 i działa również pod Win95.
Wystarczy w trybie MSDOS wpisać komendę
c:\scanreg /fix
Problemem w edycji Rejestru jest przedzieranie się przez gąszcz gałęzi do szukanego miejsca. Pomocą w szybkim docieraniu do np. odwiedzonego ostatnio klucza może być RegEditX -- ciekawa nakładka na Edytor Rejestru, dodająca pole do wpisywania szukanych kluczy, oraz zapamiętująca odwiedzone miejsca.
Sześć kluczy głównych
Na tej stronie przedstawiamy szczegółowy opis poszczególnych sześciu kategorii -- tak jak widać je w Edytorze Rejestru.
HKEY_CLASSES_ROOT _ klasy obiektów
Informacje rejestracyjne plików i dla OLE, jakie większość programów dodaje do Rejestru przy instalacji, przechowywane są w kluczu HKEY_LOCAL_MACHINE\Software\Classes. Kategoria HKEY_CLASSES_ROOT (HKCR) została zachowana jedynie dla zgodności z Rejestrem Windows 3.x -- w rzeczywistości jest jedynie wskaźnikiem do wspomnianego klucza kategorii HKLM.
Łatwo się o tym przekonać dokonując jakiejkolwiek zmiany w jednej z tych gałęzi -- bez konieczności uruchamiania jakiejkolwiek procedury odświeżającej wyświetlane informacje, znajdzie ona swoje odbicie w drugiej gałęzi. Takie rozwiązanie pozwala bez problemu rejestrować się aplikacjom Windows 3.x.
Odbicie tej kategorii znajdziemy na karcie Typy plików w opcjach okien Eksploratora. Bezpośrednie do niej sięgnięcie daje pełniejszą kontrolę nad systemem rejestracji typów.
HKEY_LOCAL_MACHINE _ konfiguracja systemu
Kategoria HKEY_LOCAL_MACHINE zawiera informacje o konfiguracji komputera, niezależne od tego, który z użytkowników z niego korzysta i jakiego oprogramowania używa. Są w nim również gromadzone dane o wszystkich urządzeniach kiedykolwiek dołączonych do systemu, nawet jeżeli nie są w nim już obecne.
Bez wykorzystania Edytora, zmiany w tej części Rejestru wprowadzane są następująco:
Wykrycie dołączenia lub odłączenie urządzenia Plug & Play i wielu z pozostałych powoduje wprowadzenie natychmiastowych modyfikacji.
Odpowiednie wpisy konfigurujące sterowniki urządzeń umieszczają tutaj ich programy instalacyjne.
Użytkownik może zmieniać konfigurację urządzeń i ich sterowników korzystając z kreatora Dodaj nowy sprzęt lub Menedżera urządzeń -- karty na arkuszu właściwości System. Oba narzędzia dostępne są poprzez Panel sterowania.
Informacje niezbędne do określenia konfiguracji urządzeń pobierane są z plików INF, przechowywanych w folderze WINDOWS\INF.
Config
Informacje o różnych konfiguracjach sprzętowych. Ich wykorzystanie, poza dostosowaniem komputerów przenośnych do pracy w stacji dokowania lub poza nią, jest możliwe również w przypadku przenośnego dysku twardego, wykorzystywanego na przemian w domu i w firmie. Lista konfiguracji reprezentowanych przez poszczególne podklucze grupy Config jest odbiciem listy profili sprzętowych wyświetlanej na karcie Profile sprzętu arkusza właściwości System (w Rejestrze konfiguracje określane są 4-cyfrową liczbą szesnastkową, użytkownik korzysta z tzw. friendly names).
Przy każdym uruchamianiu Windows 95 przeglądana jest rzeczywista konfiguracja sprzętowa komputera. Jest ona dopasowywana do jednej z reprezentowanych przez profile sprzętowe. Gdy wynik dopasowywania jest pomyślny, w dalszej części inicjalizacji systemu operacyjnego wykorzystywane są dane z wybranego podklucza. Gdy konfiguracje sprzętowe są zbyt podobne, aby identyfikacja jednej z nich nastąpiła automatycznie, wyboru musi dokonać użytkownik. Jeżeli konfiguracja komputera ulegnie znaczącym zmianom, nie odpowiadającym żadnemu ze zdefiniowanych wcześnie profili -- tworzony jest nowy profil i nowy podklucz w grupie Config.
W trakcie uruchamiania komputera, gałąź HKLM\Config\profil staje się kategorią HKEY_CURRENT_CONFIG. W momencie zamknięcia systemu dane kopiowane są z powrotem -- z HKEY_CURRENT_CONFIG do HKLM\Config\profil. Kiedy więc korzystamy z Edytora Rejstru i zamierzamy zmieniać konfigurację bieżącą, zmiany wprowadzamy w kluczu HKEY_CURRENT_CONFIG. |
Nieco więcej informacji na temat wpisów odpowiadających poszczególnym konfiguracjom można znaleźć przy opisie kategorii HKEY_CURRENT_CONFIG.
Enum
Pod tym kluczem przechowywane są informacje generowane przez enumeratory urządzeń opisane w rozdziale o Plug & Play. Obejmują one takie dane, jak numer identyfikacyjny, typ, przypisaną literę dysku, nazwę producenta urządzenia, wymagane zasoby i nazwę pliku INF (jest to zasadnicze źródło zawartych tu informacji konfiguracyjnych). Są tu również dane o sterownikach sieciowych. Struktura gałęzi Enum odpowiada w dużej mierze drzewu Menedżera urządzeń, dostępnemu poprzez Panel sterowania (w widoku Wyświetl według połączeń).
W gałęzi Enum przechowywane są informacje o każdym urządzeniu, jakie kiedykolwiek było instalowane, nie tylko o tych, które są w danej chwili obecne. Będą one wykorzystane przy ponownej instalacji urządzeń. Jeżeli wielokrotnie instalowane są różne urządzenia, w gałęzi Enum może pojawić się wiele podobnych do siebie wpisów, ponumerowanych kolejnymi liczbami.
Poszczególne podklucze reprezentują różne grupy urządzeń. Warto zwrócić uwagę, że ich podział jest dość specyficzny:
BIOS. Urządzenia rozpoznawane przez BIOS typu Plug & Play. Tu znajdziemy wpisy dotyczące urządzeń zintegrowanych z płytą główną. Obejmują one procesor danych numerycznych (bardziej znany jako koprocesor arytmetyczny), rozszerzenie płyty systemowej dla PnP BIOS, zegar czasu rzeczywistego itp.
EISA. Urządzenia podłączone do magistrali EISA.
ESDI. Dyski twarde. Jeżeli kontroler dysków nie spełnia wymogów Plug & Play, większość umieszczonych tu danych jest powielona w kluczu Enum\Root\*PNP0600.
FLOP. Stacje dyskietek. Jeżeli kontroler nie spełnia wymogów Plug & Play większość umieszczonych tu danych jest powielona w kluczu Enum\Root\*PNP0700.
HTREE. Wpis o specjalnym przeznaczeniu. Trafiają tu informacje o zasobach zarezerwowanych samodzielnie przez użytkownika -- przy wykorzystaniu karty Zarezerwuj zasoby arkusza właściwości Komputer.
ISAPNP. Port odczytu danych We/Wy dla enumeratora magistrali ISA (READDATAPORT), a także urządzenia Plug & Play podłączone do tej magistrali.
MF. Kontrolery dysków twardych IDE.
Monitor. Monitory.
Network. Protokoły i usługi sieciowe oraz ich powiązania.
PCI. Urządzenia podłączone do magistrali PCI.
Root. Inne urządzenia niezgodne ze specyfikacją Plug & Play. W przeciwieństwie do wszystkich pozostałych, nie są one wykrywane automatycznie przy każdym uruchamianiu systemu operacyjnego. Ich sterowniki ładowane są wtedy, gdy znajduje się tutaj odpowiedni wpis. Nie należy sugerować się tym, że większość kluczy w tej gałęzi ma nazwę zawierającą "PNP" -- nie oznacza to wcale, że są to urządzenia Plug & Play. Dodatkowym elementem w tym kluczu jest BIOS (*PNP0C00).
SCSI. Urządzenia podłączone do magistrali SCSI.
Najciekawszą chyba informacją w tej gałęzi są nazwy plików INF poszczególnych urządzeń. Zawierają one m. in. takie dane, jak numery domyślnych przerwań i nazwy plików DLL i VXD. Niektóre z nich są bardzo rozbudowane.
Podklucze LogConfig zawierają raczej nieczytelne informacje o logicznych konfiguracjach urządzenia, czyli wykorzystywanych przerwaniach, kanałach DMA itp. Choć tutaj są one nieczytelne, w bardziej przystępnej formie znajdziemy je zarówno w arkuszach właściwości urządzeń (zakładka Zasoby), jak również ich plikach INF.
Klucz Network zawiera informacje -- analogiczne do tych, które dotyczą sprzętu -- na temat protokołów, usług i klientów sieci oraz ich powiązaniach (podklucze Bindings).
Hardware
Bliższe spojrzenie na klucz Hardware daje wrażenie pewnej niezrealizowanej do końca idei. Zawiera on zazwyczaj jedną lub więcej zdecydowanie "rachitycznych" gałęzi. Wynika to stąd, że konstrukcja Rejestru Windows 95 opiera się na rozwiązaniach z Windows NT, którego Rejestr jest bardziej rozbudowany. Klucz HKLM\Hardware nie jest wykorzystywany przez Windows 95.
Network
Gałąź Network -- podobnie jak Hardware -- również nie jest intensywnie wykorzystywana. Zazwyczaj zawiera tylko jeden klucz -- Logon. Jest w nim umieszczona domyślna nazwa (a raczej imię lub cokolwiek wybraliśmy) logującego się do sieci użytkownika, nazwa podstawowej sieci i informacje o skrypcie logowania. Edytor założeń systemowych (Policy Editor) dopisuje tutaj w trakcie instalacji nazwę biblioteki obsługującej założenia grup.
Security
Zawartość tego klucza ściśle zależy od wykorzystywanej sieci. Gdy korzystamy z sieci Windows 95 nie ma tu żadnych informacji. W innych przypadkach są tu umieszczane nazwy plików przechowujących informacje o kontach użytkowników i inne dane związane z zabezpieczeniami. Zawsze jest obecny klucz Provider, w którym przechowywana jest informacja o systemie zabezpieczeń pochodzym z systemu Windows NT Workstation, Windows NT Server lub Netware.
Software
Jak wskazuje nazwa, gałąź Software przechowuje informacje konfiguracyjne dla wszystkich aplikacji, które potrafią z Rejestru korzystać. Są tu również dane o plikach zarejestrowanych i OLE.
Stałym kluczem w gałęzi Software jest Classes. Ma on specjalne przeznaczenie, różne od pozostałych, zawiera bowiem informacje niezbędne dla OLE oraz o skojarzeniach rozszerzeń plików z aplikacjami. Jego struktura jest szerzej opisana przy kategori HKEY_CLASSES_ROOT, z którą klucz Classes jest tożsamy.
Pozostałe klucze w tej grupie tworzone są przez aplikacje -- ich liczba, nazwy i zawartość zależą od zainstalowanego oprogramowania. Warto zwrócić uwagę, że trafia tu tylko część danych z aplikacji -- te, które mają się zmieniać w zależności od zalogowanego do systemu użytkownika, trafiają do gałęzi Software w kategorii HKEY_CURRENT_USER. Typowym przykładem informacji, która powinna trafić do klucza HKLM\Software, mogą być nazwy folderów zawierających rozszerzenia aplikacji (nie zmieniają się wraz z użytkownikami).
Do kategorii HKEY_CURRENT_USER trafi natomiast informacja o folderach użytkownika.
Zalecaną formą zapisywania informacji w gałęzi Software jest tworzenie kluczy o następującej konstrukcji:
HKEY_LOCAL_MACHINE\Software\NazwaFirmy\NazwaProduktu\Wersja
Klucz Microsoft zawiera również wiele danych dotyczących konfiguracji samego Windows 95. Kilka z nich zostało opisanych już wcześniej. Pomimo hierarchicznej struktury Rejestru i zalecenia gromadzenia danych związanych z jedną aplikacją w jednym kluczu, infomacje na temat Windows 95 nie są zapisywane jedynie w kluczu Microsoft\Windows. Windows 95 tworzy takie klucze jak Software\Description (dane systemu Remote Procedure Call, czyli zdalnego uruchamiania aplikacji) i Software\SCC (przeglądarki -- Szybki podgląd), a w samym kluczu Microsoft: At Work Fax, AudioCompressionManager, Exchange, MOS (Microsoft Network), NetDDE, Rpc i Windows Messaging System. Podział ten można uznać za uzasadniony, choć chaotyczny, ale tak czy inaczej, jeżeli chcemy coś znaleźć, szukać trzeba bardzo uważnie.
Z ciekawszych kluczy w gałęzi Microsoft\Windows\CurrentVersion warto zwrócić uwagę na:
App Paths. Pełne ścieżki do aplikacji. Tak jak w DOS-ie aplikacje dopisywały nazwy swoich katalogów do wiersza path w AUTOEXEC.BAT lub definiowały zmienne środowiskowe, tak w Windows 95 dopisują informacje o swoim położeniu do Rejestru. Informacje z tego klucza wykorzystuje również polecenie start DOS-u 7.0.
Explorer\Desktop. Tutaj umieszczone są klucze odpowiadające specjalnym ikonom na pulpicie, takim jak Poczta otrzymana, The Microsoft Network, Kosz i instalowana przez MS Plus! -- The Internet. W tym miejscu zawsze zachowują one swoje pierwotne nazwy. 32-cyfrowe CLSID wskazują procedury obsługi specyficznych folderów tych narzędzi.
Explorer\ShellFolders. Wskazuje różnego rodzaju foldery specjalne, wykorzystywane w pracy powłoki (shella) systemu. Najciekawsze z nich wskazują pulpit (Desktop), domyślny folder, w którym umieszczane będą skróty do programów w menu Start (Programs), folder tworzący menu Start (Start Menu) oraz folder Autostart (Startup). Zmiana tego ostatniego pozwoli nieco "odśmiecić" menu Start.
Explorer\Tips. Zawiera porady dnia. Można się nieco zabawić wymieniając je na inne (na stronie ...).
Fonts. Informacja o zainstalowanych czcionkach skalowalnych (czyli o dowolnie dobieranej wielkości) i nazwach plików, w których są zapisane. Jest to odpowiednik sekcji Fonts w pliku SYSTEM.INI. Windows szuka czcionek podfolderze FONTS.
Fontsize. Informacja o zainstalowanych czcionkach nieskalowalnych i nazwach plików, w których są zapisane. Są one podzielone na grupy wykorzystywane w zależności od rozdzielczości ekranu.
FS Templates. Szablony optymalizacji systemu plików VFAT.
MS-DOSOptions. Zawiera dane wykorzystywane przez okno konfiguracji trybu MS-DOS. Arkusz właściwości aplikacji lub skrótu do aplikacji MS-DOS zawiera na zakładce Program przycisk Zaawansowane. Kiedy w otwieranym przezeń okienku wybierzemy opcję Określ nową konfigurację MS-DOS, w znajdujących się niżej okienkach pojawia się propozycja specyficznych dla aplikacji plików CONFIG.SYS i AUTOEXEC.BAT -- pochodzi ona właśnie z tego klucza. Również na podstawie informacji zapisanych w tej części Rejestru wyświetlane są dalsze opcje dostępne po klinięciu przycisku Konfiguracja.
Network. Zbiór informacji o udostępnionych zasobach sieciowych i dane do obsługi sieci w trybie rzeczywistym.
Policies. Ograniczenia i wymagania nakładane zazwyczaj Edytorem założeń systemowych. Stanowią wówczas część większej całości, jaką jest określenie środowiska pracy i uprawnień użytkowników.
Run, RunOnce, RunServices i RunServicesOnce. Umożliwiają automatyczne uruchamianie aplikacji.
Screen Savers. Konfiguracje wygaszaczy ekranu. Warto zauważyć, że nie należą one do profili użytkowników, ale są wspólne. Decyduje o tym umieszczenie ich w kategorii HKEY_LOCAL_MACHINE, a nie HKEY_CURRENT_USER.
Uninstall. Przyjrzenie się zawartości tego klucza ujawnia na czym polega niezwykle poważnie wyglądający mechanizm sprawnego odinstalowywania programów i ich części w Windows 95.
Klucze, klucze, kolejne klucze...
System
Konfiguracje programów obsługi (sterowników) i usług, które mogą być ładowane z Windows 95. Są one poukładane w grupy -- control sets.
Informacje konfigurujące inicjalizację Windows 95 znajdują się w gałęzi CurrentControlSet. Zawiera ona dwa klucze: Control i System. Pierwszy zawiera dane o różnych podsystemach Windows 95, drugi -- informacje związane ze sprzętem i programami obsługi (sterownikami).
Popełnienie błędu przy edycji danych zawartych w kluczu HKLM\System może wyjątkowo łatwo doprowadzić do niemożności ponownego uruchomienia Windows 9x. |
Control
Ta obszerna gałąź grupuje takie dane, jak parametry niezbędne do uruchomienia i zamknięcia systemu, konfigurację instalowalnego systemu plików, rozkłady klawiatury, zainstalowane drukarki, dane dla stref czasowych etc. Ilość umieszczanych tu kluczy nie jest stała, poniżej opisane są najczęściej spotykane:
ComputerName. Nazwa komputera, normalnie określana poprzez moduł Sieć w Panelu sterowania.
FileSystem. Ustawienia systemu plików. Znajdziemy tu między innymi znany "fascynatom SYSTEM.INI" parametr VirtualHDIRQ i odpowiednik 32BitDiskAccess -- ForceRMIO (całkowicie wyłączający sterowniki 32-bitowe). Są tu przechowywane także pozostałe ustawienia z arkusza właściwości systemu plików wywoływanego poprzez ikonę System Panelu sterowania. Jest tu również konfiguracja programu kompresji dysku DriveSpace.
IDConfigDB. Identyfikator bieżącego profilu sprzętowego i nadane przez użytkowników nazwy profili.
InstalledFiles. Dane o zainstalowanych na dysku systemowym plikach systemu operacyjnego.
Keyboard layouts. Lista bibliotek DLL dla klawiatur narodowych i specjalnych. Każdy klucz zawiera nazwę biblioteki i klawiatury.
MediaProperties. Dane konfiguracyjne dla urządzeń multimedialnych i joysticka.
MediaResources. Dane konfiguracyjne dla zasobów wykorzystywanych przez urządzenia multmedialne i joystick. Znajdują się tu głównie nazwy sterowników i ich instalatorów oraz nazwy, z jakich korzysta użytkownik.
NetworkProvider. Konfiguracje sterowników sieciowych.
Nls. Konfiguracje ustawień regionalnych. Aby dołączyć do Windows 95 jakiekolwiek własne sterowniki i konfiguracje, należy informację o nich umieścić przede wszystkim tutaj. Stąd pobierane są informacje, że 403h oznacza język kataloński, a informacje o stronie kodowej 1250 można znaleźć w pliku CP_1250.NLS. Na tej podstawie tworzona jest też lista w okienku dialogowym.
PerfStats. Opisy zmieniających się dynamicznie wartości opisujących pracę systemu operacyjnego -- tych samych, które udostępnia Monitor systemu. Jeżeli często korzystamy z tego narzędzia, to możemy tutaj zmienić nazwy wskaźników.
Print. Informacje o zainstalowanych drukarkach i konfiguracji podsystemu drukowania.
-- Environments. Zawiera podklucze definiujące konfigurację zainstalowanych sterowników i procesorów drukowania dla różnych środowisk.
-- Monitors. Zawiera podklucze wskazujące biblioteki DLL monitorujące drukowanie do różnych grup urządzeń. Typowe z nich to Microsoft Fax Monitor, PJL Language Monitor i PostScript Language Monitor.
-- Ports. Zawiera podklucze odpowiadające dostępnym portom drukarek. FAX: i PUB: wykorzystywane są przez sterownik faksu.
-- Printers. Konfiguracje drukarek.
-- Providers. Opisy bibliotek DLL wykorzystywanych do drukowania w sieci.
PwdProvider. Opisy bibliotek DLL obsługujących zabezpieczenia hasłem, czyli głównie nazwy plików i wywołań procedur. Typowe klucze to: MSNP32, NWNP32 i SCRSAVE reprezentujące odpowiednio: Micorosft Networking, czyli sieć zapewnianą przez Windows 95, serwery Novell Netware oraz wygaszacz ekranu.
ServiceProvider. Klucz niemal nie używany. Oprogramowanie klienta Netware i TCP\IP dopisuje tutaj informacje o swojej obecności.
SessionManager. Łaty (patches) dla różnych aplikacji, umożliwiające ich pracę w środowisku Windows 95 (AppPatches), lista aplikacji, które sprawiają problemy w Windows 95 (CheckBadApps), lista bibliotek DLL, których numery wersji powinny być sprawdzone (CheckVerDLLs i WarnVerDLLs), lista zmian do wprowadzenia w plikach INI (HackIniFiles) oraz lista bibliotek DLL zgodnych z Windows 95 (Known16DLLs i KonwnDLLs).
Shutdown. Klucz wykorzystywany sporadycznie i tymczasowo, na przykład przez Instalator, który zostawia w nim informację SetupProgramRan. Przy następnym uruchomieniu Windows wartość ta jest usuwana.
TimeZoneInformation. Konfiguracja bieżącej strefy czasowej.
Update. Jeżeli Windows 95 było instalowane na Windows 3.x, jest tu przechowywana wartość 1. Jeżeli Windows 95 był zainstalowny w innym folderze lub Windows 3.x nie było wcześniej instalowane wartość ta wynosi 0.
VMM32Files. Nazwy plików VxD (sterowników wirtualnych) dołączonych do VMM32.VXD.
WinBoot. Klucz odczytywany w tym samym czasie, co ustawienia w pliku MSDOS.SYS. Zawiera takie parametry, jak na przykład wymagany przez adaptery SCSI DoubleBuffer, powodujący załadowanie sterownika DBLBUFF.SYS.
Services
Ten podklucz w grupie CurrentControlSet zawiera dane o klasach urządzeń i programach obsługi (sterownikach), które będą ładowane przy inicjalizacji systemu operacyjnego. Typowe grupy wpisów to:
Nazwa_agenta. Zawiera podklucze dla zainstalowanych agentów systemowych. Typowe to: sieciowy agent kopii zapasowych, SNMP, Microsoft Network Monitor.
Arbitrators. Zawiera podklucze dla tzw. arbitratorów zasobów wykorzystywanych przez mechanizmy Plug & Play: pamięci (AddrArb), DMA (DMAArb), I/O (IOArb) i IRQ (IRQArb). Określają one zasoby zarezerwowane.
Class. Zawiera podklucze dla wszystkich klas i poszczególnych urządzeń obsługiwanych przez Windows 9x. Zawierają one opisy, nazwy plików instalujących urządzenia i plików INF, sterowników oraz inne dane niezbędne do utworzenia podstawowej konfiguracji. Modyfikując umieszczone tutaj wpisy można zmienić wykorzystywane programy obsługi.
MSNP32, NWNP32. Zawierają podklucze dla programów obsługi sieci. Przechowują między innymi informacje wykorzystywane do logowania i zabezpieczania hasłem oraz konfigurację.
RemoteAccess. Konfiguracja modułu zdalnego dostępu do komputerów, nazwy bibliotek DLL oraz lista obsługiwanych protokołów wraz z ich opisem i konfiguracją.
VxD. Zawiera podklucze dla wszystkich sterowników wirtualnych. Zawierają one ich dane inicjalizacyjne oraz opisy. Statyczne VxD (które nie mogą być dynamicznie ładowane i usuwane z pamięci) mają tutaj wpis StaticVxD.
Winsock. Konfiguracja Windows Sockets, mechanizmu wykorzystywanego do łączenia z Internetem.
HKEY_CURRENT_CONFIG - bieżąca konfiguracja sprzętowa
Miejsce przechowywania danych dla bieżącej konfiguracji sprzętowej komputera. Są tu przechowywane jedynie informacje podstawowe, niezbędne do uruchomienia systemu. Jak już wspomniano -- istnienie kategorii HKEY_CURRENT_CONFIG jest jedynie tymczasowe. Zbiór danych dla wszystkich konfiguracji sprzętowych znajdziemy w gałęzi HKEY_LOCAL_MACHINE\Config. Tam też należy dokonywać ewentualnych zmian w konfiguracjach innych niż bieżąca.
Display. Podstawowe dane dotyczące obsługi ekranu: pliki czcionek rastrowych, głębia koloru, rozdzielczość obrazu (określona na wiele różnych sposobów). Parametry te można zmieniać za pomocą narzędzia Ekran z Panelu sterowania (zakładka Ustawienia). Jest tu też zapisana informacja o tym, czy mysz ma zostawiać za sobą ślad (MouseTrails) -- umieszczenie jej tutaj odbija się na użytkownikach tym, że mogą tej opcji używać wszyscy albo nikt.
Enum. Dane o enumerowanych elementach systemu w strukturze analogicznej do HKLM\Enum.
System. Ten klucz równie dobrze można opisać jako System\CurrentControlSet\Control\Print\Printers, ponieważ dopiero ten ostatni klucz zawiera jedną informację i zróżnicowane podklucze. Jest to wskazanie drukarki domyślnej i lista zainstalowanych sterowników drukarek.
HKEY_USERS - konfiguracje użytkowników
Kluczem, który w tej kategorii występuje zawsze jest .Default. Określa on domyślną konfigurację użytkownika. Jeżeli korzystamy z opcji zapamiętywania różnych konfiguracji w zależności od tego, kto korzysta z komputera, czyli tzw. profili użytkowników -- każdemu z nich odpowiada klucz w kategorii HKEY_USERS.
W momencie logowania użytkownika do systemu operacyjnego, zawartość odpowiedniego klucza przenoszona jest do kategorii HKEY_CURRENT_USER. W przypadku, gdy nie korzystamy z wielu profili użytkowników lub użytkownik nie posiada jeszcze własnego, wykorzystywany jest klucz .Default. Przenoszenie "w drugą stronę" następuje w momencie wylogowania się użytkownika lub zamknięcia systemu.
Jeżeli w konfiguracji jednego z użytkowników zamierzamy wprowadzić zmiany należy to robić we właściwej kategorii. Dla użytkownika aktualnie zalogowanego jest to HKEY_CURRENT_USER, dla pozostałych HKEY_USERS\użytkownik. Warto zauważyć, że profil użytkownika aktualnie zalogowanego pochodzić może z serwera sieci, czyli spoza lokalnego Rejestru.
HKEY_CURRENT_USER
- bieżąca konfiguracja użytkownika
Znaczenie tej kategorii nakreślono już wcześniej -- zawiera ona to, co dla każdego użytkownika zapamiętywane jest indywidualnie: kolory, prawa dostępu, listy ostatnio używanych plików, niektóre informacje konfiguracyjne dla aplikacji.
Jeśli kiedykolwiek podobne parametry, jak ustawienia aplikacji czy pulpitu, zostaną zapisane w dwóch kategoriach: HKEY_LOCAL_MACHINE i HKEY_CURRENT_USER, uznawane są dane zapisane w tej drugiej (w pierwszej są domyślne, w drugiej -- dla konkretnego użytkownika). |
W kluczach HKEY_CURRENT_USER i HKEY_USERS\użytkownik znajdziemy następujące grupy danych:
AppEvents. Definiuje sposób "udźwiękowienia" Windows 95.
-- W podkluczu EventLabels przechowuje nazwy zdarzeń możliwych do udźwiękowienia w takiej formie, w jakiej przedstawiane są użytkownikowi. MailBeep jest tu rozwijany jako "Powiadomienie o nowej poczcie".
-- Podklucz Schemes zawiera informacje o tzw. schematach dźwiękowych zainstalowanych wraz z Windows 95 lub utworzonych przez użytkownika. Schemes\Names określa ich czytelne nazwy -- .Default jest tu rozwijane jako "Domyślne dla Windows". Schemes\Apps\aplikacja\zdarzenie\schemat to informacja najważniejsza -- jaki dźwięk usłyszymy w momencie zajścia określonego zdarzenie przy wybranym schemacie dźwiękowym. .current oznacza schemat aktualnie obowiązujący, który wcale nie musi mieć określonej nazwy.
Dane zapisywane w tej gałęzi należy zmieniać korzystając z narzędzia Dźwięki z Panelu sterowania.
Control Panel. Tutaj znajdziemy podklucze o nazwach odpowiadających ikonom w Panelu sterowania. Nie wszystkie, ale -- zgodnie z przeznaczeniem tej kategorii -- te, które definiują prywatne środowisko pracy użytkownika. Ciekawostką, która nie jest dostępna poprzez Panel sterowania, są szczegółowe definicje kolorystyki "trójwymiarowych" elementów ekranu.
InstallLocationsMRU. Wyjątkowo prosty klucz przechowujący informacje o ścieżkach dostępu do ostatnio wykorzystywanych plików instalacyjnych. Dotyczy to wyłącznie instalacji elementów wykonywanej przez Instalator Windows 9x.
Keyboard layout. Określa wykorzystywane przez użytkownika układy klawiatury. Stosuje przy tym liczby określone w kluczu HKLM\System\CurrentControlSet\control\keyboard layouts.
-- preload -- języki klawiatur ładowanych do pamięci, na przykład "Angielski (Amerykański)" i "Polski"
-- substitutes -- układ klawiatury, jeżeli jest inny niż domyślny dla danego języka; gdy korzystamy z układu "Polski (programisty)", tutaj pojawi się wskaźnik do niego, gdyż domyślny jest układ maszynistki.
Network. Prawie cała zawartość tego klucza zależy od zainstalowanej sieci. Określa on istniejące i ostatnio wykorzystywane połączenia sieciowe. Stałym kluczem jest Recent, w którym zapamiętywane są ostatnio wykorzystywane dyski sieciowe. Klucz Persistent określa stałe połączenia sieciowe.
RemoteAccess. Tutaj przechowywane są informacje wykorzystywane do zdalnego dostępu do innych komputerów.
Software. Miejsce przeznaczone do przechowywania tych danych konfiguracyjnych aplikacji, które powinny zmieniać się wraz z użytkownikiem (inne dane konfiguracyjne mają analogiczne miejsce w kategorii HKEY_LOCAL_MACHINE). Klucz ten wykorzystują oczywiście nie wszystkie aplikacje. Przechowywanie danych w Rejestrze, nie mówiąc już o podziale ich na dwa klucze, z których jeden związany jest z komputerem, a drugi z użytkownikiem, zależy wyłącznie od woli producenta aplikacji. Zwrócić warto uwagę na podklucz Microsoft\MS Setup (ACME)\User Info, gdzie przechowywane są imię, nazwisko i nazwa firmy użytkownika. Dane te wykorzystywane są przez programy instalacyjne i przez aplikacje w trakcie ich codziennej pracy jako dane domyślne.
Podobnie jak w kluczu HKEY_LOCAL_MACHINE, również i w HKEY_CURRENT_USER\Software producent Windows 95 nie jest zbyt uporządkowany. Znajdziemy tu kilka tworzonych wraz z instalacją Windows 95 kluczy:
Microsoft. Podstawowy klucz konfiguracji aplikacji firmy Microsoft.
SCC. Klucz firmy Systems Compatibility Co. Jest to firma, od której zakupiona została technologia przeglądania plików, wcześniej wykorzystywana w programie Outside In.
WORDPAD.INI. Konfiguracja WordPada.
HKEY_DYN_DATA - dane dynamiczne
Ostatnia kategoria Rejestru jest najbardziej specyficzna. Nigdy nie jest bowiem przechowywana na dysku twardym -- ten nośnik jest zbyt powolny dla przechowywanych w niej danych. Jak wskazuje nazwa są to dane dynamiczne, na bieżąco aktualizowane. Są one zebrane w dwie grupy:
Config Manager\Enum. Odbicie dostępnego użytkownikowi poprzez Panel sterowania (ikona System) Menedżera urządzeń. Każdy z podkluczy odpowiada jednemu urządzeniu i zawiera cztery wartości: -- Allocation -- proces (aplikacja), który kontroluje urządzenie, -- HardwareKey -- wskazanie na związany z urządzeniem klucz gałęzi HKLM \Enum, -- Problem -- wartość 0 lub numer błędu, jaki został zgłoszony przez urządzenie, -- Status -- stan urządzenia.
PerfStats. Wartości, które można przeglądać za pomocą Monitora systemu, który jest zresztą dużo wygodniejszy. Reprezentowane są one w pięciu podkluczach. Liczba wartości może się wahać w granicach 24-39 lub nawet więcej, w zależności od zainstalowanych sieci. Trzy podstawowe grupy wskaźników to KERNEL, VMM i VFAT.
Do grupy PerfStats swoje własne dane mogą dopisywać różne VxD, również spoza systemu operacyjnego oraz innych producentów. Wówczas w Monitorze systemu pojawią się dodatkowe opcje.
Registry Help -- dodatkowe informacje o Rejestrze Windows w formacie Windows Help (po angielsku). Kopiuj Reghelp.zip (200 kB).
Co ciekawego znajdziesz w Rejestrze?
Choć podstawowym zaleceniem dla użytkowników jest unikanie bezpośredniej edycji Rejestru, niejednego niewątpliwie kusi perspektywa sięgnięcia do serca konfiguracji Windows. Niestety, trudno cokolwiek odnaleźć w konfiguracyjnej bazie danych bez wskazówek. Nieco dalej przedstwimy szczegółowy opis poszczególnych kategorii. Zacznijmy jednak od tego, co proste i ciekawe.
Modyfikowanie rejestracji typów plików
Rejestrowaniu plików poświęcona jest cała kategoria HKEY_CLASSES_ROOT. Zawiera ona wszelkie informacje, jakie ukazują się naszym oczom po wybraniu z okna Eksploratora Widok | Opcje | Typy plików.
W kategorii tej znajdziemy trzy grupy kluczy:
Rozszerzenia plików. Wskazują definicję klasy związaną z rozszerzeniem pliku. Tę grupę na załączonym przykładzie reprezentują dwa pierwsze klucze .xls i .zip.
Definicje klas. Dane wykorzystywane przy obsłudze obiektu (może to być plik lub inny obiekt OLE) przez shell (powłokę) Windows 95 i mechanizm OLE. Podklucze reprezentują tu między innymi polecenia, jakie ukażą się w menu podręcznym obiektu -- tutaj znajdziemy m. in. wywołania programów i komendy DDE (wewnętrznego języka komunikacji między programami) realizujące te polecenia. Definicje klas stanowią większość w przykładowym fragmencie kategorii HKCR.
Klucze specjalne. Uzupełniają one definicje klas. Mają różne przeznaczenie. Z tej grupy można wskazać identyfikatory klas OLE (CLSID) i opisy klas DAO (Data Access Objects) wykorzystywane przez mechanizm ODBC (dostęp do baz danych).
Jak rejestrowane są pliki?
Schemat rejestracji pliku najlepiej prześledzić na wybranym przykładzie, którym może być choćby plik BMP. Najpierw znajdźmy klucz HKCR\.bmp. Zawiera on wartość Paint.Picture -- jest to nazwa klasy. Może ona pochodzić z zaimportowanego pliku REG z danymi rejestracyjnymi aplikacji, być nadana przez użytkownika poprzez menu Widok | Opcje | Typy plików z okna Eksploratora lub też w ogóle nie występować, jeżeli powiązanie rozszerzenia z poleceniem otwierającym plik pochodzi z Windows 3.x.
Kluczowi o nazwie odpowiadającej rozszerzeniu pliku towarzyszyć mogą dalsze "gałęzie". Do klucza .bmp "podwieszony" jest ShellNew, co wskazuje tzw. rozszerzenie shella (powłoki). Zawiera ono pusty wpis NullFile. Wprowadzenie takiej konstrukcji daje ciekawy efekt -- Windows 95 wprowadza plik na listę dostępnych do szybkiego utworzenia.
Oznacza to, że nazwa klasy (zazwyczaj w wersji bardziej przyjaznej niż Paint.Picture, ale o tym dalej) będzie dołączona do menu, jakie ukazuje się po wybraniu w oknie Eksploratora Plik | Nowy lub podwójnym kliknięciu na pulpicie. Również po zerwaniu połączenia skrótu z plikiem, użytkownik będzie pytany, czy chce utworzyć nowy o tej samej nazwie i położeniu. Opcja NullFile decyduje o tym, że nowy plik będzie miał zerową wielkość. W przypadku rozszerzenia BFC, odpowiadającego Aktówce, zamiast NullFile mamy dość rozbudowaną komendę (Command).
Właściwy opis klasy Paint.Picture znajdziemy w kluczu HKCR\Paint.Picture.
Po kliknięciu na nim pierwsze, co widzimy, to "ludzka" nazwa klasy -- taka, jaką widzimy w oknie Opcje Eksploratora. W tym przypadku jest to Obraz - mapa bitowa.
Uwaga: Jest kilka rodzajów plików, których rozszerzeń Eksplorator Windows 95 nigdy nie pokazuje, nawet przy wyłączonej opcji Ukryj rozszerzenia MS-DOS dla zarejestrowanych typów plików. Należą do nich: skrót do aplikacji/dokumentu (LNK), skrót do aplikacji MS-DOS (PIF), wycinek (SHS) i skrót do fragmentu dokumentu (SHB). Odpowiadają im klasy lnkfile, piffile, ShellScrap i DocShortcut widoczne w kategorii HKCR. Dzieje się tak dzięki umieszczeniu wartości typu tekstowego NeverShowExt o zerowej długości w kluczu definiującym klasę. Wartość tę można dodawać do dowolnych klas lub usuwać z miejsc, w których domyślnie została umieszczona (wartość ta nie występuje w kluczu Paint.Picture).
Pierwszym w galerii podkluczy Paint.Picture jest CLSID (Class Identifier), czyli identyfikator klasy. Jest to właściwie trzecie już po "ludzkim" Obraz - mapa bitowa i "bardziej wewnętrznym" Paint.Picture określenie tej samej klasy. Tworzy je ciąg 32 liczb (w zapisie szesnastkowym) ujętych w nawiasy klamrowe. Wskazuje on odpowiedni podklucz w grupie HKCR\CLSID, który jeszcze precyzyjniej opisuje klasę, wskazując odpowiednią bibliotekę procedur do jej obsługi.
Znaczenie drugiego klucza jest dość proste -- DefaultIcon znaczy po angielsku ikona domyślna. Przyglądając się bliżej danym wartości w tym kluczu możemy naocznie stwierdzić, że długie nazwy plików nie są wykorzystywane przez system operacyjny. Drugą pouczającą obserwacją może być to, że jeżeli plik zawiera kilka ikon, to tę, którą chcemy wybrać, wskazujemy liczbą po przecinku.
Po kluczu określającym domyśną ikonę obiektu następują dwa, które wykorzystywane są przez mechanizmy OLE. Klucz protocol zawiera w naszym przypadku jedynie informację StdFileEditing, co umożliwia edycję obiektu w innych aplikacjach przy wykorzystaniu mechanizmów OLE.
Ostatni, często występujący parametr to shell. Zawiera on definicje poleceń, które wykonują podstawowe działania na obiekcie, a dostępne są po kliknięciu prawym przyciskiem myszy. Normalną drogą tworzenia ich jest rejestracja klasy obiektu wykonywana podczas instalowania obsługującej go aplikacji. Wpisy te można również modyfikować korzystając z zakładki Typy plików okna opcji Eksploratora.
Uzupełnianie rejestracji -- jedno rozszerzenie więcej...
Jak uzupełnić zarejestrowaną klasę o kolejne rozszerzenie? Okno opcji Eksploratora (Typy plików) tego nie umożliwia. W oknie edycji typu pliku nie ma możliwości dopisania nowego rozszerzenia. Stworzenie nowego typu o tej samej nazwie tworzy drugą, odrębną klasę. Można oczywiście stworzyć całkowicie nową klasę, obejmującą rozszerzenia, które chcemy dodać. Wydaje się jednak, że w istotnych przypadkach klas rejestrowanych przez duże aplikacje, sam wpis rejestracyjny jest tak rozbudowany, że jego przepisanie jest nie tylko czasochłonne, ale też grozi popełnieniem błędów.
Często problem przyporządkowania rozszerzenia do istniejącej już klasy pojawia się po zainstalowaniu, a następnie odinstalowaniu nowej aplikacji. Może ona przyporządkować nasze przykładowe rozszerzenie BMP do własnej klasy. Przy odinstalowywaniu aplikacji, skojarzenie z nową klasą często pozostaje, co powoduje, że podwójne klinięcie na pliku nie powoduje już otwarcia żadnej aplikacji. Przykład takiej sytuacji przedstawiony jest powyżej -- skojarzenie rozszerzenia BMP z klasą EditorImage wprowadził program zainstalowany jedynie tymczasowo. Wówczas najbardziej wskazaną czynnością jest sięgnięcie do rejestru i odtworzenie powiązania. Czynności do wykonania są tu podobne jak przy dodawaniu nowego rozszerzenia do istniejącej klasy.
Jedynym rozwiązaniem jest w takim wypadku bezpośrednia edycja Rejestru. Zaczynamy od znalezienia wpisu kojarzącego rozszerzenie z nazwą klasy -- tej, z którą chcemy skojarzyć rozszerzenie nowe (lub już skojarzone z inną klasą). Zapisujemy lub zapamiętujemy tę nazwę (np. Paint.Picture). Następnie tworzymy lub zmieniamy wpis kojarzący nasze nowe rozszerzenie z tą właśnie nazwą (np. BMP z Paint.Picture). W przypadku, gdy rozszerzenie to nie miało wcześniej swojego wpisu w Rejestrze, na tym kończymy. Jeżeli było ono już skojarzone z inną klasą, pojawia się jeszcze kwestia usunięcia jej opisu. Możemy (choć nie musimy) zrobić to tylko wtedy, gdy nie były z nią skojarzone inne rozszerzenia. Sprawdzenie tego umożliwia funkcja przeszukiwania Rejestru (wystarczy przeszukać Wartości pod kątem nazwy klasy, którą chcemy usunąć).
Szybki podgląd bitmap
Przeglądanie klasy Paint.Picture możemy zakończyć wpisaniem w kluczu DefaultIcon wartości %1 w miejsce standardowej C:\Progra~1\Access~1\MSPAINT.EXE,1. Wynik takiego działania widać na ilustracji. Dzięki wpisaniu odpowiedniej wartości w Rejestrze uzyskujemy szybki podgląd bitmap, które występują jako ikony.
Zmiana ikonek systemowych
Można zmienić ikony np. przypisane do napędów i wiele innych w systemie. Odpowiednie wpisy znajdują się w kluczu HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\explorer\Shell Icons
Jeśli utworzymy nową wartość 8 i w polu Dane wpiszemy ścieżkę i nazwę dowolnego pliku .ICO to napędy będą miały nową ikonkę.
Jednak dużo wygodniej zmieniać ikony systemowe np. przy pomocy darmowego programu WinChanger, który możesz pobrać ze strony Narzędzi.
W zakładce Icons uzyskasz łatwy dostęp do wskazywania nowych ikonek systemowych!
Ograniczenia uprawnień użytkowników
Jeżeli z komputera korzysta wielu użytkowników, warto zabezpieczyć system przed wprowadzaniem niebezpiecznych zmian w jego konfiguracji. Nie muszą to być zmiany celowe, ale zostawianie słabo znającego Windows 9x użytkownika samego przy komputerze zawsze niesie ze sobą potencjalną szansę małej (lub dużej) katastrofy.
Ograniczenia uprawnień użytkowników można wprowadzać w kilku kluczach. Pierwszy z nich dotyczy całego komputera, niezależnie od tego, jaki użytkownik jest zalogowany i związany jest z pracą w sieci.
HKLM\Software\Microsoft\Windows\CurrentVersion\Policies\Network.
HideSharePwds -- ukrywanie haseł udostępniania poprzez zastąpienie ich na ekranie gwiazdkami.
DisablePwdCaching -- wyłączenie buforowania haseł.
AlphanumPwds -- wymaganie korzystania z hasła alfanumerycznego.
MinPwdLen -- minimalna długość hasła.
NoDialIn -- brak możliwości odbierania telefonu.
NoFileSharing -- brak możliwości udostępniania plików innym użytkownikom.
NoPrintSharing -- brak możliwości udostępniania drukarek innym użytkownikom.
Pozostałe klucze zapisane są w kategorii użytkownika (HKEY_CURRENT_USER albo HKEY_USERS\użytkownik).
HKCU\Software\Microsoft\Windows\CurrentVersion\Policies\System
NoDispCPL -- wyłączenie dostępu do właściwości ekranu.
NoDispBackgroundPage -- wyłączenie dostępu do zakładki właściwości ekranu Tło.
NoDispScrSavPage -- wyłączenie dostępu do zakładki właściwości ekranu Wygaszacz ekranu.
NoDispAppearancePage -- wyłączenie dostępu do zakładki właściwości ekranu Wygląd.
NoDispSettingsPage -- wyłączenie dostępu do zakładki właściwości ekranu Ustawienia.
NoSecCPL -- wyłączenie dostępu do arkusza właściwości Hasła.
NoPwdPage -- wyłączenie dostępu do zakładki Zmień hasło arkusza Hasła.
NoAdminPage -- wyłączenie dostępu do zakładki Zdalne administrowanie arkusza Hasła.
NoProfilePage -- wyłączenie dostępu do zakładki Profile użytkownika arkusza Hasła.
NoDevMgrPage -- wyłączenie dostępu do zakładki Menedżer urządzeń arkusza System.
NoConfigPage -- wyłączenie dostępu do zakładki Profile sprzętu arkusza System.
NoFileSysPage -- wyłączenie dostępu do arkusza właściwości System plików.
NoVirtMemPage -- wyłączenie dostępu do arkusza właściwości Pamięć wirtualna.
DisableRegistryTools -- wyłączenie dostępu do Edytora Rejestru.
HKCU\Software\Microsoft\Windows\CurrentVersion\Policies\Network
NoNetSetup -- wyłączenie dostępu do właściwości sieci.
NoNetSetupIDPage -- wyłączenie dostępu do zakładki właściwości sieci Identyfikacja.
NoNetSetupSecurityPage -- wyłączenie dostępu do zakładki właściwości sieci Kontrola dostępu.
NoFileSharingControl -- brak kontroli nad współużytkowaniem plików.
NoPrintSharingControl -- brak kontroli nad współużytkowaniem drukarek.
NoEntireNetwork -- brak folderu Cała sieć.
NoWorkgroupContents -- brak składników grup roboczych w Otoczeniu sieciowym.
HKCU\Software\Microsoft\Windows\CurrentVersion\Policies\Explorer
NoPrinterTabs -- ukrycie zakładek Ogólne i Szczegóły arkusza właściwości drukarki.
NoDeletePrinter -- brak możliwości usuwania drukarek.
NoAddPrinter -- brak możliwości dodawania drukarek.
NoStartMenuSubFolders -- ukrywa podfoldery menu Start.
NoRun -- brak polecenia Uruchom.
NoSetFolders -- brak polecenia Ustawienia w menu Start.
NoSetTaskbar -- brak właściwości paska zadań.
NoFind -- brak polecenia Znajdź.
NoDrives -- brak dostępu do dysków lokalnych (uaktywnienie wymaga podania wartości binarnej zawierającej tyle jedynek, ile kolejnych liter dysków ma zostać ukrytych).
NoNetHood -- brak dostępu do otoczenia sieciowego.
NoDesktop -- brak pulpitu.
NoClose -- brak możliwości zamknięcia Windows.
NoSaveSettings -- wyłączone zachowywanie ustawień przy wyjściu.
RestrictRun (klucz) -- lista dozwolonych aplikacji.
HKCU\Software\Microsoft\Windows\CurrentVersion\Policies\WinOldApp
Disabled -- brak możliwości uruchamiania aplikacji DOS-u.
NoRealMode -- brak możliwości uruchamia aplikacji DOS-u w trybie pojedynczej aplikacji.
Uaktywnienie wymienionych wartości wymaga dopisania ich do odpowiednich kluczy i nadania im wartości binarnej 1.
Narzędziem przeznaczonym do nadawania uprawnień użytkownikom jest Edytor założeń systemowych dostępny na CD-ROM-ie Windows 95 w folderze ADMIN\APPTOOLS\POLEDIT\. Zapewnia on wygodny dostęp do wszystkich wymienionych opcji przy pomocy graficznego interfejsu (patrz ilustracja).
Blokowania odpowiednich opcji dokonasz też poprzez kliknięcie na odpowiedni plik .REG, który zablokuje, bądź odblokuje daną opcję.
Przygotowaliśmy odpowiedni szablon, w którym wszystkie opcje są odblokowane. Aby którąś zablokować należy zmienić wartość z 0 na 1 np:
"NoDispCPL"=hex:01,00,00,00
Jeżeli zmiany nie dotyczą całego systemu, czyli nie są wprowadzane w kategorii HKEY_LOCAL_MACHINE, należy pamiętać, że:
Konfigurację użtytkownika korzystającego w danym momencie z systemu zmieniamy w kategorii HKEY_CURRENT_USER.
Konfiguracje innych użytkowników zmieniamy w kluczach HKEY_USERS\identyfikator_użytkownika
Edytor Uprawnień 1.2 -- darmowy i wygodny program napisany specjalnie dla naszego serwisu. Edytor uprawnień umożliwia ograniczanie uprawnień użytkowników systemu Windows. Dokonywane zmiany dotyczą aktualnego użytkownika. Niektóre ustawienia działają dopiero po ponownym zalogowaniu.
Program może być przydatny np wtedy gdy z komputera korzystają też dzieci, które przypadkowo mogą coś skasować itp.
Podczas pierwszego uruchomienia program prosi o podanie hasła dostępu, które będzie niezbędne do kolejnego uruchomienia Edytora uprawnień. Dzięki temu niepowołane osoby nie będą mogły edytować swoich uprawnień. Pamiętaj, by przed dokonywaniem zmian zapewnić sobie dostęp do Edytora uprawnień z Menu Start (Instalator automatycznie robi skrót w Menu Start).
Zabezpieczenie przed anonimowym logowaniem
Kiedy Windows 95 pracuje w sieci lub korzystamy z możliwości przypisania indywidualnych konfiguracji różnym użytkownikom, przy uruchamianiu systemu włącza się procedura tzw. logowania, oznaczająca podanie identyfikatora (imienia) i hasła użytkownika. Po kliknięciu OK Windows się uruchamia. Jest to procedura dość prosta i oczywista. Nie jest chyba jednak do końca jasne, co dzieje się, kiedy w okienku logowania podamy nie znany jeszcze systemowi identyfikator (na przykład "Kubuś Puchatek") albo klikniemy Cancel.
Jak już napisano wcześniej, konfiguracje poszczególnych użytkowników zapisywane są w kategorii HKEY_USERS w kluczach odpowiadających ich identyfikatorom. W kategorii tej znajdziemy również klucz dodatkowy -- .Default. Odpowiada on konfiguracji domyślnej, wykorzystywanej wówczas, gdy nie można użyć żadnej z pozostałych.
Gdy wiemy o istnieniu tego klucza, możemy wprowadzić dwie innowacje:
Odpowiednio ograniczyć uprawnienia użytkownika domyślnego, wykorzystując klucz Policies. Możemy również wprowadzić dowolne inne zmiany -- to już zależy od naszych potrzeb.
Zmienić nazwę klucza .Default. Wówczas logowanie anonimowe nie będzie w ogóle możliwe.
Uwaga: Jeżeli nie korzystamy z opcji indywidualnych konfiguracji użytkowników, w kategorii HKEY_USERS znajdziemy wyłącznie klucz .Default. Wówczas zmienianie go nie ma żadnego sensu, ponieważ zawsze wszelkie modyfikacje zostaną stracone przy zamykaniu systemu, kiedy miejsce .Default zajmie HKEY_CURRENT_USER.
Pomieszajmy jeszcze w Rejestrze
Uwaga: Wszelkie zmiany w Rejestrze czynimy na własną odpowiedzialność. Jeżeli modyfikacje można wprowadzić bez korzystania z Edytora Rejestru, zawsze lepiej uniknąć jego używania -- nie sygnalizuje on jakichkolwiek błędów we wprowadzonych wartościach.
Własne nazwy folderów specjalnych
Windows 95 i aplikacje Microsoft Office korzystają z wielu folderów, których nazwy wcale nie muszą pozostawać nie zmienione. Większość z nich wykorzystuje sam system operacyjny. Niejednego jednak brak możliwości usunięcia z dysku niewykorzystywanego MOJE DOKUMENTY potrafi wręcz denerwować.
W prosty sposób własne nazwy możemy nadać następującym folderom:
C:\WINDOWS\FAVORITES -- skróty do najczęściej używanych dokumentów i folderów. Korzystanie z nich umożliwia specjalny przycisk w okienkach Microsoft Office.
C:\MOJE DOKUMENTY -- dokumenty użytkownika.
C:\WINDOWS\PULPIT -- zawartość pulpitu.
C:\WINDOWS\FONTS -- czcionki.
C:\WINDOWS\NETHOOD
C:\WINDOWS\MENU START -- zawartość menu Start.
C:\WINDOWS\MENU START\PROGRAMY -- folder menu Start | Programy.
C:\WINDOWS\RECENT -- folder menu Start | Dokumenty.
C:\WINDOWS\SENDTO -- folder Wyślij do z menu podręcznego.
C:\WINDOWS\MENU START\PROGRAMY\AUTOSTART -- skróty uruchamiane przy starcie Windows.
C:\WINDOWS\SHELLNEW -- szablony dokumentów.
Ich nazwy znajdziemy w kluczu:
HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\Shell Folders.
Wpisanie w ich miejsce nowych ścieżek może pozwolić na takie innowacje jak usunięcie foldera programów uruchamianych wraz z Windows (AUTOSTART) poza menu Start czy usunięcie niechcianego MOJE DOKUMENTY. Nowy folder, któremu nadamy rangę Personal będzie równie trudny do usunięcia jak jego poprzednik.
Jednak nazwy dwóch folderów -- wspomnianego Personal i Favorites -- zmieniamy w nieco innym miejscu niż pozostałe. Mimo tego, że znajdują się one w wymienionym kluczu, zmiany należy dokonywać w HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\User Shell Folders, gdzie również są one zapisane. Co więcej, trzecia ich kopia znajduje się w analogicznym kluczu w kategorii HKEY_LOCAL_MACHINE, ta jednak dotyczy nowych użytkowników.
Uwaga: Jeżeli korzystamy z opcji zachowywania indywidualnych ustawień wielu użytkowników, to zmiany dotyczące innych niż aktualnie zalogowanego musimy wprowadzać w kluczu HKEY_USERS\użytkownik.
Uruchamianie programów razem z Windows
W menu Start | Programy możemy znaleźć grupę Autostart. Jak wskazuje nazwa służy ona do uruchamiania aplikacji automatycznie, razem z całym systemem operacyjnym. To, jakie skróty się tam znajdą zależy całkowicie od woli użytkownika. Można je dodawać i usuwać, podobnie jak z pozostałych folderów menu Start. Niekiedy utworzenie ich w tym miejscu powodowane jest przez włączenie w aplikacji opcji wymagającej, aby program pozostawał stale w pamięci. Przykładowo -- włączenie w programie antywirusowym opcji stałej kontroli antywirusowej.
Być może w Twoim menu Start znajduje się jeszcze grupa StartUp. Tworzą ją niekiedy programy przeznaczone dla angielskiej wersji Windows. Jeżeli programy wskazywane przez skróty z tej grupy również mają uruchamiać się automatycznie, powinny zostać przeniesione do Autostart.
W praktyce aplikacje zazwyczaj nie zmieniają zawartości grupy Autostart. Posiadają one swoje własne, bardziej dyskretne metody uruchamiania, oparte na wpisach w Rejestrze. Dzięki temu folder Autostart pozostaje w całości do dyspozycji użytkownika i nie jest on zaskakiwany skrótami, których znaczenie nie zawsze byłoby zrozumiałe (np. SYSTRAY.EXE, widoczny we fragmencie Rejestru przedstawionym poniżej). Uruchamianie programu poprzez wpis w Rejestrze zapewnia również, że zostanie on uruchomiony przed wszystkimi w grupie Autostart.
W Rejestrze znajdziemy aż cztery klucze służące automatycznemu uruchamianiu. Choć ich przeznaczenie jest różne, działanie niewiele się różni. "Ścieżka" do nich to: HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion oraz HKEY_CURRENT_USER\SOFTWARE\Microsoft\Windows\CurrentVersion\
Run. Klucz potencjalnie najbardziej interesujący. Wpisy w nim umieszczone traktowane są identycznie, jak te w folderze Autostart.
RunOnce. Działa niemal identycznie jak Run. Różnica polega na tym, że po uruchomieniu aplikacji, wpis w tym kluczu jest usuwany. Ta cecha predestynuje klucz RunOnce do wspomagania pracy instalatorów aplikacji.
RunServices. Klucz przeznaczony dla uruchamiania różnego rodzaju usług sieciowych. Trafiają do niego między innymi Zdalna obsługa Rejestru (zapewnia dostęp do Rejestrów innych komputerów) i tzw. agenty systemów tworzenia kopii zapasowych.
RunServicesOnce. Pozwala uruchomić usługę sieciową tylko raz.
Główną przyczyną, dla której warto umieścić samodzielnie niektóre aplikacje w kluczu Run jest chyba to, że nie można powstrzymać ich ładowania do pamięci przy uruchamianiu systemu. Jeżeli bowiem podczas inicjalizacji Windows, tuż przed pojawieniem się pulpitu przytrzymamy przez chwilę wciśnięty klawisz shift, to aplikacje wskazane w folderze Autostart nie będą uruchomione.
Jeżeli często korzystamy z tej możliwości, a folder Autostart zawiera kilka skrótów, być może warto rozważyć zastąpienie jednego lub dwóch wpisami w Rejestrze. Wówczas nawet gdy zrezygnujemy z uruchamiania aplikacji z folderu, do pamięci trafią aplikacje z Rejestru.
Jest jeszcze trzecie metoda automatycznego uruchamiania programów, zachowana dla zgodności z aplikacjami Windows 3.x. Są to wiersze load i run w pliku WIN.INI. Działają one podobnie jak pozostałe.
Porady dnia
Przy pierwszym i kilku następnych uruchomieniach Windows 95 pojawiał się na ekranie ekran z napisem "Zapraszamy do Windows 95" wyświetlający za każdym razem inną poradę. Zwyczajowo nazywa się takie wskazówki "poradą dnia". Choć raczej trudno się tego spodziewać, również one zapisane są w Rejestrze. Aby je odnaleźć, wystarczy wyświetlić zawartość klucza
HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\Explorer\Tips.
Zawiera on wszystkie dostępne porady. Są one wyświetlane w kolejności wyznaczonej swoimi numerami. Nic więc nie stoi na przeszkodzie, aby przy kolejnym uruchomieniu Windows pojawiła się na przykład taka porada: "Nigdy nie pracuj dłużej niż osiem godzin!"
Zmiana informacji o użytkowniku
Jeżeli przy instalacji Windows 95 niezbyt szczęśliwie odpowiedzieliśmy na pytanie o imię, nazwisko lub nazwę firmy, dane te prześladują nas przy każdej kolejno instalowanej aplikacji i ekranach uruchomieniowych. Sytuację tę możemy w pewnym stopniu zmienić. Jest w Rejestrze klucz zawierający te informacje.
Jego nazwa to HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion
lub w starszych Windows 95 HKEY_CURRENT_USER\Software\Microsoft\MS Set-up (ACME)\User Info
w wartościach RegisteredOwner i RegisteredOrganization.
Konfiguracje nowych użytkowników
Pośród wpisów w kluczu HKEY_LOCAL_MACHINE\Software\Microsoft warto zwrócić tutaj uwagę na New User Settings, gdzie niektóre aplikacje umieszczają konfigurację podstawową. Jest ona analogiczna do tej, z którą mamy do czynienia tuż po zainstalowniu pakietu. Zapisanie jej tutaj ma na celu udostępnienie jej nowym użytkownikom -- czyli tym, którzy wcześniej do Windows 95 się nie logowali. Word 7.0 umieszcza tutaj:
ścieżki automatycznego zachowywania plików, programu, domyślną i narzędzi (Options);
informację o tym, że wraz z programem ma zostać uruchomiony przewodnik po nowościach w wersji 7.0 (Options\StartWhatIsNew);
ścieżki plików pomocy (Help);
dane o narzędziach kontroli gramatyki i dzielenia wyrazów (Proofing Tools);
dane o podstawowych konwerterach tekstu (Text Converters).
Ustawienia systemu plików
Przypomnijmy sobie okienko właściwości systemu plików, otwierane poprzez Panel sterowania -- System | Wydajność | System plików.
Jest w nim widoczna lista rozwijalna określająca typową rolę komputera. Zawiera ona trzy predefiniowane pozycje. Jak już zostało to napisane wcześniej, wybór jednej z nich wpływa na dobór dwóch wartości:
PathCache -- Pojemność bufora przechowującego położenie ostatnio używanych folderów na dysku. Im jest większy, tym rzadziej wykorzystywana jest tablica alokacji plików (FAT).
NameCache -- Pojemność bufora lokalizacji plików na dysku. Ma znaczenie podobne jak PathCache.
Odpowiednie dane trafiają do klucza Rejestru
HKLM\System\CurrentControlSet\Control\FileSystem. Łatwo się domyślić, że bezpośredni dostęp do konfiguracji Windows 95 daje tu nieco większe pole do eksperymentów.
Zmiany wprowadzamy jednak nie w wymienionym kluczu, ale w
HKLM\Software\Microsoft\Windows\CurrentVersion\FS Templates.
Wynika to stąd, że dane z tego ostatniego odczytywane są przy uruchamianiu systemu i kopiowane do wspomnianego FileSystem. Nie oznacza to jednak, że w FileSystem nie ma sensu wprowadzać żadnych zmian -- są w nim odpowiedniki ustawień z zakładki Usuwanie problemów, które zmieniamy bezpośrednio.
W kluczu FS Templates znajdziemy trzy podklucze odpowiadające trzem wybranym ustawieniom. Widać przy nich również tesksty wyświetlane na liście rozwijalnej. Każdemu, z wyjątkiem Desktop, przypisane są wartości NameCache i PathCache. Są one zapisane w systemie szesnastkowym, zrozumiałym raczej dla każdego, kto mógłby odważyć się zmieniać takie szczegóły pracy systemu plików. Brak wartości w jednym z kluczy powoduje korzystanie z ustawień domyślnych. Wartość tekstowa umieszczona w głównym kluczu FS Templates odpowiada wybranej konfiguracji. Może być nią jedna z trzech lub inna, własna.
Dodatkowe wartości, jakie można umieścić w podkluczach FS Templates to BufferIdleTimeout, BufferAgeTimeout i VolumeIdleTimeout -- określają opóźnienie zapisu danych na dysk.
Zmiany innych wartości dotyczących systemu plików w kluczu HKLM\System\CurrentControlSet\Control\FileSystem raczej nie mają sensu, gdyż dostęp do nich zapewnia karta arkusza właściwości Usuwanie problemów.
Rozwiązanie problemów z Panelem sterowania
Od czasu do czasu w Windows 9x może zdarzyć się, że Panel sterowania ulegnie zniszczeniu. W niektórych jego elementach znikną polskie znaki, a podwójne kliknięcie na nich pozostanie bez efektu. Takie zachowanie polskiej wersji systemu pojawia się niekiedy przy korzystaniu z trybu awaryjnego, który włącza się automatycznie przy niewłaściwej konfiguracji sterowników urządzeń. Nie jest to może częsta sytuacja i nie każdemu się przydarzy, jednak warto wiedzieć jak sobie z nią poradzić.
W kluczu HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\Controls Folder znajduje się wartość PresentationCache. Gdy ulegnie ona uszkodzeniu i pojawią się wspomniane problemy, wystarczy ją usunąć. Odbudowa jej właściwej struktury nastąpi automatycznie. |
Łatwe użycie Notatnika do otwierania plików
Ta sztuczka spowoduje nowy element menu kontekstowego i domyślne otwieranie nieznanych plików w Notatniku.
W Edytorze Rejestru odszukaj klucz HKEY_CLASSES_ROOT\*\shell; Jeśli nie istnieje, to go utwórz
Utwórz nowy klucz o nazwie open
Kliknij nazwe "Domyślna" i polu Dane wpisz Do &Notatnika
W utworzonym kluczu utwórz kolejny o nazwie command
Kliknij nazwe "Domyślna" i polu Dane wpisz notepad.exe %1
Od tej chwili menu kontekstowe plików w Eksploratorze będzie miało dodatkową pozycję Do Notatnika, z gorącym klawiszem N.
Dopisywanie programów do menu kontekstowego przycisku START
Gdy klikniemy drugim przyciskiem myszy na przycisk Start, pojawi się menu kontekstowe. Możemy dopisać tutaj dowolną aplikację, do której chcielibyśmy mieć taki dostęp. W tym celu:
W Edytorze Rejestru odszukaj gałąź HKEY_LOCAL_MACHINE\Software\CLASSES\Directory\shell
Utwórz nowy klucz odpowiadający nazwie, którą chcesz zobaczyć w menu kontekstowym
W utworzonym kluczu utwórz kolejny o nazwie command
Kliknij nazwe "Domyślna" i polu Dane wpisz ścieżkę dostępu do programu.
Od tej chwili w menu kontekstowym przycisku Start pojawi się skrót do wskazanego programu.
Znakomitym narzędziem do zmiany wielu ustawień systemowych (tzw. bezpieczne mieszanie w Rejestrze za pomocą graficznego UI) jest programik Tweak UI (znajdziesz go na płycie instalacyjnej Windows 98 w folderze TOOLS\RESKIT\POWERTOY). Po zainstalowaniu przy pomocy pliku .INF, program udostępnia mnóstwo użytecznych zakładek. Na powyższej ilustracji widać opcje ukrywania/zmiany nazwy ikonek systemowych pulpitu. Można też zamienić ikonkę systemową na plik (Create As File), aby przenieść ją do dowolnego folderu...
Możesz też skopiować Tweak UI stąd (60 kB) lub stąd (80 kB -- w tej wersji wymagany IE 4 lub nowszy).
Co jeszcze... Edytorze Rejestru
Import i eksport danych
Wszystkie dane zapisane w Rejestrze można wyeksportować do pliku ASCII. Można je również z tego formatu zaimportować, choć wymaga to pilnego śledzenia poprawności struktury. Konwersji podlegają również wybrane gałęzie. Dodatkową opcją jest importowanie plików REG przeznaczonych dla Rejestru Windows 3.x -- Rejestr Windows 95 zachowuje z nim zgodność.
Aby wyeksportować dane z pliku Rejestru wystarczy wybrać klucz i skorzystać z menu Plik | Eksportuj plik Rejestru.
W ukazującym się wówczas okienku ujrzymy, że eksportowana będzie cała gałąź zaczynająca się od wskazanego klucza. Jeżeli wybraliśmy Mój komputer, aktywna będzie opcja Wszystko. Domyślnym rozszerzeniem danych wyeksportowanych z rejestru jest REG.
Podobnie wygląda import, udostępniany poleceniem Importuj plik rejestru. Importowana może być tylko całość pliku REG. Zwykle zawiera ona jedną lub kilka gałęzi Rejestru. Inną metodą dołączania danych z plików REG jest podwójne kliknięcie na wybranym z nich w oknie Eksploratora. O wyniku operacji poinformuje nas stosowne okienko.
Do przeglądania i edycji plików rejestracji (taka jest ich oficjalna nazwa) można używać dowolnego edytora zapisującego pliki w formacie ASCII -- bez jakiegokolwiek formatowania strony. Za standardowe narzędzie można by uznać Notatnik, gdyby nie to, że pliki rejestracji często są dla niego za duże. Najlepszym narzędziem z pakietu Windows jest więc WordPad, pod warunkiem otwarcia i zapisania pliku w formacie Dokument tekstowy.
Struktura pliku rejestracji w pewnym stopniu przypomina plik INI z Windows 3.x:
Pierwszy wiersz pliku wyeksportowanego to zawsze REGEDIT4.
Wskazuje to wersję edytora Rejestru i zabezpiecza przed próbą dołączenia pliku przeznaczonego dla Windows 9x do Rejestru Windows 3.x. Pliki REG dostarczane z aplikacjami często nie posiadają numeru wersji, co wskazuje na ich uniwersalność. Pojedyncze puste linie oddzielają kolejne klucze. Klucze zapisywane są w nawiasach kwadratowych w sposób przypominający ścieżki dostępu do plików na dysku i identyczny z tym, jaki widzimy na pasku stanu Edytora Rejestru. Linie następujące po nazwie klucza to wartości i ich dane. Znak "@" stosowany jest wtedy, gdy wartość nie ma nazwy, co określane jest w Edytorze Rejestru hasłem (Domyślna). Cudzysłowy, w jakie ujęte są dane wartości wskazują na ich typ tekstowy, ale nie są obowiązkowe. Wartości binarne poprzedza tekst "hex:", a DWORD -- "dword:". Jeżeli wpis do Rejestru zawiera znak "\" należy go wpisać podwójnie "\\"
Edytor Rejestru pod DOS-em
W szczególnych przypadkach, gdy Rejestr jest tak uszkodzony, że nie można uruchomić środowiska graficznego, można uruchomić Edytor Rejestru pod kontrolą MS-DOS. Nie jest on, co prawda, wygodny, ale pozwala wyeksportować dane, poprawić je w edytorze tekstu i zaimportować z powrotem. Dla zabezpieczenia się przed popełnionymi wcześniej błędami moża skorzystać nawet z opcji utworzenia Rejestru od nowa.
Składnia polecenia uruchamiającego Edytor pod DOS-em jest następująca:
regedit [/L:system] [/R:user] pliki dołączane
regedit [/L:system] [/R:user] /E nowy_plik.reg [klucz]
regedit [/L:system] [/R:user] /C nowy_rejestr.reg
Poszczególne parametry oznaczają:
/L:system -- położenie pliku SYSTEM.DAT,
/R:user -- położenie pliku USER.DAT,
pliki dołączane -- pliki, których zawartość chcemy dołączyć do Rejestru,
/E nowy_plik.reg -- nazwa pliku, do którego Rejestr ma być wyeksportowany,
klucz -- klucz, który ma być wyeksportowany (pominięcie powoduje eksport całości),
/C nowy_rejestr.reg -- plik, z którego nowy Rejestr ma być utworzony.
Usuwanie kluczy z bazy Rejestru
Wprowadzanie danych do Rejestu w środowisku Windows jest proste: wystarczy kliknąć plik *.REG i już dane są zaimportowane. Ale jak usuwać klucze z bazy Rejestru? Można oczywiście otworzyć REGEDIT.EXE, potem otwierać po kolei gałęzie, podgałęzie i dojść do klucza, zaznaczyć go i wcisnąć DEL. Czy jednak istnieje możliwość zrobienia tego jednym kliknięciem myszki wprost z Windows?
Otóż tak! Okazuje się, że istnieje nieudokumentowana funkcja. Podobnie do wstawiania nowych kluczy można ją wykorzystać do wyrzucania niepotrzebnych danych.
Na czym polega ta sztuczka? Wystarczy otworzyć w edytorze plik *.REG zawierający interesujące nas dane i wpisać znak minusa przy niechcianych kluczach dokładnie w przedstawiony na poniższym przykładzie sposób (minus zaznaczony na czerwono):
[-HKEY_LOCAL_MACHINE\Software\Niechciany Program]
Teraz wystarczy po prostu kliknąć tak spreparowany plik i import danych będzie oznaczał w tym wypadku skasowanie zaznaczonych kluczy. Bardzo proste, prawda?
UWAGA: Jeśli chcesz skasować podklucze to przy wszystkich musisz podobnie wstawić znak minusa.
Druga metoda na kasowanie całego klucza Rejestru z poziomu Windows następuje poprzez odpowiedni skrypt INF (komenda DELREG). Pobierz i sprawdź Delreg.zip (1 kB).
Usuwanie kluczy z poziomu DOS
Ale jak to zautomatyzować, gdy jakiś program wpisuje klucz, który chcemy co jakiś czas usunąć? Możemy posłużyć się DOSową opcją REGEDIT /D. Posłużyć może do tego plik wsadowy BAT:
REGEDIT /D ŚcieżkaRejestru
Gdzie w miejscu ŚcieżkaRejestru wpisujemy adres klucza do skasowania.
Można taką komendę wpisać do AUTOEXEC.BAT aby kasować uparty klucz przy każdym uruchamianiu komputera.
Na tym koniec tematu Rejestru (na razie).