C# ile Registry İşlemleri

St.AnGeR

Document Visor..
Katılım
17 Haz 2005
Mesajlar
1,832
Reaction score
0
Puanları
0
Konum
ιѕт              HHuser№: 9          Remote Admi
C# ile Registry İşlemleri



Registry, Windows işletim sisteminin tüm teknik bilgilerinin depoladığı yerin adıdır. Micorosoft.Win32 isim uzayı yer alan Registry ve RegistryKey sınıfı .Net Framework içerisindeki diğer sınıflar gibi Object’ten türeyen bir sınıftır. Registry sınıfına ait özellikler; ClassesRoot, CurrentConfig, CurrentUser, DynData, LocalMachine, PerformanceData ve User dır. Registry verilerine Registry Editörü içerisinden erişebilirsiniz. Bu işlemi gerçekleştirmek için Start -Run menüsüne regedit yazmanız yeterli. Methodlarımızı çalışması için Microsoft.Win32 projenize dahil etmeyi unutmayın. Genel olarak bu sınıfın methodlarını inceleyecek olursak;



AnaRoot’a veri eklemek için,



Registry.CurrentUser.SetValue("user","Rmtgroup");




Parametre olarak bir string, bir de object türünden iki parametre alır. Bu parametrelerin birinicisi bu verinin adı, ikincisi ise değeridir.



AnaRoot’dan veri okumak için,



string sifre;

sifre = Registry.CurrentUser.GetValue("user").ToString;


Parametre olarak bir string değer alır. Bu fonksiyon geriye object değer döndürür.



Alt Klasör eklemek için,



Registry.CurrentUser.CreateSubKey("RmtGroupSoft"). ToString;




Alt Klasöre veri eklemek için,



Registry.CurrentUser.CreateSubKey("RmtGroupSoft").SetValue("ogrenci", "bilgeadam"). ToString;




Alt Klasördeki veriyi okumak için,



string sifre;

sifre=Registry.CurrentUser.OpenSubKey("RmtGroupSoft").GetValue("ogrenci").ToString();




RegisterSoftEdit.gif






Windows Registry Bilgilerini okumak için,



Bazı durumlarda Registry kayıtlı Windows değerlerini okutmak isteyebilirsiniz. Bu durumu örnek ile anlatmak daha faydalı olacağı kanısındayım. Windows içerisindeki default(varsayılan) printer(yazıcı) ayarına ihtiyacımız olsun. Bu durumda HKEY_CURRENT_USER rootunun altındaki “Printers” klasöründe bulunanan DeviceOld degişkeni, printer’ın ad ve port biligilerini verecektir.



Dim printer As String

printer=Registry.CurrentUser.OpenSubKey("Printers").GetValue("DeviceOld") ToString;






Diğer bir örnek de ise Microsoft Office ait programların kurulu olup olmadığını kontrol edebilirsiniz. Ben Kendi örneğimde Access’i tercih ettim. Siz Excel veya Word’ü kontrol edebilirsiniz.



RegistryKey exs;
exs = Registry.ClassesRoot.OpenSubKey("Access.Application");

if (exs == null)

MessageBox.Show("Access Kurulu değildir");

else

MessageBox.Show("Access Kurulmuştur.");




Root içiresindeki klasör sayısını ögrenmek için aşağıdaki kodu yazabilirsin.



string klasors;

klasors =Registry.CurrentUser.SubKeyCount.ToString();




Klasör içiresindeki değişken sayısını ögrenmek için aşağıdaki kodu yazabilirsin.



string degisken;

degisken =Registry.CurrentUser.ValueCount.ToString();




Bu makalemde, kendi uygulamalarınızı kısmen kopyalanmasını ve şifre kontroleri içinde sizlerin uygulamarında yardımcı olacağı düşüncesi ile registry konusunu işledik.Bir başka makalemde görüşmek dileğiyle.
 
sen daha zekisin. bari aşagıdaki bu makalemde yazsını sileydin insanlar hiçbirşeyden anlamanayan alntıcı biri oldugunu anlamasaydı ;)
 
Geri
Üst