Windows sitemlerinde yer alan registry’ye ne amaçla erişiriz, nasıl kayıt yapar , nasıl bilgi alırız gibi konulardan bahsadeceğim. Programımız başladığında bazı verileri saklamak veya almak için kullanılabilir. Veya bir bilgisayarda açık olan oturuma yönelik bilgiler saklayacak veya kullanacaksak regisrty’yi kullanabiliriz. Veya programımızın ilk kullanımında girilmesi gereken bazı değerleri girip daha sonra bu değerleri kullanmak istediğimizde bu değerlere erişebiliriz….
Registry’ye erişmek başlat > çalıştır> regedit komutları yeterlidir. karşımıza çıkan şey aslında bir nevi windowsun kendi database idir.Şimdi Registry burda kod yazmadan önce bu kısmı biraz tanıyalım.
1-) HKEY_CLASSES_ROOT :Dosya türleri, dosya bileşenleri ile ilgili bilgileri saklar.
2-)HKEY_CURRENT_USER : Kullanıcı bilgilerini tutar.
3-) HKEY_LOCAL_MACHİNE : Donanım bilgilerini bulundurur.
4-) HKEY_USERS : Kullanıcıya ait konfigürasyon bilgilerini tutar.
5-)HKEY_CURRENT_CONFİG : donanım ayarları,bilgileri bulunur.Şimdi Registry ile ilgili işlemler yapmadan önce kodumuza bazı isim uzayları eklemek gerekiyor.
isim uzayımızı ekledikten sonra kodumuza geçebiliriz.
Burda keys2 nesnemizi oluşturuyor. Local machine altındaki Software\\Classes klasörüne ulaşıyoruz. ve bu klasörün içindeki isimleri GetSubKeyNames ile alıyoru. Registry erişimi bu şekilde
Şimdi registry de olmayan bi klasörü biz oluşturalım. Önce OpenKey(“SOFTWARE”,true); kodu ile oluşturacağımız klasörün localmMachine altında SOFTWARE in altında olacağını söylüyor sonra true ile yazmaya izin veriryoruz. True değeri yazmazsak Kayıt defterine windows default da yazmaya izin vermiyor.Kodumuzu çalıştırıp baktığımızda ibrahim adlı klasörün orda olduğunu gördük.
Şimdi Klasörümüzün içine bir değer tanımlayalım. Burda Diğer bi olay ibrahim klasörünü oluşturduğumuzda içeride isim ve değer verilmemiş bir varsayılan değer oluşturul masıdır otomatik olarak.
kodumuz derleyelim ve sonucuna bakalım. Deneme isimli bölümü oluşturmuş ve değerimizi 123 olarak atamış bulunuyoruz.
burda Dikkat ederseniz tür kısmı altında REG_SZ yani sitring değer olarak türümüz tanımlanmış.
şimdi biraz burdaki türlerden bahsedelim ve sonrada diğer türlerde kayıt olayını nasıl yapacağız görelim.
REG_SZ karakter katarı
REG_DWORD Tamsayı
REG_BINARY ikilik tamsayı
şimdi mesela dword(ikilik sayı ) biçiminde yeni bir anahtar oluşturalım.
bakalım oluşturuldumu . programımızı çalıştıralım. Oluşturmuş.
şimdi Bu Oluşturduğumuz anahtardan nasıl değer okuyacağımızı görelim.
sonucunda messageboxda daha önce yazdığımız 123 değerini okumuş bulunuyoruz.
İBRAHİM ÖZBEY