dzia│y

  Redakcyjne
  News
  Software
  Hardware
  Internet
  Webmastering
  Linux
  Programowanie
  Elektronika
  Gry
  Magazyn
  Grafika
  Telefonia
  D╝wiΩk
  Humor
 

Partnerzy

Kliknij na link by
zobaczyµ opis:
 

  World Warez Archive
  Q119
  Lomsel
  Emu Stru╢
  X-zin
  Comp.w.pl
  Osama
  SiteQl

@t-online

 DostΩpne po po│▒czeniu z Internetem:

  Archiwa
  Download
  Dodaj stronΩ
  Forum @t
  Og│oszenia
  Bramka SMS
  Grupa dyskusyjna

 

Sponsorzy

Sponsorem nagr≤d jest:

 

 
 

Rejestr - W poszukiwaniu danych

WstΩp
    Cze╢µ Wam! Je╢li przeczytacie ten text do end'a oka┐e siΩ, ┐e m≤g│by nosiµ tytu│ Ashampoo 99 Delux. Jednak nie bΩdΩ tutaj opisywa│ w ca│o╢ci tego programu. Pos│u┐y nam on jedynie jako narzΩdzie pracy przydaj▒ce siΩ najczΩ╢ciej zaawansowanym u┐ytkownikom. Ashampoo 99 - bo o nim mowa s│u┐y do przywracania dawnych ustawie± systemu, czyli stanu rejestru plik≤w INI, itp. w jakim siΩ znajdowa│y przed zainstalowaniem felernej gry czy aplikacji. Nie musisz siΩ nim pos│ugiwaµ zawsze - przyznaje deinstalowanie wszystkich aplikacji przez Ashampoo by│oby z deka k│opotliwe ;) WiΩkszo╢µ gier i program≤w ma swoje deinstalatory, kt≤re nie przez przypadek znajduj▒ siΩ na kr▒┐ku z nasz▒ ulubion▒ gr▒. Przejd╝my do wyt│umaczenia czym jest deinstalator. Deinstalator jest narzΩdziem pozwalaj▒cym "bezpiecznie" usun▒µ aplikacje tzn. tak, aby wszystkie zmiany wprowadzone przez program zosta│y usuniΩte. Dotyczy to przede wszystkim plik≤w konfiguracyjnych i wpis≤w do rejestru. No w│a╢nie. Czasami zdarza siΩ, ┐e program nie ma deinstalatora. CzΩsto znajdujemy o tym wzmiankΩ w opisie progsa, w tym wypadku mo┐e przyj╢µ nam z pomoc▒ Ashampoo 99. Instalujemy przez to narzΩdzie interesuj▒cy nas program i zapisujemy log na dysku. Gdy przyjdzie czas na usuniΩcie aplikacji, w≤wczas wystarczy jedynie odpaliµ Ashampoo i klikn▒µ na przycisk "Remove an Application" - przez resztΩ przeprowadzi nas Wizard. Jeszcze lepszym sposobem jest zrobienie zrzutu rejestru przed i po instalacji i zapisanie go na dysku, aby potem, gdy chcemy wyrzuciµ program mo┐na by│o dwie wersjΩ por≤wnaµ i zobaczyµ co program nani≤s│ do systemu.

Screen(Kliknij)

Dla ambitnych ?
    Chcia│bym tutaj troszkΩ rozwin▒µ spos≤b por≤wnywania dw≤ch wersji rejestru.
Za│≤┐my, ┐e uparli╢my siΩ na napisanie programu, kt≤ry w znacznym stopniu nak│ada│by siΩ na mo┐liwo╢ci konfiguracyjne systemu. Lecz co w wypadku, gdy nie wiemy gdzie znajdujΩ siΩ interesuj▒ca nas warto╢µ. Z pomoc▒ przychodzi Ashampoo 99 Delux. Wykonujemy zrzut rejestru przed i po w│▒czeniu danej opcji konfiguracyjnej systemu. Np:
WykonujΩ zrzut rejestru, klikam kolejno Start>Ustawienia>Opcje Folder≤w>(karta)Widok i zaznaczam opcjΩ "Pokazuj wyskakuj▒ce opisy folder≤w i element≤w pulpitu". NastΩpnie jeszcze raz zrzucam rejestr i por≤wnujΩ obie jego wersjΩ. Ashampoo 99 Delux obrazuje mi kt≤ra warto╢µ w rejestrze siΩ zmieni│a. Mo┐na z tego wywnioskowaµ, ┐e warto╢µ "ShowInfoTip" odpowiada za w│▒czenie/wy│▒czanie ≤w opcji.
Tak mo┐na robiµ teoretycznie ze wszystkim. 

Piszemy program
    Pomys│ napisania takiego programu jest nieco lamerski, ale chodzi tu przecie┐ o przyk│ad. A wiΩc zabieramy siΩ do pisania programu, kt≤ry bΩdzie potrafi│ zmieniµ opcjΩ systemu, kt≤ra jeszcze na dodatek znajdujΩ siΩ w jego konfiguracji. Jak widzicie pisanie takich program≤w nie ma sensu. I chcia│bym tu kogo╢ o╢wieciµ, bo nie rzadko w sieci spotykam r≤wnie przypalone pomys│y.
Uruchomcie Delphiego. NastΩpnie z palety Standard wstawcie komponent CheckBox. Jest to pole wyboru. W Inspektorze Obiekt≤w zmie±cie jego w│a╢ciwo╢µ Caption na "Pokazuj wyskakuj▒ce opisy pomocy" czy jak tam sobie za┐yczycie. Za pomoc▒ F12 przenie╢ siΩ do edytora kodu. Na samym szczycie unit'u powinna znajdowaµ siΩ sekcja uses, do kt≤rej nale┐y dodaµ (po przecinku) modu│ Registry. Jest to modu│ daj▒cy nam mo┐liwo╢µ obs│ugiwania rejestru. Jednak aby go u┐yµ nale┐y go zadeklarowaµ. Aby to uczyniµ, nale┐y dopisaµ po s│owie var (przed sekcj▒ implementation) linijkΩ kodu. Powinno to wygl▒daµ w ten spos≤b:

var
Form1: TForm1;
Reg: TRegistry;

Teraz kliknijcie double na CheckBox'a i miΩdzy begin a end wpiszcie taki kod:

Reg:=TRegistry.Create;
Reg.RootKey:=HKEY_CURRENT_USER;
Try
Reg.OpenKey('Software\Microsoft\Windows\CurrentVersion\Explorer\

Advanced',False);
Reg.WriteBool('ShowInfoTip',CheckBox1.Checked);
Except
End;

Pierwsza jego linijka przypisuje do zmiennej Reg klasΩ TRegistry. Druga, ustawia domy╢lny klucz na HKEY_CURRENT_USER.
Jak wiecie istnieje sze╢µ kluczy, s▒ to:
HKEY_CLASSES_ROOT, HKEY_CURRENT_USER, HKEY_LOCAL_MACHINE,

HKEY_USERS, HKEY_CURRENT_CONFIG, HKEY_DYN_DATA.
W Delphi jednak nie musisz podawaµ, ┐e g│≤wnym kluczem jest HKEY_CURRENT_USER. Je╢li nic nie napiszesz program domy╢lnie bΩdzie pr≤bowa│ odszukaµ dany klucz w

HKEY_CURRENT_USER. Jednak ja przyj▒│em to pisaµ aby i kod potem │atwo odczytaµ :)
Trzecia linijka to "Try". S│≤wko bardzo pomocne w programowaniu. Jest to tak zwana obs│uga wyj▒tk≤w. Je╢li program wykona co╢ nieprawid│owego, w≤wczas wykonywane s▒ instrukcjΩ za s│owem Except.
Czwarta linijka to Otwarcie klucza w kt≤rym znajdujΩ siΩ nasza warto╢µ. NastΩpna linijka to przypisanie naszej warto╢ci stanu kontrolki CheckBox (zaznaczona daje 1, odwrotnie daje 0). OKey, ale przyda│oby siΩ trochΩ ulepszyµ ten programik. Mo┐emy unowocze╢niµ go stosuj▒c przypisywanie przy starcie naszej kontrolce, bie┐▒cej warto╢ci z rejestru. Kod wykonuj▒cy t▒ operacjΩ wygl▒da│by nastΩpuj▒co:

Reg:=TRegistry.Create;
Reg.RootKey:=HKEY_CURRENT_USER;
Try
Reg.OpenKey('Software\Microsoft\Windows\CurrentVersion

\Explorer\Advanced',False);
CheckBox1.Checked := Reg.ReadBool('ShowInfoTip');
Except
End;

Z grubsza nie r≤┐ni siΩ prawie niczym, lecz po dok│adnym przeanalizowaniu, stwierdzisz, ┐e nieco zmodyfikowana zosta│a linijka, kt≤ra w poprzednim przyk│adzie odpowiada│a za zapisywanie warto╢ci - tutaj, zale┐y nam na odczycie, wiΩc je╢li chcieliby╢my to przet│umaczyµ zapewne wysz│oby nam co╢ w rodzaju:
Otw≤z klucz: Reg.OpenKey('Software\Microsoft\Windows\

CurrentVersion\Explorer\

Advanced',False);
Pole wyboru CheckBox'a = Odczyt z warto╢ci ShowInfoTip. Je╢li ShowInfoTip=1, pole zostanie zaznaczone, je╢li 0 pozostanie odznaczone.

Zako±czenie
    Ashampoo'99 Delux jest bardzo ciekawym, wartym naszej uwagi programem. Pozwala nam nie tylko na dok│adny wgl▒d w informacjΩ ("╢mieci") jakie zostawiaj▒ instalowane przez nas programy, ale tak┐e na sprawdzanie r≤┐nego rodzaju ustawie±, do kt≤rych dotarcie, w rzeczywisto╢ci zajΩ│oby nam sporo czasu. Sam▒ aplikacjΩ w wersji Shareware znajdziecie na kwietniowej p│ytce ENTER'a. StronΩ producenta powinni╢cie znale╝µ pod adresem www.ashampoo.com. »yczΩ mi│ej pracy z programem!

Za│▒cznik - przyk│ad

 úukasz 'Lukas' Wyporek
  wypoker@poczta.onet.pl