Tekil Mesaj gösterimi
Alt 23.01.08, 15:00   #1 (permalink)
no comment
Çılgın Yönetici
 
no comment - ait Kullanıcı Resmi (Avatar)
 
no comment - MSN üzeri Mesaj gönder
: yeni : Windows Kayıt Defteri Yazı Dizisi

Windows Kayıt Defteri Yazı Dizisi


Kayıt defterinde birçok programın önemli ayarları, sisteminizle ilgili neredeyse tüm ayar ve kayıtlar, dosya uzantılarına ilişkin bilgiler, bazı dosya tiplerinin ekstra özelik sayfaları ve bunun gibi birçok bilgi ve ayar bulunur.





Giriş ve HKEY_CLASSES_ROOT

Her şeye başlamadan önce Kayıt Defterinin(Registry) ne olduğunu bilmelisiniz. Bu yazıyı okuyanların çoğu büyük ihtimalle biliyor ancak bilmeyenler de olabileceğinden açıklamaya çalışayım. Windows Kayıt Defteri, uygulama ve sistem ayarlarını tutmaya yarayan bir veritabanıdır diyebiliriz kısaca. Windows 3.1de bunun için “ini” dosyaları kullanılıyordu ancak bu bir yerden sonra çok büyük karmaşaya yol açtığı için her şeyin daha derli toplu ve rahat olmasını sağlayan “Kayıt Defteri” sistemi geliştirildi ve Windows95ten itibaren kullanılmaya başlandı.

Kayıt defterinde birçok programın önemli ayarları, sisteminizle ilgili neredeyse tüm ayar ve kayıtlar, dosya uzantılarına ilişkin bilgiler, bazı dosya tiplerinin ekstra özelik sayfaları ve bunun gibi birçok bilgi ve ayar bulunur. Ancak tabi ki bazı programlar ayarlar için hala “ini” dosyalarını kullanıyor.

Windows Kayıt Defterindeki işlemleri “Windows Kayıt Defteri Düzenleyicisi”ni Çalıştır” yolunuà kullanarak yapıyoruz. Bu programı çalıştırmak için “Başlat izledikten sonra açılan yere “regedit” yazıp “Tamam” düğmesine basmalısınız.

Açılan pencerenin solunda anahtarlar, sağ tarafında ise seçili anahtara ait çeşitli değerler görüntülenir.
Bu değerler “Dize Değeri”,”İkili Değer”,”DWORD Değeri”,”Çok Dizeli Değer” ve “Genişletilebilir Dize Değeri” olmak üzere 5 çeşittir. Biz daha çok dize değerleriyle uğraşacağız ama yeri geldiğinde diğer değer tiplerini de kullanacağız ve bunların açıklamalarına yer vereceğiz. Şimdilik “Dize Değeri”nin bir metin bilgisi taşıdığını bilmemiz yeterli. Hiçbir şey yapmadan önce bütün kayıt defterinin veya değiştireceğiniz yerin yedeğini Ver…” yolunuà almakta fayda var. Bunu yapmak için yukarıdaki menüden “Dosya izleyebilirsiniz. Burada “Seçili Dal” işaretli olursa sadece seçili olan anahtar ve tüm alt anahtarlara ait bilgiler belirttiğiniz dosyaya kopyalanır. Eğer “Tümü” seçeneğini seçerseniz tüm kayıt defteri kopyalanır ki bu işlem biraz uzun sürebilir. Daha sonra bu dosyaya çift tıklayarak bilgileri kayıt defterine aktarabilirsiniz.

Uzantılar

Evet uzun sayılabilecek girişten sonra gelelim ilk konumuza. Başlıkta da belirttiğim gibi ilk bölümde HKEY_CLASSES_ROOT adındaki ana anahtarı inceleyeceğiz. Açıkçası bu anahtarda inceleyip bizim güvenle müdahale edebileceğimiz kısım çok da fazla değil. Daha doğrusu içerdiği tüm verilere oranla küçük kalıyor. Bunun sebebi oradaki binlerce anahtarın tümünün ne için ki zaten kayıt defterini karıştırmak biraz daJkullanıldığı tam olarak bilmemem merak ve risk işi. Ben de mesela bir dergide gördüğüm yazıyla Kayıt Defterini öğrendim ama içeriğini anlamak için bolca kendim kurcaladım ki zaten her şeyi anlatmaya sayfalar yetmez. Ehem, evet ne diyorduk; burada bizim asıl kullanacağımız ve öğreneceğimiz şey dosya uzantıları ve bunlara ilişkin bilgiler.

Bu bölümde gördüğünüz gibi “.exe”,”.zip” vs. gibi bir çok anahtar var. Bu anahtarlara tıkladığınızda sağ tarafta “(Varsayılan)” adında bir “Dize Değeri” göreceksiniz. Bu “(Varsayılan)” her anahtarda mutlaka bulunur ama hepsinde dolu değildir(buradaki her uzantıda dolu olacak ki işlevini az sonra öğreneceksiniz zaten). Evet buradaki değer, uzantıyla ilgili ASIL bilgileri içeren ve yine HKEY_CLASSES_ROOT ana anahtarı altında bulunan başka bir anahtarın adını içerir. Yani örneğin “.htm” anahtarına tıkladınız, bunun varsayılan değeri “htmlfile” gibi bir şeydir ve bu sefer aşağılara inip “htmlfile” adlı anahtarı bulduğunuzda uzantıyla ilgili asıl bilgilere ulaşırsınız. Yine bu örnekten devam edecek olursan bu “htmlfile” adlı anahtar çeşitli alt anahtarlar içerir. Bunlardan yine işimize yarayacak olan kısımlar “DefaultIcon” ve “shell” bir de “htmlfile” anahtarının “(Varsayılan)” dize değeri. Bu varsayılan değer dosyanın açıklamasını içerir. Belki dikkatinizi çekmiştir Windows bir dosyaya tıkladığınızda ona ait bilgileri gösterirken aralarında “Metin Dosyası” gibi YineJdosya türünü açıklayan bir metin de yer alır. İşte o metin bu metin! “htmlfile” örneğimizde bu değer “HTML Document”. İsterseniz değiştirebilirsiniz. Değiştirmek için üzerine çift tıklayıp açılan yere yeni değeri yazıp entera basmanız yeterli. Mesela buraya “Web Sayfası” yazabiliriz.

DefaultIcon anahtarının varsayılan değeri ise bu dosya türü için kullanılacak simgeye ait bir yol içerir. Burada “C:\program files\internet Explorer\iexplore.exe , 1” gibi bir ifade yer alır ki bu ifadenin virgülden öncesi simgeyi içeren dosyayı virgülden sonrası da bu dosyadaki kaçıncı simgenin kullanılacağını bildirir. Buradaki önemli nokta simgelerin “0”dan başlaması. Yani ilk simge için 0 yazmalısınız. Bir dosya içindeki simgeleri görmek içinse herhangi bir kısayola sağ tıklayıp özelliklerinden simge değiştirme yerine girdikten sonra buraya ilgili dosyanın yolunu yazarsanız tüm simgeler gösterilir. Tabi burada simge indexinin(sırasının) bulunması oldukça zahmetli bir iş. Eğer elinizde simgelerle ilgili güzel bir program yoksa maalesef teker teker saymak zorundasınız. Sıra yukarıdan aşağıya doğru.

Evet işte geldik işin makyajından çok asıl işe yarar kısmına. “shell” anahtarını genişletecek olursanız “Edit”, “Open” gibi alt anahtarlar göreceksiniz. İşte bunlar ilgili dosya türüne sağ tıkladığınızda açılan menüdeki komutları temsil ediyorlar. “Shell” anahtarının varsayılan değeri de dosyaya çift tıkladığınızda bu anahtarlardan hangisinin otomatik olarak kullanılacağını belirtiyor. Şimdi gelelim bu alt anahtarların yapısına. Anahtarın varsayılan değeri menüde görüntülenecek metni belirtmeye yarıyor. Burada yazdığınız metinde istediğniiz bir harften önce “&” işareti koyarsanız o harfin altı çizilir ve bu seçeneğe ulaşmak için kullanılan kısayol harfi haline gelir. Bu anahtarın altında açacağınız “command” adındaki yeni alt anahtarın varsayılan değeri de bu seçenek seçildiğinde çalıştırılacak olan programı ve parametrelerini içerir. Örneğin “.txt” uzantılı bir dosya normalde “Notepad” programıyla çalıştırılır ki buna ait değer de “c:\windows\notepad.exe %1” gibi bir şey olmalıdır. Burada gördüğünüz gibi ilk olarak programın tam yolu ardından da parametreler giriliyor. Buradaki %1 parametresi dosyanın yol bilgisini içerir. Mesela ayşe.txt adlı bir dosyaya çift tıkladığınız da “notepad.exe” dosyası çalıştırılır ve programa parametre olarak “c:\ayşe.txt”(dosyanın C: dizininde olduğu varsayılıyor) gönderilir. Siz de mesela kendi metin editörünüzü yazdınız ve txt dosyalarının artık bu programla açılmasını istiyorsunuz. Öncelikle programınıza komut satırından yollanan parametreyi alıp bu dosyayı açmaya yarayan bir komut dizisi eklemeli ardından bu anahtarı kendi programınıza uygun hale getirmelisiniz.(“C:\projeler\metinedit\metinedit.e xe %1” gibi). Burada dikkat etmeniz gereken dosya yolu ve adının DOS formatında olması. Yani “c:\belgelerim” değil “c:\belgel~1” gibi. Tabi bununla uğraşmak yerine normal uzun isimleri yazıp sonra tüm yol ifadesini tırnak içine de alabilirsiniz. Burada da parametre kısmını tırnağın dışında tutmayı unutmayın.

Evet yukarıdaki bilgileri kullanarak isterseniz kendinize ait bir dosya türü ) veya dosyaJbile oluşturabilirsiniz(ki ben yaptığım programda kullanıyorum türlerinin bazı özelliklerini değiştirebilirsiniz. Örneğin kısayolların sol altında çıkan küçük okları “.lnk” uzantısıyla iligli yerdeki(lnkfile) “IsShortCut” değerini silerek kaldırabilirsiniz. Son olarak söylemeyi unuttum, ilgili dosya türünün uzantısının HİÇ görüntülenmemesini istiyorsanız burada “NeverShowExt” adında boş bir dize değeri oluşturmalısınız.
__________________
[Sadece forumumuza üye olanlar linkleri görebilirler Tiklayin ve kaydolun...]

==>[Sadece forumumuza üye olanlar linkleri görebilirler Tiklayin ve kaydolun...]<==

Sorularınız ve sorunlarınız için nocomment@forumini.com mail atabilirsiniz...


Bir teşekkürü çok görmeyelim. Emeğe saygı!!!
no comment isimli Üye şimdilik offline konumundadır   Alıntı ile Cevapla