RegistryKey.CreateSubKey Methode
Definition
Wichtig
Einige Informationen beziehen sich auf Vorabversionen, die vor dem Release ggf. grundlegend überarbeitet werden. Microsoft übernimmt hinsichtlich der hier bereitgestellten Informationen keine Gewährleistungen, seien sie ausdrücklich oder konkludent.
Erstellt einen neuen Unterschlüssel oder öffnet einen vorhandenen Unterschlüssel.
Überlädt
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 für subkey
eine leere Zeichenfolge angegeben wird, 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, für die diese Methode aufgerufen wird, wird geschlossen (auf geschlossene Schlüssel kann nicht zugegriffen werden).
Die RegistryKey kann nicht geschrieben werden; Beispielsweise 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 Stamm 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 RegistryKey Objekte nicht so verfügbar, 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 für subkey
eine leere Zeichenfolge angegeben wird, 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, für die diese Methode aufgerufen wird, wird geschlossen (auf geschlossene Schlüssel kann nicht zugegriffen werden).
Die RegistryKey kann nicht geschrieben werden; Es wurde beispielsweise 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 Stamm 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 RegistryKey Objekte nicht so verfügbar, 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 von RegistryKeyeines 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
true
, um 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 für subkey
eine leere Zeichenfolge angegeben wird, 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.
Die aktuelle RegistryKey kann nicht geschrieben werden; Es wurde beispielsweise 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 Stamm 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 RegistryKey Objekte nicht so verfügbar, 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 von RegistryKeyeines 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 für subkey
eine leere Zeichenfolge angegeben wird, 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, für die diese Methode aufgerufen wird, wird geschlossen (auf geschlossene Schlüssel kann nicht zugegriffen werden).
Die aktuelle RegistryKey kann nicht geschrieben werden; Es wurde beispielsweise 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 Stamm zu erstellen.
Hinweise
Mit der CreateSubKey-Methode wird ein Registrierungsschlüssel erstellt, der über die durch den parameter registrySecurity
angegebene Zugriffssteuerung verfügt. Das zurückgegebene RegistryKey-Objekt stellt den Registrierungsschlüssel dar, dieses Objekt ist jedoch nicht durch die im registrySecurity
Parameter angegebene Zugriffssteuerung eingeschränkt.
Wenn permissionCheck
RegistryKeyPermissionCheck.ReadWriteSubTreeist, wird der Schlüssel für Lese-/Schreibzugriff geöffnet. Wenn permissionCheck
RegistryKeyPermissionCheck.ReadSubTreeist, 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, wenn permissionCheck
RegistryKeyPermissionCheck.Default ist und der übergeordnete Schlüssel auch RegistryKeyPermissionCheck.Defaulthat. 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 RegistryKey Objekte nicht so verfügbar, 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 von RegistryKeyeines 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
true
, um 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 für subkey
eine leere Zeichenfolge angegeben wird, 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.
Die aktuelle RegistryKey kann nicht geschrieben werden; Es wurde beispielsweise 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 Stamm 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 RegistryKey Objekte nicht so verfügbar, 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 von RegistryKeyeines 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. Beispielsweise 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 Stamm zu erstellen.
Der Benutzer verfügt nicht über die erforderlichen Berechtigungen zum Erstellen oder Öffnen des Registrierungsschlüssels.
Hinweise
Um das aktuelle RegistryKey-Objekt abzurufen, geben Sie eine leere Zeichenfolge ("") für subkey
an.
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. Beispielsweise 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 Stamm zu erstellen.
Der Benutzer verfügt nicht über die erforderlichen Berechtigungen zum Erstellen oder Öffnen des Registrierungsschlüssels.
Hinweise
Um das aktuelle RegistryKey-Objekt abzurufen, geben Sie eine leere Zeichenfolge ("") für subkey
an.