RegistryKey.CreateSubKey Metoda

Definicja

Tworzy nowy podklucz lub otwiera istniejący podklucz.

Przeciążenia

Nazwa Opis
CreateSubKey(String)

Tworzy nowy podklucz lub otwiera istniejący podklucz na potrzeby dostępu do zapisu.

CreateSubKey(String, RegistryKeyPermissionCheck)

Tworzy nowy podklucz lub otwiera istniejący podklucz dostępu do zapisu przy użyciu określonej opcji sprawdzania uprawnień.

CreateSubKey(String, Boolean)

Tworzy nowy podklucz lub otwiera istniejący podklucz z określonym dostępem. Dostępne począwszy od platformy .NET Framework 4.6.

CreateSubKey(String, RegistryKeyPermissionCheck, RegistrySecurity)

Tworzy nowy podklucz lub otwiera istniejący podklucz dostępu do zapisu przy użyciu określonej opcji sprawdzania uprawnień i zabezpieczeń rejestru.

CreateSubKey(String, Boolean, RegistryOptions)

Tworzy nowy podklucz lub otwiera istniejący podklucz z określonym dostępem. Dostępne począwszy od platformy .NET Framework 4.6.

CreateSubKey(String, RegistryKeyPermissionCheck, RegistryOptions)

Tworzy podklucz lub otwiera podklucz na potrzeby dostępu do zapisu przy użyciu określonych opcji sprawdzania uprawnień i rejestru.

CreateSubKey(String, RegistryKeyPermissionCheck, RegistryOptions, RegistrySecurity)

Tworzy podklucz lub otwiera podklucz dostępu do zapisu przy użyciu określonej opcji sprawdzania uprawnień, opcji rejestru i zabezpieczeń rejestru.

CreateSubKey(String)

Źródło:
RegistryKey.cs

Tworzy nowy podklucz lub otwiera istniejący podklucz na potrzeby dostępu do zapisu.

public:
 Microsoft::Win32::RegistryKey ^ CreateSubKey(System::String ^ subkey);
public Microsoft.Win32.RegistryKey CreateSubKey(string subkey);
member this.CreateSubKey : string -> Microsoft.Win32.RegistryKey
Public Function CreateSubKey (subkey As String) As RegistryKey

Parametry

subkey
String

Nazwa lub ścieżka podklucza do utworzenia lub otwarcia. Ten ciąg nie uwzględnia wielkości liter.

Zwraca

Nowo utworzony podklucz lub null jeśli operacja nie powiodła się. Jeśli dla parametru określono subkeyciąg o zerowej długości, zwracany jest bieżący RegistryKey obiekt.

Wyjątki

Parametr subkey ma wartość null.

Użytkownik nie ma uprawnień wymaganych do utworzenia lub otwarcia klucza rejestru.

Wywoływana RegistryKey metoda jest zamknięta (nie można uzyskać dostępu do kluczy zamkniętych).

RegistryKey Nie można zapisać w pliku , na przykład nie został otwarty jako klucz zapisywalny lub użytkownik nie ma niezbędnych praw dostępu.

Poziom zagnieżdżania przekracza 510.

— lub —

Wystąpił błąd systemowy, taki jak usunięcie klucza lub próba utworzenia klucza w LocalMachine katalogu głównym.

Przykłady

Poniższy przykład kodu pokazuje, jak utworzyć podklucz w HKEY_CURRENT_USER, manipulować jego zawartością, a następnie usunąć podklucz.

using namespace System;
using namespace System::Security::Permissions;
using namespace Microsoft::Win32;

int main()
{
   // Create a subkey named Test9999 under HKEY_CURRENT_USER.
   RegistryKey ^ test9999 = Registry::CurrentUser->CreateSubKey( "Test9999" );

   // Create two subkeys under HKEY_CURRENT_USER\Test9999.
   test9999->CreateSubKey( "TestName" )->Close();
   RegistryKey ^ testSettings = test9999->CreateSubKey( "TestSettings" );

   // Create data for the TestSettings subkey.
   testSettings->SetValue( "Language", "French" );
   testSettings->SetValue( "Level", "Intermediate" );
   testSettings->SetValue( "ID", 123 );
   testSettings->Close();

   // Print the information from the Test9999 subkey.
   Console::WriteLine( "There are {0} subkeys under Test9999.", test9999->SubKeyCount.ToString() );
   array<String^>^subKeyNames = test9999->GetSubKeyNames();
   for ( int i = 0; i < subKeyNames->Length; i++ )
   {
      RegistryKey ^ tempKey = test9999->OpenSubKey( subKeyNames[ i ] );
      Console::WriteLine( "\nThere are {0} values for {1}.", tempKey->ValueCount.ToString(), tempKey->Name );
      array<String^>^valueNames = tempKey->GetValueNames();
      for ( int j = 0; j < valueNames->Length; j++ )
      {
         Console::WriteLine( "{0,-8}: {1}", valueNames[ j ], tempKey->GetValue( valueNames[ j ] )->ToString() );

      }
   }
   
   // Delete the ID value.
   testSettings = test9999->OpenSubKey( "TestSettings", true );
   testSettings->DeleteValue( "id" );

   // Verify the deletion.
   Console::WriteLine( dynamic_cast<String^>(testSettings->GetValue(  "id", "ID not found." )) );
   testSettings->Close();

   // Delete or close the new subkey.
   Console::Write( "\nDelete newly created registry key? (Y/N) " );
   if ( Char::ToUpper( Convert::ToChar( Console::Read() ) ) == 'Y' )
   {
      Registry::CurrentUser->DeleteSubKeyTree( "Test9999" );
      Console::WriteLine( "\nRegistry key {0} deleted.", test9999->Name );
   }
   else
   {
      Console::WriteLine( "\nRegistry key {0} closed.", test9999->ToString() );
      test9999->Close();
   }
}
using System;
using System.Security.Permissions;
using Microsoft.Win32;

class RegKey
{
    static void Main()
    {
        // Create a subkey named Test9999 under HKEY_CURRENT_USER.
        RegistryKey test9999 =
            Registry.CurrentUser.CreateSubKey("Test9999");
        // Create two subkeys under HKEY_CURRENT_USER\Test9999. The
        // keys are disposed when execution exits the using statement.
        using(RegistryKey
            testName = test9999.CreateSubKey("TestName"),
            testSettings = test9999.CreateSubKey("TestSettings"))
        {
            // Create data for the TestSettings subkey.
            testSettings.SetValue("Language", "French");
            testSettings.SetValue("Level", "Intermediate");
            testSettings.SetValue("ID", 123);
        }

        // Print the information from the Test9999 subkey.
        Console.WriteLine("There are {0} subkeys under {1}.",
            test9999.SubKeyCount.ToString(), test9999.Name);
        foreach(string subKeyName in test9999.GetSubKeyNames())
        {
            using(RegistryKey
                tempKey = test9999.OpenSubKey(subKeyName))
            {
                Console.WriteLine("\nThere are {0} values for {1}.",
                    tempKey.ValueCount.ToString(), tempKey.Name);
                foreach(string valueName in tempKey.GetValueNames())
                {
                    Console.WriteLine("{0,-8}: {1}", valueName,
                        tempKey.GetValue(valueName).ToString());
                }
            }
        }

        using(RegistryKey
            testSettings = test9999.OpenSubKey("TestSettings", true))
        {
            // Delete the ID value.
            testSettings.DeleteValue("id");

            // Verify the deletion.
            Console.WriteLine((string)testSettings.GetValue(
                "id", "ID not found."));
        }

        // Delete or close the new subkey.
        Console.Write("\nDelete newly created registry key? (Y/N) ");
        if(Char.ToUpper(Convert.ToChar(Console.Read())) == 'Y')
        {
            Registry.CurrentUser.DeleteSubKeyTree("Test9999");
            Console.WriteLine("\nRegistry key {0} deleted.",
                test9999.Name);
        }
        else
        {
            Console.WriteLine("\nRegistry key {0} closed.",
                test9999.ToString());
            test9999.Close();
        }
    }
}
Imports System.Security.Permissions
Imports Microsoft.Win32

Public Class RegKey
    Shared Sub Main()

        ' Create a subkey named Test9999 under HKEY_CURRENT_USER.
        Dim test9999 As RegistryKey = _
            Registry.CurrentUser.CreateSubKey("Test9999")

        ' Create two subkeys under HKEY_CURRENT_USER\Test9999.
        test9999.CreateSubKey("TestName").Close()
        Dim testSettings As RegistryKey = _
            test9999.CreateSubKey("TestSettings")

        ' Create data for the TestSettings subkey.
        testSettings.SetValue("Language", "French")
        testSettings.SetValue("Level", "Intermediate")
        testSettings.SetValue("ID", 123)
        testSettings.Close()

        ' Print the information from the Test9999 subkey.
        Console.WriteLine("There are {0} subkeys under Test9999.", _
            test9999.SubKeyCount.ToString())
        For Each subKeyName As String In test9999.GetSubKeyNames()
            Dim tempKey As RegistryKey = _
                test9999.OpenSubKey(subKeyName)
            Console.WriteLine(vbCrLf & "There are {0} values for " & _
                "{1}.", tempKey.ValueCount.ToString(), tempKey.Name)
            For Each valueName As String In tempKey.GetValueNames()
                Console.WriteLine("{0,-8}: {1}", valueName, _
                    tempKey.GetValue(valueName).ToString())
            Next
        Next

        ' Delete the ID value.
        testSettings = test9999.OpenSubKey("TestSettings", True)
        testSettings.DeleteValue("id")

        ' Verify the deletion.
        Console.WriteLine(CType(testSettings.GetValue( _
            "id", "ID not found."), String))
        testSettings.Close()

        ' Delete or close the new subkey.
        Console.Write(vbCrLf & "Delete newly created " & _
            "registry key? (Y/N) ")
        If Char.ToUpper(Convert.ToChar(Console.Read())) = "Y"C Then
            Registry.CurrentUser.DeleteSubKeyTree("Test9999")
            Console.WriteLine(vbCrLf & "Registry key {0} deleted.", _
                test9999.Name)
        Else
            Console.WriteLine(vbCrLf & "Registry key {0} closed.", _
                test9999.ToString())
            test9999.Close()
        End If
   
    End Sub
End Class

Uwagi

Aby wykonać tę akcję, użytkownik musi mieć uprawnienia na tym poziomie i poniżej w hierarchii rejestru.

Caution

Nie ujawniaj RegistryKey obiektów w taki sposób, że złośliwy program może utworzyć tysiące bez znaczenia podklucze lub pary klucz/wartość. Na przykład nie zezwalaj obiektom wywołującym na wprowadzanie dowolnych kluczy lub wartości.

Zobacz też

Dotyczy

CreateSubKey(String, RegistryKeyPermissionCheck)

Źródło:
RegistryKey.cs

Tworzy nowy podklucz lub otwiera istniejący podklucz dostępu do zapisu przy użyciu określonej opcji sprawdzania uprawnień.

public:
 Microsoft::Win32::RegistryKey ^ CreateSubKey(System::String ^ subkey, Microsoft::Win32::RegistryKeyPermissionCheck permissionCheck);
public Microsoft.Win32.RegistryKey CreateSubKey(string subkey, Microsoft.Win32.RegistryKeyPermissionCheck permissionCheck);
[System.Runtime.InteropServices.ComVisible(false)]
public Microsoft.Win32.RegistryKey CreateSubKey(string subkey, Microsoft.Win32.RegistryKeyPermissionCheck permissionCheck);
member this.CreateSubKey : string * Microsoft.Win32.RegistryKeyPermissionCheck -> Microsoft.Win32.RegistryKey
[<System.Runtime.InteropServices.ComVisible(false)>]
member this.CreateSubKey : string * Microsoft.Win32.RegistryKeyPermissionCheck -> Microsoft.Win32.RegistryKey
Public Function CreateSubKey (subkey As String, permissionCheck As RegistryKeyPermissionCheck) As RegistryKey

Parametry

subkey
String

Nazwa lub ścieżka podklucza do utworzenia lub otwarcia. Ten ciąg nie uwzględnia wielkości liter.

permissionCheck
RegistryKeyPermissionCheck

Jedna z wartości wyliczenia określająca, czy klucz jest otwarty na potrzeby dostępu do odczytu lub odczytu/zapisu.

Zwraca

Nowo utworzony podklucz lub null jeśli operacja nie powiodła się. Jeśli dla parametru określono subkeyciąg o zerowej długości, zwracany jest bieżący RegistryKey obiekt.

Atrybuty

Wyjątki

Parametr subkey ma wartość null.

Użytkownik nie ma uprawnień wymaganych do utworzenia lub otwarcia klucza rejestru.

permissionCheck zawiera nieprawidłową wartość.

Wywoływana RegistryKey metoda jest zamknięta (nie można uzyskać dostępu do kluczy zamkniętych).

Nie można zapisać w RegistryKey pliku , na przykład nie został otwarty jako klucz zapisywalny lub użytkownik nie ma niezbędnych praw dostępu.

Poziom zagnieżdżania przekracza 510.

— lub —

Wystąpił błąd systemowy, taki jak usunięcie klucza lub próba utworzenia klucza w LocalMachine katalogu głównym.

Uwagi

Aby wykonać tę akcję, użytkownik musi mieć uprawnienia na tym poziomie i poniżej w hierarchii rejestru.

Caution

Nie ujawniaj RegistryKey obiektów w taki sposób, że złośliwy program może utworzyć tysiące bez znaczenia podklucze lub pary klucz/wartość. Na przykład nie zezwalaj obiektom wywołującym na wprowadzanie dowolnych kluczy lub wartości.

Aby można było użyć OpenSubKey metody, musisz mieć wystąpienie RegistryKey klasy . Aby uzyskać wystąpienie RegistryKeyklasy , użyj jednego ze statycznych elementów członkowskich Registry klasy .

Zobacz też

Dotyczy

CreateSubKey(String, Boolean)

Źródło:
RegistryKey.cs

Tworzy nowy podklucz lub otwiera istniejący podklucz z określonym dostępem. Dostępne począwszy od platformy .NET Framework 4.6.

public:
 Microsoft::Win32::RegistryKey ^ CreateSubKey(System::String ^ subkey, bool writable);
public Microsoft.Win32.RegistryKey CreateSubKey(string subkey, bool writable);
[System.Runtime.InteropServices.ComVisible(false)]
public Microsoft.Win32.RegistryKey CreateSubKey(string subkey, bool writable);
member this.CreateSubKey : string * bool -> Microsoft.Win32.RegistryKey
[<System.Runtime.InteropServices.ComVisible(false)>]
member this.CreateSubKey : string * bool -> Microsoft.Win32.RegistryKey
Public Function CreateSubKey (subkey As String, writable As Boolean) As RegistryKey

Parametry

subkey
String

Nazwa lub ścieżka podklucza do utworzenia lub otwarcia. Ten ciąg nie uwzględnia wielkości liter.

writable
Boolean

true aby wskazać, że nowy podklucz jest zapisywalny; w przeciwnym razie, false.

Zwraca

Nowo utworzony podklucz lub null jeśli operacja nie powiodła się. Jeśli dla parametru określono subkeyciąg o zerowej długości, zwracany jest bieżący RegistryKey obiekt.

Atrybuty

Wyjątki

Parametr subkey ma wartość null.

Użytkownik nie ma uprawnień wymaganych do utworzenia lub otwarcia klucza rejestru.

Nie można zapisać bieżącego RegistryKey elementu, na przykład nie został otwarty jako klucz zapisywalny lub użytkownik nie ma niezbędnych praw dostępu.

Poziom zagnieżdżania przekracza 510.

— lub —

Wystąpił błąd systemowy, taki jak usunięcie klucza lub próba utworzenia klucza w LocalMachine katalogu głównym.

Uwagi

Aby wykonać tę akcję, użytkownik musi mieć uprawnienia na tym poziomie i poniżej w hierarchii rejestru.

Caution

Nie ujawniaj RegistryKey obiektów w taki sposób, że złośliwy program może utworzyć tysiące bez znaczenia podklucze lub pary klucz/wartość. Na przykład nie zezwalaj obiektom wywołującym na wprowadzanie dowolnych kluczy lub wartości.

Aby można było użyć CreateSubKey metody, musisz mieć wystąpienie RegistryKey klasy . Aby uzyskać wystąpienie RegistryKeyklasy , użyj jednego ze statycznych elementów członkowskich Registry klasy .

Dotyczy

CreateSubKey(String, RegistryKeyPermissionCheck, RegistrySecurity)

Źródło:
RegistryKey.cs

Tworzy nowy podklucz lub otwiera istniejący podklucz dostępu do zapisu przy użyciu określonej opcji sprawdzania uprawnień i zabezpieczeń rejestru.

public:
 Microsoft::Win32::RegistryKey ^ CreateSubKey(System::String ^ subkey, Microsoft::Win32::RegistryKeyPermissionCheck permissionCheck, System::Security::AccessControl::RegistrySecurity ^ registrySecurity);
public Microsoft.Win32.RegistryKey CreateSubKey(string subkey, Microsoft.Win32.RegistryKeyPermissionCheck permissionCheck, System.Security.AccessControl.RegistrySecurity? registrySecurity);
[System.Runtime.InteropServices.ComVisible(false)]
public Microsoft.Win32.RegistryKey CreateSubKey(string subkey, Microsoft.Win32.RegistryKeyPermissionCheck permissionCheck, System.Security.AccessControl.RegistrySecurity registrySecurity);
public Microsoft.Win32.RegistryKey CreateSubKey(string subkey, Microsoft.Win32.RegistryKeyPermissionCheck permissionCheck, System.Security.AccessControl.RegistrySecurity registrySecurity);
member this.CreateSubKey : string * Microsoft.Win32.RegistryKeyPermissionCheck * System.Security.AccessControl.RegistrySecurity -> Microsoft.Win32.RegistryKey
[<System.Runtime.InteropServices.ComVisible(false)>]
member this.CreateSubKey : string * Microsoft.Win32.RegistryKeyPermissionCheck * System.Security.AccessControl.RegistrySecurity -> Microsoft.Win32.RegistryKey
Public Function CreateSubKey (subkey As String, permissionCheck As RegistryKeyPermissionCheck, registrySecurity As RegistrySecurity) As RegistryKey

Parametry

subkey
String

Nazwa lub ścieżka podklucza do utworzenia lub otwarcia. Ten ciąg nie uwzględnia wielkości liter.

permissionCheck
RegistryKeyPermissionCheck

Jedna z wartości wyliczenia określająca, czy klucz jest otwarty na potrzeby dostępu do odczytu lub odczytu/zapisu.

registrySecurity
RegistrySecurity

Zabezpieczenia kontroli dostępu dla nowego klucza.

Zwraca

Nowo utworzony podklucz lub null jeśli operacja nie powiodła się. Jeśli dla parametru określono subkeyciąg o zerowej długości, zwracany jest bieżący RegistryKey obiekt.

Atrybuty

Wyjątki

Parametr subkey ma wartość null.

Użytkownik nie ma uprawnień wymaganych do utworzenia lub otwarcia klucza rejestru.

permissionCheck zawiera nieprawidłową wartość.

Wywoływana RegistryKey metoda jest zamknięta (nie można uzyskać dostępu do kluczy zamkniętych).

Nie można zapisać bieżącego RegistryKey elementu, na przykład nie został otwarty jako klucz zapisywalny lub użytkownik nie ma niezbędnych praw dostępu.

Poziom zagnieżdżania przekracza 510.

— lub —

Wystąpił błąd systemowy, taki jak usunięcie klucza lub próba utworzenia klucza w LocalMachine katalogu głównym.

Uwagi

Metoda CreateSubKey tworzy klucz rejestru, który ma kontrolę dostępu określoną przez registrySecurity parametr . Zwracany RegistryKey obiekt reprezentuje klucz rejestru, ale ten obiekt nie jest ograniczony przez kontrolę dostępu określoną w parametrze registrySecurity .

Jeśli permissionCheck parametr ma RegistryKeyPermissionCheck.ReadWriteSubTreewartość , klucz jest otwarty w celu uzyskania dostępu do odczytu/zapisu. Jeśli permissionCheck parametr to RegistryKeyPermissionCheck.ReadSubTree, klucz jest otwarty w celu uzyskania dostępu do odczytu.

W celu zachowania zgodności z poprzednimi wersjami klucz jest otwarty do odczytu i zapisu, jeśli permissionCheck element jest RegistryKeyPermissionCheck.Default i klucz nadrzędny ma RegistryKeyPermissionCheck.Defaultrównież wartość . Jeśli klucz nadrzędny ma jakiekolwiek inne ustawienie, stan odczytu/zapisu jest kontrolowany przez ustawienie klucza nadrzędnego.

Aby wykonać tę akcję, użytkownik musi mieć uprawnienia na tym poziomie i poniżej w hierarchii rejestru.

Caution

Nie ujawniaj RegistryKey obiektów w taki sposób, że złośliwy program może utworzyć tysiące bez znaczenia podklucze lub pary klucz/wartość. Na przykład nie zezwalaj obiektom wywołującym na wprowadzanie dowolnych kluczy lub wartości.

Aby można było użyć OpenSubKey metody, musisz mieć wystąpienie RegistryKey klasy . Aby uzyskać wystąpienie RegistryKeyklasy , użyj jednego ze statycznych elementów członkowskich Registry klasy .

Zobacz też

Dotyczy

CreateSubKey(String, Boolean, RegistryOptions)

Źródło:
RegistryKey.cs

Tworzy nowy podklucz lub otwiera istniejący podklucz z określonym dostępem. Dostępne począwszy od platformy .NET Framework 4.6.

public:
 Microsoft::Win32::RegistryKey ^ CreateSubKey(System::String ^ subkey, bool writable, Microsoft::Win32::RegistryOptions options);
public Microsoft.Win32.RegistryKey CreateSubKey(string subkey, bool writable, Microsoft.Win32.RegistryOptions options);
[System.Runtime.InteropServices.ComVisible(false)]
public Microsoft.Win32.RegistryKey CreateSubKey(string subkey, bool writable, Microsoft.Win32.RegistryOptions options);
member this.CreateSubKey : string * bool * Microsoft.Win32.RegistryOptions -> Microsoft.Win32.RegistryKey
[<System.Runtime.InteropServices.ComVisible(false)>]
member this.CreateSubKey : string * bool * Microsoft.Win32.RegistryOptions -> Microsoft.Win32.RegistryKey
Public Function CreateSubKey (subkey As String, writable As Boolean, options As RegistryOptions) As RegistryKey

Parametry

subkey
String

Nazwa lub ścieżka podklucza do utworzenia lub otwarcia. Ten ciąg nie uwzględnia wielkości liter.

writable
Boolean

true aby wskazać, że nowy podklucz jest zapisywalny; w przeciwnym razie, false.

options
RegistryOptions

Opcja rejestru do użycia.

Zwraca

Nowo utworzony podklucz lub null jeśli operacja nie powiodła się. Jeśli dla parametru określono subkeyciąg o zerowej długości, zwracany jest bieżący RegistryKey obiekt.

Atrybuty

Wyjątki

Parametr subkey ma wartość null.

options nie określa prawidłowej opcji

Użytkownik nie ma uprawnień wymaganych do utworzenia lub otwarcia klucza rejestru.

Nie można zapisać bieżącego RegistryKey elementu, na przykład nie został otwarty jako klucz zapisywalny lub użytkownik nie ma niezbędnych praw dostępu.

Poziom zagnieżdżania przekracza 510.

— lub —

Wystąpił błąd systemowy, taki jak usunięcie klucza lub próba utworzenia klucza w LocalMachine katalogu głównym.

Uwagi

Aby wykonać tę akcję, użytkownik musi mieć uprawnienia na tym poziomie i poniżej w hierarchii rejestru.

Caution

Nie ujawniaj RegistryKey obiektów w taki sposób, że złośliwy program może utworzyć tysiące bez znaczenia podklucze lub pary klucz/wartość. Na przykład nie zezwalaj obiektom wywołującym na wprowadzanie dowolnych kluczy lub wartości.

Aby można było użyć CreateSubKey metody, musisz mieć wystąpienie RegistryKey klasy . Aby uzyskać wystąpienie RegistryKeyklasy , użyj jednego ze statycznych elementów członkowskich Registry klasy .

Dotyczy

CreateSubKey(String, RegistryKeyPermissionCheck, RegistryOptions)

Źródło:
RegistryKey.cs

Tworzy podklucz lub otwiera podklucz na potrzeby dostępu do zapisu przy użyciu określonych opcji sprawdzania uprawnień i rejestru.

public:
 Microsoft::Win32::RegistryKey ^ CreateSubKey(System::String ^ subkey, Microsoft::Win32::RegistryKeyPermissionCheck permissionCheck, Microsoft::Win32::RegistryOptions registryOptions);
public:
 Microsoft::Win32::RegistryKey ^ CreateSubKey(System::String ^ subkey, Microsoft::Win32::RegistryKeyPermissionCheck permissionCheck, Microsoft::Win32::RegistryOptions options);
public Microsoft.Win32.RegistryKey CreateSubKey(string subkey, Microsoft.Win32.RegistryKeyPermissionCheck permissionCheck, Microsoft.Win32.RegistryOptions registryOptions);
[System.Runtime.InteropServices.ComVisible(false)]
public Microsoft.Win32.RegistryKey CreateSubKey(string subkey, Microsoft.Win32.RegistryKeyPermissionCheck permissionCheck, Microsoft.Win32.RegistryOptions options);
member this.CreateSubKey : string * Microsoft.Win32.RegistryKeyPermissionCheck * Microsoft.Win32.RegistryOptions -> Microsoft.Win32.RegistryKey
[<System.Runtime.InteropServices.ComVisible(false)>]
member this.CreateSubKey : string * Microsoft.Win32.RegistryKeyPermissionCheck * Microsoft.Win32.RegistryOptions -> Microsoft.Win32.RegistryKey
Public Function CreateSubKey (subkey As String, permissionCheck As RegistryKeyPermissionCheck, registryOptions As RegistryOptions) As RegistryKey
Public Function CreateSubKey (subkey As String, permissionCheck As RegistryKeyPermissionCheck, options As RegistryOptions) As RegistryKey

Parametry

subkey
String

Nazwa lub ścieżka podklucza do utworzenia lub otwarcia.

permissionCheck
RegistryKeyPermissionCheck

Jedna z wartości wyliczenia określająca, czy klucz jest otwarty na potrzeby dostępu do odczytu lub odczytu/zapisu.

registryOptionsoptions
RegistryOptions

Opcja rejestru do użycia; na przykład spowoduje to utworzenie klucza lotnego.

Zwraca

Nowo utworzony podklucz lub null jeśli operacja nie powiodła się.

Atrybuty

Wyjątki

Parametr subkey ma wartość null.

Bieżący RegistryKey obiekt jest zamknięty (nie można uzyskać dostępu do zamkniętych kluczy).

Nie można zapisać bieżącego RegistryKey obiektu, na przykład nie został otwarty jako klucz zapisywalny lub użytkownik nie ma wymaganych praw dostępu.

Poziom zagnieżdżania przekracza 510.

— lub —

Wystąpił błąd systemowy, taki jak usunięcie klucza lub próba utworzenia klucza w LocalMachine katalogu głównym.

Użytkownik nie ma uprawnień wymaganych do utworzenia lub otwarcia klucza rejestru.

Uwagi

Aby uzyskać bieżący RegistryKey obiekt, określ pusty ciąg ("") dla .subkey

Dotyczy

CreateSubKey(String, RegistryKeyPermissionCheck, RegistryOptions, RegistrySecurity)

Źródło:
RegistryKey.cs

Tworzy podklucz lub otwiera podklucz dostępu do zapisu przy użyciu określonej opcji sprawdzania uprawnień, opcji rejestru i zabezpieczeń rejestru.

public:
 Microsoft::Win32::RegistryKey ^ CreateSubKey(System::String ^ subkey, Microsoft::Win32::RegistryKeyPermissionCheck permissionCheck, Microsoft::Win32::RegistryOptions registryOptions, System::Security::AccessControl::RegistrySecurity ^ registrySecurity);
public Microsoft.Win32.RegistryKey CreateSubKey(string subkey, Microsoft.Win32.RegistryKeyPermissionCheck permissionCheck, Microsoft.Win32.RegistryOptions registryOptions, System.Security.AccessControl.RegistrySecurity? registrySecurity);
[System.Runtime.InteropServices.ComVisible(false)]
public Microsoft.Win32.RegistryKey CreateSubKey(string subkey, Microsoft.Win32.RegistryKeyPermissionCheck permissionCheck, Microsoft.Win32.RegistryOptions registryOptions, System.Security.AccessControl.RegistrySecurity registrySecurity);
public Microsoft.Win32.RegistryKey CreateSubKey(string subkey, Microsoft.Win32.RegistryKeyPermissionCheck permissionCheck, Microsoft.Win32.RegistryOptions registryOptions, System.Security.AccessControl.RegistrySecurity registrySecurity);
member this.CreateSubKey : string * Microsoft.Win32.RegistryKeyPermissionCheck * Microsoft.Win32.RegistryOptions * System.Security.AccessControl.RegistrySecurity -> Microsoft.Win32.RegistryKey
[<System.Runtime.InteropServices.ComVisible(false)>]
member this.CreateSubKey : string * Microsoft.Win32.RegistryKeyPermissionCheck * Microsoft.Win32.RegistryOptions * System.Security.AccessControl.RegistrySecurity -> Microsoft.Win32.RegistryKey
Public Function CreateSubKey (subkey As String, permissionCheck As RegistryKeyPermissionCheck, registryOptions As RegistryOptions, registrySecurity As RegistrySecurity) As RegistryKey

Parametry

subkey
String

Nazwa lub ścieżka podklucza do utworzenia lub otwarcia.

permissionCheck
RegistryKeyPermissionCheck

Jedna z wartości wyliczenia określająca, czy klucz jest otwarty na potrzeby dostępu do odczytu lub odczytu/zapisu.

registryOptions
RegistryOptions

Opcja rejestru do użycia.

registrySecurity
RegistrySecurity

Zabezpieczenia kontroli dostępu dla nowego podklucza.

Zwraca

Nowo utworzony podklucz lub null jeśli operacja nie powiodła się.

Atrybuty

Wyjątki

Parametr subkey ma wartość null.

Bieżący RegistryKey obiekt jest zamknięty. Nie można uzyskać dostępu do zamkniętych kluczy.

Nie można zapisać bieżącego RegistryKey obiektu, na przykład nie został otwarty jako klucz zapisywalny lub użytkownik nie ma wymaganych praw dostępu.

Poziom zagnieżdżania przekracza 510.

— lub —

Wystąpił błąd systemowy, taki jak usunięcie klucza lub próba utworzenia klucza w LocalMachine katalogu głównym.

Użytkownik nie ma uprawnień wymaganych do utworzenia lub otwarcia klucza rejestru.

Uwagi

Aby uzyskać bieżący RegistryKey obiekt, określ pusty ciąg ("") dla .subkey

Dotyczy