Not
Bu sayfaya erişim yetkilendirme gerektiriyor. Oturum açmayı veya dizinleri değiştirmeyi deneyebilirsiniz.
Bu sayfaya erişim yetkilendirme gerektiriyor. Dizinleri değiştirmeyi deneyebilirsiniz.
GetValue nesnesinin My.Computer.Registry yöntemi, Windows kayıt defterindeki değerleri okumak için kullanılabilir.
Aşağıdaki örnekteki "Software\MyApp" anahtarı yoksa, bir istisna fırlatılır. Aşağıdaki örnekteki ValueName, "Ad" yoksa, Nothing döndürülür.
yöntemi, GetValue belirli bir değerin belirli bir kayıt defteri anahtarında mevcut olup olmadığını belirlemek için de kullanılabilir.
Kod bir Web uygulamasından kayıt defterini okuduğunda, geçerli kullanıcı Web uygulamasında uygulanan kimlik doğrulama ve kimliğe bürünme süreçleri ile belirlenir.
Kayıt defteri anahtarından bir değeri okumak için
Kayıt defteri anahtarından bir değeri okumak için
GetValueyöntemini, yolunu ve adını belirterek kullanın. Aşağıdaki örnek, değeriName'danHKEY_CURRENT_USER\Software\MyAppokur ve bir ileti kutusunda görüntüler.Dim readValue = My.Computer.Registry.GetValue( "HKEY_CURRENT_USER\Software\MyApp", "Name", Nothing) MsgBox("The value is " & readValue)
Bu kod örneği, IntelliSense kod parçacığı olarak da kullanılabilir. Kod parçacığı seçicisinde , Windows İşletim Sistemi > Kayıt Defteri'nde bulunur. Daha fazla bilgi için bkz. Kod Parçacıkları.
Kayıt defteri anahtarında bir değerin mevcut olup olmadığını belirlemek için
GetValuedeğerini almak için yöntemini kullanın. Aşağıdaki kod, değerin var olup olmadığını denetler ve yoksa bir ileti döndürür.If My.Computer.Registry.GetValue("HKEY_LOCAL_MACHINE\TestApp", "TestValue", Nothing) Is Nothing Then MsgBox("Value does not exist.") End If
Sağlam Programlama
Kayıt defteri, verileri depolamak için kullanılan en üst düzey veya kök anahtarları barındırıyor. Örneğin, HKEY_LOCAL_MACHINE kök anahtarı tüm kullanıcılar tarafından kullanılan makine düzeyinde ayarları depolamak için kullanılırken, HKEY_CURRENT_USER tek bir kullanıcıya özgü verileri depolamak için kullanılır.
Aşağıdaki koşullar bir özel duruma neden olabilir:
Anahtarın
Nothingadı : (ArgumentNullException).Kullanıcının kayıt defteri anahtarlarından (SecurityException) okuma izni yok.
Anahtar adı 255 karakter sınırını (ArgumentException ) aşıyor.
.NET Framework Güvenliği
Bu işlemi çalıştırmak için, RegistryPermission sınıfı tarafından verilen ayrıcalık düzeyine sahip bir derleme gereklidir. Kısmi güven bağlamında çalıştırıyorsanız, işlem yetersiz ayrıcalıklar nedeniyle bir özel durum oluşturabilir. Benzer şekilde, kullanıcının ayarlar oluşturmak veya ayarlara yazmak için doğru ACL'lere sahip olması gerekir. Örneğin, kod erişimi güvenlik iznine sahip yerel bir uygulamanın işletim sistemi izni olmayabilir. Daha fazla bilgi için bkz. Kod Erişim Güvenliği Temelleri.
Uyarı
Kod Erişim Güvenliği (CAS), .NET Framework ve .NET'in tüm sürümlerinde kullanım dışı bırakılmıştır. .NET'in son sürümleri CAS ek açıklamalarını dikkate almaz ve CAS ile ilgili API'ler kullanılırsa hata üretir. Geliştiriciler, güvenlik görevlerini yerine getirmek için alternatif yöntemler aramalıdır.