RegistryKey.OpenSubKey Metoda
Definicja
Ważne
Niektóre informacje odnoszą się do produktu w wersji wstępnej, który może zostać znacząco zmodyfikowany przed wydaniem. Firma Microsoft nie udziela żadnych gwarancji, jawnych lub domniemanych, w odniesieniu do informacji podanych w tym miejscu.
Pobiera określony podklucz.
Przeciążenia
OpenSubKey(String, Boolean) |
Pobiera określony podklucz i określa, czy dostęp do zapisu ma być stosowany do klucza. |
OpenSubKey(String, RegistryKeyPermissionCheck, RegistryRights) |
Pobiera określony podklucz dostępu do odczytu lub odczytu/zapisu, żądając określonych praw dostępu. |
OpenSubKey(String, RegistryRights) |
Pobiera podklucz z określoną nazwą i prawami dostępu. Dostępne od wersji .NET Framework 4.6. |
OpenSubKey(String) |
Pobiera podklucz jako tylko do odczytu. |
OpenSubKey(String, RegistryKeyPermissionCheck) |
Pobiera określony podklucz dostępu do odczytu lub odczytu/zapisu. |
OpenSubKey(String, Boolean)
- Źródło:
- RegistryKey.cs
Pobiera określony podklucz i określa, czy dostęp do zapisu ma być stosowany do klucza.
public:
Microsoft::Win32::RegistryKey ^ OpenSubKey(System::String ^ name, bool writable);
public Microsoft.Win32.RegistryKey OpenSubKey (string name, bool writable);
public Microsoft.Win32.RegistryKey? OpenSubKey (string name, bool writable);
member this.OpenSubKey : string * bool -> Microsoft.Win32.RegistryKey
Public Function OpenSubKey (name As String, writable As Boolean) As RegistryKey
Parametry
- name
- String
Nazwa lub ścieżka podklucza do otwarcia.
- writable
- Boolean
Ustaw wartość na true
, jeśli potrzebujesz dostępu do zapisu do klucza.
Zwraca
Żądany podklucz lub null
jeśli operacja nie powiodła się.
Wyjątki
name
to null
.
Element RegistryKey jest zamknięty (nie można uzyskać dostępu do zamkniętych kluczy).
Użytkownik nie ma uprawnień wymaganych do uzyskania dostępu do klucza rejestru w określonym trybie.
Przykłady
Poniższy przykład kodu tworzy klucz testowy i używa OpenSubKey metody do jego otwarcia, demonstrując oba przeciążenia metody.
#using <Microsoft.VisualBasic.dll>
using namespace System;
using namespace Microsoft::Win32;
using namespace Microsoft::VisualBasic;
int main()
{
// Delete and recreate the test key.
Registry::CurrentUser->DeleteSubKey( L"RegistryOpenSubKeyExample", false );
RegistryKey ^ rk = Registry::CurrentUser->CreateSubKey( L"RegistryOpenSubKeyExample" );
rk->Close();
// Obtain an instance of RegistryKey for the CurrentUser registry
// root.
RegistryKey ^ rkCurrentUser = Registry::CurrentUser;
// Obtain the test key (read-only) and display it.
RegistryKey ^ rkTest = rkCurrentUser->OpenSubKey( L"RegistryOpenSubKeyExample" );
Console::WriteLine( L"Test key: {0}", rkTest );
rkTest->Close();
rkCurrentUser->Close();
// Obtain the test key in one step, using the CurrentUser registry
// root.
rkTest = Registry::CurrentUser->OpenSubKey( L"RegistryOpenSubKeyExample" );
Console::WriteLine( L"Test key: {0}", rkTest );
rkTest->Close();
// Open the test key in read/write mode.
rkTest = Registry::CurrentUser->OpenSubKey( L"RegistryOpenSubKeyExample", true );
rkTest->SetValue( L"TestName", L"TestValue" );
Console::WriteLine( L"Test value for TestName: {0}", rkTest->GetValue( L"TestName" ) );
rkTest->Close();
return 0;
} //Main
using System;
using Microsoft.Win32;
using Microsoft.VisualBasic;
public class Example
{
public static void Main()
{
// Delete and recreate the test key.
Registry.CurrentUser.DeleteSubKey("RegistryOpenSubKeyExample", false);
RegistryKey rk = Registry.CurrentUser.CreateSubKey("RegistryOpenSubKeyExample");
rk.Close();
// Obtain an instance of RegistryKey for the CurrentUser registry
// root.
RegistryKey rkCurrentUser = Registry.CurrentUser;
// Obtain the test key (read-only) and display it.
RegistryKey rkTest = rkCurrentUser.OpenSubKey("RegistryOpenSubKeyExample");
Console.WriteLine("Test key: {0}", rkTest);
rkTest.Close();
rkCurrentUser.Close();
// Obtain the test key in one step, using the CurrentUser registry
// root.
rkTest = Registry.CurrentUser.OpenSubKey("RegistryOpenSubKeyExample");
Console.WriteLine("Test key: {0}", rkTest);
rkTest.Close();
// Open the test key in read/write mode.
rkTest = Registry.CurrentUser.OpenSubKey("RegistryOpenSubKeyExample", true);
rkTest.SetValue("TestName", "TestValue");
Console.WriteLine("Test value for TestName: {0}", rkTest.GetValue("TestName"));
rkTest.Close();
} //Main
} //Example
Imports Microsoft.Win32
Public Class Example
Public Shared Sub Main()
' Delete and recreate the test key.
Registry.CurrentUser.DeleteSubKey("RegistryOpenSubKeyExample", False)
Dim rk As RegistryKey = Registry.CurrentUser.CreateSubKey("RegistryOpenSubKeyExample")
rk.Close
' Obtain an instance of RegistryKey for the CurrentUser registry
' root.
Dim rkCurrentUser As RegistryKey = Registry.CurrentUser
' Obtain the test key (read-only) and display it.
Dim rkTest As RegistryKey = rkCurrentUser.OpenSubKey("RegistryOpenSubKeyExample")
Console.WriteLine("Test key: {0}", rkTest)
rkTest.Close
rkCurrentUser.Close
' Obtain the test key in one step, using the CurrentUser registry
' root.
rkTest = Registry.CurrentUser.OpenSubKey("RegistryOpenSubKeyExample")
Console.WriteLine("Test key: {0}", rkTest)
rkTest.Close
' Obtain the test key in read/write mode.
rkTest = Registry.CurrentUser.OpenSubKey("RegistryOpenSubKeyExample", True)
rkTest.SetValue("TestName", "TestValue")
Console.WriteLine("Test value for TestName: {0}", rkTest.GetValue("TestName"))
rkTest.Close
End Sub
End Class
Uwagi
Jeśli żądany klucz nie istnieje, ta metoda zwraca null
zamiast zgłaszać wyjątek.
Jeśli writable
parametr ma true
wartość , klucz zostanie otwarty do odczytu i zapisu. W przeciwnym razie klucz zostanie otwarty jako tylko do odczytu.
Aby można było użyć OpenSubKey metody , musisz mieć wystąpienie RegistryKey metody . Aby uzyskać wystąpienie klasy RegistryKey, użyj jednego ze statycznych elementów członkowskich Registry klasy .
Zobacz też
- CreateSubKey(String)
- DeleteSubKey(String)
- DeleteSubKeyTree(String)
- GetSubKeyNames()
- OpenRemoteBaseKey(RegistryHive, String)
- SubKeyCount
- Registry
Dotyczy
OpenSubKey(String, RegistryKeyPermissionCheck, RegistryRights)
- Źródło:
- RegistryKey.cs
Pobiera określony podklucz dostępu do odczytu lub odczytu/zapisu, żądając określonych praw dostępu.
public:
Microsoft::Win32::RegistryKey ^ OpenSubKey(System::String ^ name, Microsoft::Win32::RegistryKeyPermissionCheck permissionCheck, System::Security::AccessControl::RegistryRights rights);
public Microsoft.Win32.RegistryKey OpenSubKey (string name, Microsoft.Win32.RegistryKeyPermissionCheck permissionCheck, System.Security.AccessControl.RegistryRights rights);
public Microsoft.Win32.RegistryKey? OpenSubKey (string name, Microsoft.Win32.RegistryKeyPermissionCheck permissionCheck, System.Security.AccessControl.RegistryRights rights);
[System.Runtime.InteropServices.ComVisible(false)]
public Microsoft.Win32.RegistryKey OpenSubKey (string name, Microsoft.Win32.RegistryKeyPermissionCheck permissionCheck, System.Security.AccessControl.RegistryRights rights);
member this.OpenSubKey : string * Microsoft.Win32.RegistryKeyPermissionCheck * System.Security.AccessControl.RegistryRights -> Microsoft.Win32.RegistryKey
[<System.Runtime.InteropServices.ComVisible(false)>]
member this.OpenSubKey : string * Microsoft.Win32.RegistryKeyPermissionCheck * System.Security.AccessControl.RegistryRights -> Microsoft.Win32.RegistryKey
Public Function OpenSubKey (name As String, permissionCheck As RegistryKeyPermissionCheck, rights As RegistryRights) As RegistryKey
Parametry
- name
- String
Nazwa lub ścieżka podklucza, który ma zostać utworzony lub otwarty.
- permissionCheck
- RegistryKeyPermissionCheck
Jedna z wartości wyliczenia, która określa, czy klucz jest otwarty w celu odczytu lub odczytu i zapisu.
- rights
- RegistryRights
Bitowa kombinacja wartości wyliczenia, która określa żądany dostęp zabezpieczeń.
Zwraca
Żądany podklucz lub null
jeśli operacja nie powiodła się.
- Atrybuty
Wyjątki
name
to null
permissionCheck
zawiera nieprawidłową wartość.
Element RegistryKey jest zamknięty (nie można uzyskać dostępu do zamkniętych kluczy).
rights
zawiera nieprawidłowe wartości praw rejestru.
-lub-
Użytkownik nie ma żądanych uprawnień.
Uwagi
Zamiast zgłaszać wyjątek, ta metoda zwraca null
wartość , jeśli żądany klucz nie istnieje.
Jeśli parametr ma RegistryKeyPermissionCheck.ReadWriteSubTreewartość , klucz jest otwarty do odczytu i zapisu. Jeśli permissionCheck
permissionCheck
element to RegistryKeyPermissionCheck.ReadSubTree lub RegistryKeyPermissionCheck.Default, klucz jest otwarty do odczytu, chyba że klucz nadrzędny został otwarty za pomocą RegistryKeyPermissionCheck.ReadWriteSubTreepolecenia .
Określony dostęp permissionCheck
dla ma pierwszeństwo przed dostępem określonym dla rights
. Jeśli na przykład określisz RegistryKeyPermissionCheck.ReadSubTree parametr permissionCheck
i RegistryRights.WriteKey dla rights
, próba zapisania w podkluczu zgłosi wyjątek.
Aby można było użyć OpenSubKey metody , musisz mieć wystąpienie RegistryKey klasy . Aby uzyskać wystąpienie klasy RegistryKey, użyj jednego ze statycznych elementów członkowskich Registry klasy .
Zobacz też
- CreateSubKey(String)
- DeleteSubKey(String)
- DeleteSubKeyTree(String)
- GetSubKeyNames()
- OpenRemoteBaseKey(RegistryHive, String)
- SubKeyCount
- Registry
Dotyczy
OpenSubKey(String, RegistryRights)
- Źródło:
- RegistryKey.cs
Pobiera podklucz z określoną nazwą i prawami dostępu. Dostępne od wersji .NET Framework 4.6.
public:
Microsoft::Win32::RegistryKey ^ OpenSubKey(System::String ^ name, System::Security::AccessControl::RegistryRights rights);
public Microsoft.Win32.RegistryKey OpenSubKey (string name, System.Security.AccessControl.RegistryRights rights);
public Microsoft.Win32.RegistryKey? OpenSubKey (string name, System.Security.AccessControl.RegistryRights rights);
[System.Runtime.InteropServices.ComVisible(false)]
public Microsoft.Win32.RegistryKey OpenSubKey (string name, System.Security.AccessControl.RegistryRights rights);
member this.OpenSubKey : string * System.Security.AccessControl.RegistryRights -> Microsoft.Win32.RegistryKey
[<System.Runtime.InteropServices.ComVisible(false)>]
member this.OpenSubKey : string * System.Security.AccessControl.RegistryRights -> Microsoft.Win32.RegistryKey
Public Function OpenSubKey (name As String, rights As RegistryRights) As RegistryKey
Parametry
- name
- String
Nazwa lub ścieżka podklucza, który ma zostać utworzony lub otwarty.
- rights
- RegistryRights
Prawa klucza rejestru.
Zwraca
Żądany podklucz lub null
jeśli operacja nie powiodła się.
- Atrybuty
Wyjątki
name
to null
.
Element RegistryKey jest zamknięty (nie można uzyskać dostępu do zamkniętych kluczy).
Użytkownik nie ma uprawnień wymaganych do uzyskania dostępu do klucza rejestru w określonym trybie.
Uwagi
Aby można było manipulować innymi metodami i właściwościami, należy otworzyć klucz. Aby zmodyfikować klucz, należy go otworzyć z przeciążeniem OpenSubKey metody, która umożliwia określenie dostępu do zapisu.
Dotyczy
OpenSubKey(String)
- Źródło:
- RegistryKey.cs
Pobiera podklucz jako tylko do odczytu.
public:
Microsoft::Win32::RegistryKey ^ OpenSubKey(System::String ^ name);
public Microsoft.Win32.RegistryKey OpenSubKey (string name);
public Microsoft.Win32.RegistryKey? OpenSubKey (string name);
member this.OpenSubKey : string -> Microsoft.Win32.RegistryKey
Public Function OpenSubKey (name As String) As RegistryKey
Parametry
- name
- String
Nazwa lub ścieżka podklucza do otwarcia jako tylko do odczytu.
Zwraca
Żądany podklucz lub null
jeśli operacja nie powiodła się.
Wyjątki
name
to null
Element RegistryKey jest zamknięty (nie można uzyskać dostępu do zamkniętych kluczy).
Użytkownik nie ma uprawnień wymaganych do odczytu klucza rejestru.
Przykłady
Poniższy przykład kodu tworzy klucz testowy i używa OpenSubKey metody do jego otwarcia, demonstrując oba przeciążenia metody.
#using <Microsoft.VisualBasic.dll>
using namespace System;
using namespace Microsoft::Win32;
using namespace Microsoft::VisualBasic;
int main()
{
// Delete and recreate the test key.
Registry::CurrentUser->DeleteSubKey( L"RegistryOpenSubKeyExample", false );
RegistryKey ^ rk = Registry::CurrentUser->CreateSubKey( L"RegistryOpenSubKeyExample" );
rk->Close();
// Obtain an instance of RegistryKey for the CurrentUser registry
// root.
RegistryKey ^ rkCurrentUser = Registry::CurrentUser;
// Obtain the test key (read-only) and display it.
RegistryKey ^ rkTest = rkCurrentUser->OpenSubKey( L"RegistryOpenSubKeyExample" );
Console::WriteLine( L"Test key: {0}", rkTest );
rkTest->Close();
rkCurrentUser->Close();
// Obtain the test key in one step, using the CurrentUser registry
// root.
rkTest = Registry::CurrentUser->OpenSubKey( L"RegistryOpenSubKeyExample" );
Console::WriteLine( L"Test key: {0}", rkTest );
rkTest->Close();
// Open the test key in read/write mode.
rkTest = Registry::CurrentUser->OpenSubKey( L"RegistryOpenSubKeyExample", true );
rkTest->SetValue( L"TestName", L"TestValue" );
Console::WriteLine( L"Test value for TestName: {0}", rkTest->GetValue( L"TestName" ) );
rkTest->Close();
return 0;
} //Main
using System;
using Microsoft.Win32;
using Microsoft.VisualBasic;
public class Example
{
public static void Main()
{
// Delete and recreate the test key.
Registry.CurrentUser.DeleteSubKey("RegistryOpenSubKeyExample", false);
RegistryKey rk = Registry.CurrentUser.CreateSubKey("RegistryOpenSubKeyExample");
rk.Close();
// Obtain an instance of RegistryKey for the CurrentUser registry
// root.
RegistryKey rkCurrentUser = Registry.CurrentUser;
// Obtain the test key (read-only) and display it.
RegistryKey rkTest = rkCurrentUser.OpenSubKey("RegistryOpenSubKeyExample");
Console.WriteLine("Test key: {0}", rkTest);
rkTest.Close();
rkCurrentUser.Close();
// Obtain the test key in one step, using the CurrentUser registry
// root.
rkTest = Registry.CurrentUser.OpenSubKey("RegistryOpenSubKeyExample");
Console.WriteLine("Test key: {0}", rkTest);
rkTest.Close();
// Open the test key in read/write mode.
rkTest = Registry.CurrentUser.OpenSubKey("RegistryOpenSubKeyExample", true);
rkTest.SetValue("TestName", "TestValue");
Console.WriteLine("Test value for TestName: {0}", rkTest.GetValue("TestName"));
rkTest.Close();
} //Main
} //Example
Imports Microsoft.Win32
Public Class Example
Public Shared Sub Main()
' Delete and recreate the test key.
Registry.CurrentUser.DeleteSubKey("RegistryOpenSubKeyExample", False)
Dim rk As RegistryKey = Registry.CurrentUser.CreateSubKey("RegistryOpenSubKeyExample")
rk.Close
' Obtain an instance of RegistryKey for the CurrentUser registry
' root.
Dim rkCurrentUser As RegistryKey = Registry.CurrentUser
' Obtain the test key (read-only) and display it.
Dim rkTest As RegistryKey = rkCurrentUser.OpenSubKey("RegistryOpenSubKeyExample")
Console.WriteLine("Test key: {0}", rkTest)
rkTest.Close
rkCurrentUser.Close
' Obtain the test key in one step, using the CurrentUser registry
' root.
rkTest = Registry.CurrentUser.OpenSubKey("RegistryOpenSubKeyExample")
Console.WriteLine("Test key: {0}", rkTest)
rkTest.Close
' Obtain the test key in read/write mode.
rkTest = Registry.CurrentUser.OpenSubKey("RegistryOpenSubKeyExample", True)
rkTest.SetValue("TestName", "TestValue")
Console.WriteLine("Test value for TestName: {0}", rkTest.GetValue("TestName"))
rkTest.Close
End Sub
End Class
Uwagi
Aby można było manipulować innymi metodami i właściwościami, należy otworzyć klucz. Aby zmodyfikować klucz, należy go otworzyć z przeciążeniem OpenSubKey metody, która umożliwia określenie dostępu do zapisu, takiego jak OpenSubKey(String, RegistryKeyPermissionCheck) przeciążenie lub OpenSubKey(String, Boolean) przeciążenie.
Jeśli nie można odnaleźć określonego podklucza, null
zostanie zwrócony.
Aby można było użyć OpenSubKey metody , musisz mieć wystąpienie RegistryKeyklasy . Aby uzyskać wystąpienie RegistryKeyklasy , użyj jednego ze statycznych elementów członkowskich Registry klasy .
Zobacz też
- CreateSubKey(String)
- DeleteSubKey(String)
- DeleteSubKeyTree(String)
- GetSubKeyNames()
- OpenRemoteBaseKey(RegistryHive, String)
- SubKeyCount
- Registry
Dotyczy
OpenSubKey(String, RegistryKeyPermissionCheck)
- Źródło:
- RegistryKey.cs
Pobiera określony podklucz dostępu do odczytu lub odczytu/zapisu.
public:
Microsoft::Win32::RegistryKey ^ OpenSubKey(System::String ^ name, Microsoft::Win32::RegistryKeyPermissionCheck permissionCheck);
public Microsoft.Win32.RegistryKey OpenSubKey (string name, Microsoft.Win32.RegistryKeyPermissionCheck permissionCheck);
public Microsoft.Win32.RegistryKey? OpenSubKey (string name, Microsoft.Win32.RegistryKeyPermissionCheck permissionCheck);
[System.Runtime.InteropServices.ComVisible(false)]
public Microsoft.Win32.RegistryKey OpenSubKey (string name, Microsoft.Win32.RegistryKeyPermissionCheck permissionCheck);
member this.OpenSubKey : string * Microsoft.Win32.RegistryKeyPermissionCheck -> Microsoft.Win32.RegistryKey
[<System.Runtime.InteropServices.ComVisible(false)>]
member this.OpenSubKey : string * Microsoft.Win32.RegistryKeyPermissionCheck -> Microsoft.Win32.RegistryKey
Public Function OpenSubKey (name As String, permissionCheck As RegistryKeyPermissionCheck) As RegistryKey
Parametry
- name
- String
Nazwa lub ścieżka podklucza, który ma zostać utworzony lub otwarty.
- permissionCheck
- RegistryKeyPermissionCheck
Jedna z wartości wyliczenia, która określa, czy klucz jest otwarty w celu odczytu lub odczytu i zapisu.
Zwraca
Żądany podklucz lub null
jeśli operacja nie powiodła się.
- Atrybuty
Wyjątki
name
to null
permissionCheck
zawiera nieprawidłową wartość.
Element RegistryKey jest zamknięty (nie można uzyskać dostępu do zamkniętych kluczy).
Użytkownik nie ma uprawnień wymaganych do odczytu klucza rejestru.
Przykłady
Poniższy przykład kodu tworzy podklucz zawierający 100 par klucz/wartość i zamyka go. W przykładzie zostanie otwarty podklucz z elementem Default, rejestruje czas potrzebny do odczytania wszystkich wartości i zamyka podklucz. W przykładzie zostanie otwarty podklucz z elementem ReadSubTree i rejestruje czas potrzebny do odczytania wszystkich wartości. Na koniec przykład oblicza i wyświetla poprawę procentową.
using System;
using Microsoft.Win32;
using System.Diagnostics;
public class Example
{
public static void Main()
{
const int LIMIT = 100;
RegistryKey cu = Registry.CurrentUser;
const string testKey = "RegistryKeyPermissionCheckExample";
Console.WriteLine("Generating {0} key/value pairs.", LIMIT);
RegistryKey rk = cu.CreateSubKey(testKey);
for (int i = 0; i < LIMIT; i++)
{
rk.SetValue("Key" + i, i);
}
rk.Close();
Stopwatch s = new Stopwatch();
// On the default setting, security is checked every time
// a key/value pair is read.
rk = cu.OpenSubKey(testKey, RegistryKeyPermissionCheck.Default);
s.Start();
for (int i = 0; i < LIMIT; i++)
{
rk.GetValue("Key" + i, i);
}
s.Stop();
rk.Close();
long delta1 = s.ElapsedTicks;
s.Reset();
// When the key is opened with ReadSubTree, security is
// not checked when the values are read.
rk = cu.OpenSubKey(testKey, RegistryKeyPermissionCheck.ReadSubTree);
s.Start();
for (int i = 0; i < LIMIT; i++)
{
rk.GetValue("Key" + i, i);
}
s.Stop();
rk.Close();
long delta2 = s.ElapsedTicks;
double faster = (double) (delta1 - delta2) / (double) delta1;
Console.WriteLine("ReadSubTree is {0}% faster for {1} values.",
(faster * 100).ToString("0.0"), LIMIT);
cu.DeleteSubKey(testKey);
}
}
/* This code example produces output similar to the following:
Generating 100 key/value pairs.
ReadSubTree is 23.4% faster for 100 values.
*/
Imports Microsoft.Win32
Imports System.Diagnostics
Public Class Example
Public Shared Sub Main()
Const LIMIT As Integer = 100
Dim cu As RegistryKey = Registry.CurrentUser
Const testKey As String = "RegistryKeyPermissionCheckExample"
Console.WriteLine("Generating {0} key/value pairs.", LIMIT)
Dim rk As RegistryKey = cu.CreateSubKey(testKey)
For i As Integer = 0 To LIMIT
rk.SetValue("Key" & i, i)
Next i
rk.Close()
Dim s As New Stopwatch()
' On the default setting, security is checked every time
' a key/value pair is read.
rk = cu.OpenSubKey(testKey, _
RegistryKeyPermissionCheck.Default)
s.Start()
For i As Integer = 0 To LIMIT
rk.GetValue("Key" & i, i)
Next i
s.Stop()
rk.Close()
Dim delta1 As Long = s.ElapsedTicks
s.Reset()
' When the key is opened with ReadSubTree, security is
' not checked when the values are read.
rk = cu.OpenSubKey(testKey, _
RegistryKeyPermissionCheck.ReadSubTree)
s.Start()
For i As Integer = 0 To LIMIT
rk.GetValue("Key" & i, i)
Next i
s.Stop()
rk.Close()
Dim delta2 As Long = s.ElapsedTicks
Dim faster As Double = _
CDbl(delta1 - delta2) * 100.0 / CDbl(delta1)
Console.WriteLine("ReadSubTree is {0}% faster for {1} values.", _
faster.ToString("0.0"), LIMIT)
cu.DeleteSubKey(testKey)
End Sub
End Class
' This code example produces output similar to the following:
'
'Generating 100 key/value pairs.
'ReadSubTree is 23.4% faster for 100 values.
'
Uwagi
Zamiast zgłaszać wyjątek, ta metoda zwraca null
wartość , jeśli żądany klucz nie istnieje.
Jeśli parametr ma RegistryKeyPermissionCheck.ReadWriteSubTreewartość , klucz jest otwarty do odczytu i zapisu. Jeśli permissionCheck
permissionCheck
element to RegistryKeyPermissionCheck.ReadSubTree lub RegistryKeyPermissionCheck.Default, klucz jest otwarty do odczytu, chyba że klucz nadrzędny został otwarty za pomocą RegistryKeyPermissionCheck.ReadWriteSubTreepolecenia .
Aby można było użyć OpenSubKey metody , musisz mieć wystąpienie RegistryKey klasy . Aby uzyskać wystąpienie klasy RegistryKey, użyj jednego ze statycznych elementów członkowskich Registry klasy .
Zobacz też
- CreateSubKey(String)
- DeleteSubKey(String)
- DeleteSubKeyTree(String)
- GetSubKeyNames()
- OpenRemoteBaseKey(RegistryHive, String)
- SubKeyCount
- Registry