RegistryKey.CreateSubKey Methode

Definition

Erstellt einen neuen Unterschlüssel oder öffnet einen vorhandenen Unterschlüssel.

Überlädt

Name Beschreibung
CreateSubKey(String)

Erstellt einen neuen Unterschlüssel oder öffnet einen vorhandenen Unterschlüssel für den Schreibzugriff.

CreateSubKey(String, RegistryKeyPermissionCheck)

Erstellt einen neuen Unterschlüssel oder öffnet einen vorhandenen Unterschlüssel für den Schreibzugriff mithilfe der angegebenen Berechtigungsprüfungsoption.

CreateSubKey(String, Boolean)

Erstellt einen neuen Unterschlüssel oder öffnet einen vorhandenen Unterschlüssel mit dem angegebenen Zugriff. Verfügbar ab .NET Framework 4.6.

CreateSubKey(String, RegistryKeyPermissionCheck, RegistrySecurity)

Erstellt einen neuen Unterschlüssel oder öffnet einen vorhandenen Unterschlüssel für den Schreibzugriff mithilfe der angegebenen Berechtigungsprüfungsoption und der Registrierungssicherheit.

CreateSubKey(String, Boolean, RegistryOptions)

Erstellt einen neuen Unterschlüssel oder öffnet einen vorhandenen Unterschlüssel mit dem angegebenen Zugriff. Verfügbar ab .NET Framework 4.6.

CreateSubKey(String, RegistryKeyPermissionCheck, RegistryOptions)

Erstellt einen Unterschlüssel oder öffnet einen Unterschlüssel für den Schreibzugriff mithilfe der angegebenen Berechtigungsprüfungs- und Registrierungsoptionen.

CreateSubKey(String, RegistryKeyPermissionCheck, RegistryOptions, RegistrySecurity)

Erstellt einen Unterschlüssel oder öffnet einen Unterschlüssel für den Schreibzugriff mithilfe der angegebenen Berechtigungsprüfungsoption, Registrierungsoption und Registrierungssicherheit.

CreateSubKey(String)

Quelle:
RegistryKey.cs

Erstellt einen neuen Unterschlüssel oder öffnet einen vorhandenen Unterschlüssel für den Schreibzugriff.

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

Parameter

subkey
String

Der Name oder Pfad des zu erstellenden oder geöffneten Unterschlüssels. Bei dieser Zeichenfolge wird die Groß-/Kleinschreibung nicht beachtet.

Gibt zurück

Der neu erstellte Unterschlüssel oder null wenn der Vorgang fehlgeschlagen ist. Wenn eine leere Zeichenfolge angegeben subkeyist, wird das aktuelle RegistryKey Objekt zurückgegeben.

Ausnahmen

subkey ist null.

Der Benutzer verfügt nicht über die erforderlichen Berechtigungen zum Erstellen oder Öffnen des Registrierungsschlüssels.

Die RegistryKey Methode, für die diese Methode aufgerufen wird, wird geschlossen (auf geschlossene Schlüssel kann nicht zugegriffen werden).

Dies RegistryKey kann nicht geschrieben werden, z. B. wurde sie nicht als schreibbarer Schlüssel geöffnet, oder der Benutzer verfügt nicht über die erforderlichen Zugriffsrechte.

Die Schachtelungsebene überschreitet 510.

-oder-

Es ist ein Systemfehler aufgetreten, z. B. das Löschen des Schlüssels oder ein Versuch, einen Schlüssel im LocalMachine Stammverzeichnis zu erstellen.

Beispiele

Das folgende Codebeispiel zeigt, wie Sie unter HKEY_CURRENT_USER einen Unterschlüssel erstellen, dessen Inhalt bearbeiten und dann den Unterschlüssel löschen.

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

Hinweise

Um diese Aktion auszuführen, muss der Benutzer über die Berechtigung auf dieser Ebene und unter der Registrierungshierarchie verfügen.

Vorsicht

Machen Sie Objekte nicht so verfügbar RegistryKey , dass ein schädliches Programm Tausende von bedeutungslosen Unterschlüsseln oder Schlüssel-Wert-Paaren erstellen kann. Lassen Sie beispielsweise nicht zu, dass Anrufer beliebige Schlüssel oder Werte eingeben.

Weitere Informationen

Gilt für:

CreateSubKey(String, RegistryKeyPermissionCheck)

Quelle:
RegistryKey.cs

Erstellt einen neuen Unterschlüssel oder öffnet einen vorhandenen Unterschlüssel für den Schreibzugriff mithilfe der angegebenen Berechtigungsprüfungsoption.

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

Parameter

subkey
String

Der Name oder Pfad des zu erstellenden oder geöffneten Unterschlüssels. Bei dieser Zeichenfolge wird die Groß-/Kleinschreibung nicht beachtet.

permissionCheck
RegistryKeyPermissionCheck

Einer der Enumerationswerte, der angibt, ob der Schlüssel für Lese- oder Lese-/Schreibzugriff geöffnet wird.

Gibt zurück

Der neu erstellte Unterschlüssel oder null wenn der Vorgang fehlgeschlagen ist. Wenn eine leere Zeichenfolge angegeben subkeyist, wird das aktuelle RegistryKey Objekt zurückgegeben.

Attribute

Ausnahmen

subkey ist null.

Der Benutzer verfügt nicht über die erforderlichen Berechtigungen zum Erstellen oder Öffnen des Registrierungsschlüssels.

permissionCheck enthält einen ungültigen Wert.

Die RegistryKey Methode, für die diese Methode aufgerufen wird, wird geschlossen (auf geschlossene Schlüssel kann nicht zugegriffen werden).

Dies RegistryKey kann nicht geschrieben werden, z. B. wurde sie nicht als schreibbarer Schlüssel geöffnet, oder der Benutzer verfügt nicht über die erforderlichen Zugriffsrechte.

Die Schachtelungsebene überschreitet 510.

-oder-

Es ist ein Systemfehler aufgetreten, z. B. das Löschen des Schlüssels oder ein Versuch, einen Schlüssel im LocalMachine Stammverzeichnis zu erstellen.

Hinweise

Um diese Aktion auszuführen, muss der Benutzer über die Berechtigung auf dieser Ebene und unter der Registrierungshierarchie verfügen.

Vorsicht

Machen Sie Objekte nicht so verfügbar RegistryKey , dass ein schädliches Programm Tausende von bedeutungslosen Unterschlüsseln oder Schlüssel-Wert-Paaren erstellen kann. Lassen Sie beispielsweise nicht zu, dass Anrufer beliebige Schlüssel oder Werte eingeben.

Um die OpenSubKey Methode verwenden zu können, müssen Sie über eine Instanz der RegistryKey Klasse verfügen. Verwenden Sie zum Abrufen einer Instanz RegistryKeyder Klasse eines der statischen Member der Registry Klasse.

Weitere Informationen

Gilt für:

CreateSubKey(String, Boolean)

Quelle:
RegistryKey.cs

Erstellt einen neuen Unterschlüssel oder öffnet einen vorhandenen Unterschlüssel mit dem angegebenen Zugriff. Verfügbar ab .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

Parameter

subkey
String

Der Name oder Pfad des zu erstellenden oder geöffneten Unterschlüssels. Bei dieser Zeichenfolge wird die Groß-/Kleinschreibung nicht beachtet.

writable
Boolean

trueum anzugeben, dass der neue Unterschlüssel schreibbar ist; andernfalls . false

Gibt zurück

Der neu erstellte Unterschlüssel oder null wenn der Vorgang fehlgeschlagen ist. Wenn eine leere Zeichenfolge angegeben subkeyist, wird das aktuelle RegistryKey Objekt zurückgegeben.

Attribute

Ausnahmen

subkey ist null.

Der Benutzer verfügt nicht über die erforderlichen Berechtigungen zum Erstellen oder Öffnen des Registrierungsschlüssels.

Der aktuelle RegistryKey Code kann nicht geschrieben werden, z. B. wurde er nicht als schreibbarer Schlüssel geöffnet, oder der Benutzer verfügt nicht über die erforderlichen Zugriffsrechte.

Die Schachtelungsebene überschreitet 510.

-oder-

Es ist ein Systemfehler aufgetreten, z. B. das Löschen des Schlüssels oder ein Versuch, einen Schlüssel im LocalMachine Stammverzeichnis zu erstellen.

Hinweise

Um diese Aktion auszuführen, muss der Benutzer über die Berechtigung auf dieser Ebene und unter der Registrierungshierarchie verfügen.

Vorsicht

Machen Sie Objekte nicht so verfügbar RegistryKey , dass ein schädliches Programm Tausende von bedeutungslosen Unterschlüsseln oder Schlüssel-Wert-Paaren erstellen kann. Lassen Sie beispielsweise nicht zu, dass Anrufer beliebige Schlüssel oder Werte eingeben.

Um die CreateSubKey Methode verwenden zu können, müssen Sie über eine Instanz der RegistryKey Klasse verfügen. Verwenden Sie zum Abrufen einer Instanz RegistryKeyder Klasse eines der statischen Member der Registry Klasse.

Gilt für:

CreateSubKey(String, RegistryKeyPermissionCheck, RegistrySecurity)

Quelle:
RegistryKey.cs

Erstellt einen neuen Unterschlüssel oder öffnet einen vorhandenen Unterschlüssel für den Schreibzugriff mithilfe der angegebenen Berechtigungsprüfungsoption und der Registrierungssicherheit.

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

Parameter

subkey
String

Der Name oder Pfad des zu erstellenden oder geöffneten Unterschlüssels. Bei dieser Zeichenfolge wird die Groß-/Kleinschreibung nicht beachtet.

permissionCheck
RegistryKeyPermissionCheck

Einer der Enumerationswerte, der angibt, ob der Schlüssel für Lese- oder Lese-/Schreibzugriff geöffnet wird.

registrySecurity
RegistrySecurity

Die Zugriffssteuerungssicherheit für den neuen Schlüssel.

Gibt zurück

Der neu erstellte Unterschlüssel oder null wenn der Vorgang fehlgeschlagen ist. Wenn eine leere Zeichenfolge angegeben subkeyist, wird das aktuelle RegistryKey Objekt zurückgegeben.

Attribute

Ausnahmen

subkey ist null.

Der Benutzer verfügt nicht über die erforderlichen Berechtigungen zum Erstellen oder Öffnen des Registrierungsschlüssels.

permissionCheck enthält einen ungültigen Wert.

Die RegistryKey Methode, für die diese Methode aufgerufen wird, wird geschlossen (auf geschlossene Schlüssel kann nicht zugegriffen werden).

Der aktuelle RegistryKey Code kann nicht geschrieben werden, z. B. wurde er nicht als schreibbarer Schlüssel geöffnet, oder der Benutzer verfügt nicht über die erforderlichen Zugriffsrechte.

Die Schachtelungsebene überschreitet 510.

-oder-

Es ist ein Systemfehler aufgetreten, z. B. das Löschen des Schlüssels oder ein Versuch, einen Schlüssel im LocalMachine Stammverzeichnis zu erstellen.

Hinweise

Die CreateSubKey Methode erstellt einen Registrierungsschlüssel, der über die durch den registrySecurity Parameter angegebene Zugriffssteuerung verfügt. Das RegistryKey zurückgegebene Objekt stellt den Registrierungsschlüssel dar, dieses Objekt ist jedoch nicht durch die im registrySecurity Parameter angegebene Zugriffssteuerung eingeschränkt.

Wenn permissionCheck ja RegistryKeyPermissionCheck.ReadWriteSubTree, wird der Schlüssel für lese-/schreibzugriff geöffnet. Wenn permissionCheck ja RegistryKeyPermissionCheck.ReadSubTree, wird der Schlüssel für den Lesezugriff geöffnet.

Aus Gründen der Abwärtskompatibilität wird der Schlüssel zum Lesen und Schreiben geöffnet, falls permissionCheck vorhanden RegistryKeyPermissionCheck.Default , und der übergeordnete Schlüssel hat RegistryKeyPermissionCheck.Defaultebenfalls . Wenn der übergeordnete Schlüssel eine andere Einstellung aufweist, wird der Lese-/Schreibstatus durch die Einstellung des übergeordneten Schlüssels gesteuert.

Um diese Aktion auszuführen, muss der Benutzer über Berechtigungen auf dieser Ebene und unter der Registrierungshierarchie verfügen.

Vorsicht

Machen Sie Objekte nicht so verfügbar RegistryKey , dass ein schädliches Programm Tausende von bedeutungslosen Unterschlüsseln oder Schlüssel-Wert-Paaren erstellen kann. Lassen Sie beispielsweise nicht zu, dass Anrufer beliebige Schlüssel oder Werte eingeben.

Um die OpenSubKey Methode verwenden zu können, müssen Sie über eine Instanz der RegistryKey Klasse verfügen. Verwenden Sie zum Abrufen einer Instanz RegistryKeyder Klasse eines der statischen Member der Registry Klasse.

Weitere Informationen

Gilt für:

CreateSubKey(String, Boolean, RegistryOptions)

Quelle:
RegistryKey.cs

Erstellt einen neuen Unterschlüssel oder öffnet einen vorhandenen Unterschlüssel mit dem angegebenen Zugriff. Verfügbar ab .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

Parameter

subkey
String

Der Name oder Pfad des zu erstellenden oder geöffneten Unterschlüssels. Bei dieser Zeichenfolge wird die Groß-/Kleinschreibung nicht beachtet.

writable
Boolean

trueum anzugeben, dass der neue Unterschlüssel schreibbar ist; andernfalls . false

options
RegistryOptions

Die zu verwendende Registrierungsoption.

Gibt zurück

Der neu erstellte Unterschlüssel oder null wenn der Vorgang fehlgeschlagen ist. Wenn eine leere Zeichenfolge angegeben subkeyist, wird das aktuelle RegistryKey Objekt zurückgegeben.

Attribute

Ausnahmen

subkey ist null.

options gibt keine gültige Option an.

Der Benutzer verfügt nicht über die erforderlichen Berechtigungen zum Erstellen oder Öffnen des Registrierungsschlüssels.

Der aktuelle RegistryKey Code kann nicht geschrieben werden, z. B. wurde er nicht als schreibbarer Schlüssel geöffnet, oder der Benutzer verfügt nicht über die erforderlichen Zugriffsrechte.

Die Schachtelungsebene überschreitet 510.

-oder-

Es ist ein Systemfehler aufgetreten, z. B. das Löschen des Schlüssels oder ein Versuch, einen Schlüssel im LocalMachine Stammverzeichnis zu erstellen.

Hinweise

Um diese Aktion auszuführen, muss der Benutzer über die Berechtigung auf dieser Ebene und unter der Registrierungshierarchie verfügen.

Vorsicht

Machen Sie Objekte nicht so verfügbar RegistryKey , dass ein schädliches Programm Tausende von bedeutungslosen Unterschlüsseln oder Schlüssel-Wert-Paaren erstellen kann. Lassen Sie beispielsweise nicht zu, dass Anrufer beliebige Schlüssel oder Werte eingeben.

Um die CreateSubKey Methode verwenden zu können, müssen Sie über eine Instanz der RegistryKey Klasse verfügen. Verwenden Sie zum Abrufen einer Instanz RegistryKeyder Klasse eines der statischen Member der Registry Klasse.

Gilt für:

CreateSubKey(String, RegistryKeyPermissionCheck, RegistryOptions)

Quelle:
RegistryKey.cs

Erstellt einen Unterschlüssel oder öffnet einen Unterschlüssel für den Schreibzugriff mithilfe der angegebenen Berechtigungsprüfungs- und Registrierungsoptionen.

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

Parameter

subkey
String

Der Name oder Pfad des zu erstellenden oder geöffneten Unterschlüssels.

permissionCheck
RegistryKeyPermissionCheck

Einer der Enumerationswerte, der angibt, ob der Schlüssel für Lese- oder Lese-/Schreibzugriff geöffnet wird.

registryOptionsoptions
RegistryOptions

Die zu verwendende Registrierungsoption; Das erstellt z. B. einen veränderliche Schlüssel.

Gibt zurück

Der neu erstellte Unterschlüssel oder null wenn der Vorgang fehlgeschlagen ist.

Attribute

Ausnahmen

subkey ist null.

Das aktuelle RegistryKey Objekt ist geschlossen (auf geschlossene Schlüssel kann nicht zugegriffen werden).

Das aktuelle RegistryKey Objekt kann nicht geschrieben werden, z. B. wurde es nicht als schreibbarer Schlüssel geöffnet, oder der Benutzer verfügt nicht über die erforderlichen Zugriffsrechte.

Die Schachtelungsebene überschreitet 510.

-oder-

Es ist ein Systemfehler aufgetreten, z. B. das Löschen des Schlüssels oder ein Versuch, einen Schlüssel im LocalMachine Stammverzeichnis zu erstellen.

Der Benutzer verfügt nicht über die erforderlichen Berechtigungen zum Erstellen oder Öffnen des Registrierungsschlüssels.

Hinweise

Geben Sie zum Abrufen des aktuellen RegistryKey Objekts eine leere Zeichenfolge ("") für subkey.

Gilt für:

CreateSubKey(String, RegistryKeyPermissionCheck, RegistryOptions, RegistrySecurity)

Quelle:
RegistryKey.cs

Erstellt einen Unterschlüssel oder öffnet einen Unterschlüssel für den Schreibzugriff mithilfe der angegebenen Berechtigungsprüfungsoption, Registrierungsoption und Registrierungssicherheit.

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

Parameter

subkey
String

Der Name oder Pfad des zu erstellenden oder geöffneten Unterschlüssels.

permissionCheck
RegistryKeyPermissionCheck

Einer der Enumerationswerte, der angibt, ob der Schlüssel für Lese- oder Lese-/Schreibzugriff geöffnet wird.

registryOptions
RegistryOptions

Die zu verwendende Registrierungsoption.

registrySecurity
RegistrySecurity

Die Zugriffssteuerungssicherheit für den neuen Unterschlüssel.

Gibt zurück

Der neu erstellte Unterschlüssel oder null wenn der Vorgang fehlgeschlagen ist.

Attribute

Ausnahmen

subkey ist null.

Das aktuelle RegistryKey Objekt wird geschlossen. Auf geschlossene Schlüssel kann nicht zugegriffen werden.

Das aktuelle RegistryKey Objekt kann nicht geschrieben werden, z. B. wurde es nicht als schreibbarer Schlüssel geöffnet, oder der Benutzer verfügt nicht über die erforderlichen Zugriffsrechte.

Die Schachtelungsebene überschreitet 510.

-oder-

Es ist ein Systemfehler aufgetreten, z. B. das Löschen des Schlüssels oder ein Versuch, einen Schlüssel im LocalMachine Stammverzeichnis zu erstellen.

Der Benutzer verfügt nicht über die erforderlichen Berechtigungen zum Erstellen oder Öffnen des Registrierungsschlüssels.

Hinweise

Geben Sie zum Abrufen des aktuellen RegistryKey Objekts eine leere Zeichenfolge ("") für subkey.

Gilt für: