ASP.NET
Network Akademi

Met Hostimg

“Bilgi paylaşıldıkça artar” sloganı ile .NET Platformuna ilişkin birikimlerin paylaşıldığı ASP.NET.TR Topluluğunda sizde “YAZAR” olmak için ; info@asp.net.tr e-mail adresine kendinizi anlatan bir e-mail göndererek başvuruda bulunabilirsiniz.

C# ile Registry İşlemleri

Veysel Uğur KIZMAZ
C#.NET
13.08.2011 21:35:07
Hit : 4017

Öncelikle Registry'nin tanımından başlayalım.

Registry, Windows işletim sisteminin tüm ayarlarının, teknik bilgilerinin tutulduğu yerdir. Başlat -> Çalıştır'dan regedit yazdığımız zaman Windows'un registry kullanıcı arayüzünü görebiliyoruz.

Registry kayıtları, Windows içinde USER.DAT ve SYSTEM.DAT isimli dosyalarda bulunmaktadır.

Yapı olarak da şekilde de görüleceği gibi bir ağaç yapısına sahiptir. Bilgisayardaki klasör-dosya mantığı burada anahtar-değer olarak kullanılmaktadır.

C# ile Registry işlemlerinin nasıl yapılacağını inceleyelim.


Öncelikle using bölümüne
using Microsoft.Win32;
namespace'ini ekliyoruz.

Registry'e Veri Yazma

Bir program yazdınız ve bu programın şifresinin bilgisayar içerisinde kaydedilmesini istiyorsunuz. O zaman şifrenizi şifreleyerek bilgisayarda registry kaydı olarak bulundurabilirsiniz. Bunun için öncelikle registry'nin iç yapısına bir göz atalım.

Registry'de (Windows XP ve Vista) 5 adet root bulunmaktadır. Bunlara ulaşabilmek için isimlerini kullanmamız gerekmektedir.

Root
CurrentUser
CurrentConfig
ClassesRoot
LocalMachine
Users

Root'lara Veri Yazma

 Registry.CurrentUser.SetValue("KullaniciAdi""ugur");

 Registry içerisinde "Current User" root'una "KullaniciAdi" isminde bir değer value ve buna "uğur" değerini atadık.

 

 

 Alt Anahtar Ekleme

Bilgisayardaki klasör mantığı, registry'de anahtar ismiyle kullanılıyor demiştik. Şimdi Registry'e anahtar ekleme işlemini inceleyelim.

 Registry.CurrentUser.CreateSubKey("Zirvedeki Beyinler");

 Current user root'unun içine "Zirvedeki Beyinler" isimli anahtarı ekliyoruz.

 

 

Alt Klasör Veri Ekleme

 

Registry.CurrentUser.CreateSubKey("Zirvedeki Beyinler").SetValue("KullaniciAdi","ugur");

 

İç İçe Klasör Oluşturma

Registry.CurrentUser.CreateSubKey("Zirvedeki Beyinler").CreateSubKey("Bodrum");

 

Registry'den Veri Okuma

string veri = Registry.CurrentUser.GetValue("KullaniciAdi").ToString();

this.Text = veri;

 

Alt Klasör Silme

 

Registry.CurrentUser.CreateSubKey("Zirvedeki Beyinler").DeleteSubKey("Bodrum");

 

Klasör içindeki Değeri Silme

 

Registry.CurrentUser.DeleteValue("KullaniciAdi");

 

Alt Anahtar Sayısını Öğrenme

 

int adet = Registry.CurrentUser.SubKeyCount;

 

Değer Sayısını Öğrenme

 

int adet = Registry.CurrentUser.ValueCount;

 

 

Veysel Uğur KIZMAZ

Bilgisayar Mühendisi
veysel@ugurkizmaz.com
www.ugurkizmaz.com

 

 


Tag c# » registry » » »


BU İÇERİĞE YORUMDA BULUNUN


Bu MAKALE'ye yorum yapabilmek için Üye olmalısınız ...!


BU İÇERİĞE YAPILAN YORUMLAR