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 Schreibzugriff. |
CreateSubKey(String, RegistryKeyPermissionCheck) |
Erstellt einen neuen Unterschlüssel oder öffnet einen vorhandenen Unterschlüssel für Schreibzugriff unter Verwendung der angegebenen Berechtigungsprüfungsoption. |
CreateSubKey(String, Boolean) |
Erstellt einen neuen Unterschlüssel oder öffnet einen vorhandenen Unterschlüssel mit dem angegebenen Zugriffsmodus. Verfügbar ab .NET Framework 4.6. |
CreateSubKey(String, RegistryKeyPermissionCheck, RegistrySecurity) |
Erstellt einen neuen Unterschlüssel oder öffnet einen vorhandenen Unterschlüssel für Schreibzugriff unter Verwendung 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 Zugriffsmodus. Verfügbar ab .NET Framework 4.6. |
CreateSubKey(String, RegistryKeyPermissionCheck, RegistryOptions) |
Erstellt oder öffnet einen Unterschlüssel für Schreibzugriff unter Verwendung der angegebenen Berechtigungsprüfungs- und Registrierungsoptionen. |
CreateSubKey(String, RegistryKeyPermissionCheck, RegistryOptions, RegistrySecurity) |
Erstellt oder öffnet einen Unterschlüssel für Schreibzugriff unter Verwendung 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 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
Name oder Pfad des zu erstellenden oder zu öffnenden Unterschlüssels. Bei dieser Zeichenfolge wird die Groß-/Kleinschreibung nicht berücksichtigt.
Gibt zurück
Der neu erstellte Unterschlüssel oder null
, wenn bei dem Vorgang ein Fehler aufgetreten ist. Wenn eine Zeichenfolge der Länge 0 (null) für subkey
angegeben ist, 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.
Der RegistryKey, für den die Methode aufgerufen wird, ist geschlossen (auf geschlossene Schlüssel kann nicht zugegriffen werden).
Der aktuelle RegistryKey kann nicht bearbeitet werden. Möglicherweise wurde der Schlüssel schreibgeschützt geöffnet, oder der Benutzer verfügt nicht über die erforderlichen Zugriffsrechte.
Die Schachtelungsebene überschreitet 510.
- oder -
Ein Systemfehler ist aufgetreten. Möglicherweise wurde der Schlüssel gelöscht, oder es wurde versucht, einen Schlüssel im LocalMachine-Stamm zu erstellen.
Beispiele
Das folgende Codebeispiel zeigt, wie Sie einen Unterschlüssel unter HKEY_CURRENT_USER 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 ausführen zu können, muss der Benutzer über die Berechtigung auf dieser Ebene und darunter in der Registrierungshierarchie verfügen.
Achtung
Machen Sie Objekte nicht so verfügbar RegistryKey , dass ein schadhaftes Programm Tausende von bedeutungslosen Unterschlüsseln oder Schlüssel-Wert-Paaren erstellen könnte. Lassen Sie beispielsweise nicht zu, dass Aufrufer 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 Schreibzugriff unter Verwendung 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
Name oder Pfad des zu erstellenden oder zu öffnenden Unterschlüssels. Bei dieser Zeichenfolge wird die Groß-/Kleinschreibung nicht berücksichtigt.
- permissionCheck
- RegistryKeyPermissionCheck
Einer der Enumerationswerte, der angibt, ob der Schlüssel für Lesezugriff oder für Lese-/Schreibzugriff geöffnet wird.
Gibt zurück
Der neu erstellte Unterschlüssel oder null
, wenn bei dem Vorgang ein Fehler aufgetreten ist. Wenn eine Zeichenfolge der Länge 0 (null) für subkey
angegeben ist, 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.
Der RegistryKey, für den die Methode aufgerufen wird, ist geschlossen (auf geschlossene Schlüssel kann nicht zugegriffen werden).
Der aktuelle RegistryKey kann nicht bearbeitet werden. Möglicherweise wurde der Schlüssel schreibgeschützt geöffnet, oder der Benutzer verfügt nicht über die erforderlichen Zugriffsrechte.
Die Schachtelungsebene überschreitet 510.
- oder -
Ein Systemfehler ist aufgetreten. Möglicherweise wurde der Schlüssel gelöscht, oder es wurde versucht, einen Schlüssel im LocalMachine-Stamm zu erstellen.
Hinweise
Um diese Aktion ausführen zu können, muss der Benutzer über die Berechtigung auf dieser Ebene und darunter in der Registrierungshierarchie verfügen.
Achtung
Machen Sie Objekte nicht so verfügbar RegistryKey , dass ein schadhaftes Programm Tausende von bedeutungslosen Unterschlüsseln oder Schlüssel-Wert-Paaren erstellen könnte. Lassen Sie beispielsweise nicht zu, dass Aufrufer beliebige Schlüssel oder Werte eingeben.
Um die OpenSubKey -Methode verwenden zu können, müssen Sie über einen instance der RegistryKey -Klasse verfügen. Um eine instance von RegistryKeyabzurufen, verwenden Sie 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 Zugriffsmodus. 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
Name oder Pfad des zu erstellenden oder zu öffnenden Unterschlüssels. Bei dieser Zeichenfolge wird die Groß-/Kleinschreibung nicht berücksichtigt.
- writable
- Boolean
true
, um anzugeben, dass der neue Unterschlüssel bearbeitet werden kann, andernfalls false
.
Gibt zurück
Der neu erstellte Unterschlüssel oder null
, wenn bei dem Vorgang ein Fehler aufgetreten ist. Wenn eine Zeichenfolge der Länge 0 (null) für subkey
angegeben ist, 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.
Auf den aktuellen RegistryKey ist kein Schreibzugriff möglich. Möglicherweise wurde der Schlüssel schreibgeschützt geöffnet, oder der Benutzer verfügt nicht über die erforderlichen Zugriffsrechte.
Die Schachtelungsebene überschreitet 510.
- oder -
Ein Systemfehler ist aufgetreten. Möglicherweise wurde der Schlüssel gelöscht, oder es wurde versucht, einen Schlüssel im LocalMachine-Stamm zu erstellen.
Hinweise
Um diese Aktion ausführen zu können, muss der Benutzer über die Berechtigung auf dieser Ebene und darunter in der Registrierungshierarchie verfügen.
Achtung
Machen Sie Objekte nicht so verfügbar RegistryKey , dass ein schadhaftes Programm Tausende von bedeutungslosen Unterschlüsseln oder Schlüssel-Wert-Paaren erstellen könnte. Lassen Sie beispielsweise nicht zu, dass Aufrufer beliebige Schlüssel oder Werte eingeben.
Um die CreateSubKey -Methode verwenden zu können, müssen Sie über einen instance der RegistryKey -Klasse verfügen. Um eine instance von RegistryKeyabzurufen, verwenden Sie 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 Schreibzugriff unter Verwendung 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);
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);
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
Name oder Pfad des zu erstellenden oder zu öffnenden Unterschlüssels. Bei dieser Zeichenfolge wird die Groß-/Kleinschreibung nicht berücksichtigt.
- permissionCheck
- RegistryKeyPermissionCheck
Einer der Enumerationswerte, der angibt, ob der Schlüssel für Lesezugriff oder für 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 bei dem Vorgang ein Fehler aufgetreten ist. Wenn eine Zeichenfolge der Länge 0 (null) für subkey
angegeben ist, 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.
Der RegistryKey, für den die Methode aufgerufen wird, ist geschlossen (auf geschlossene Schlüssel kann nicht zugegriffen werden).
Auf den aktuellen RegistryKey ist kein Schreibzugriff möglich. Möglicherweise wurde der Schlüssel schreibgeschützt geöffnet, oder der Benutzer verfügt nicht über die erforderlichen Zugriffsrechte.
Die Schachtelungsebene überschreitet 510.
- oder -
Ein Systemfehler ist aufgetreten. Möglicherweise wurde der Schlüssel gelöscht, oder es wurde versucht, einen Schlüssel im LocalMachine-Stamm 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, aber dieses Objekt wird nicht durch die im registrySecurity
-Parameter angegebene Zugriffssteuerung eingeschränkt.
Wenn permissionCheck
ist RegistryKeyPermissionCheck.ReadWriteSubTree, wird der Schlüssel für Lese-/Schreibzugriff geöffnet. Wenn permissionCheck
ist 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, wenn permissionCheck
ist RegistryKeyPermissionCheck.Default , und der übergeordnete Schlüssel hat RegistryKeyPermissionCheck.Defaultebenfalls . Wenn der übergeordnete Schlüssel über eine andere Einstellung verfügt, wird lese-/schreibzugriff status durch die Einstellung des übergeordneten Schlüssels gesteuert.
Um diese Aktion ausführen zu können, muss der Benutzer über Berechtigungen auf dieser Ebene und darunter in der Registrierungshierarchie verfügen.
Achtung
Machen Sie Objekte nicht so verfügbar RegistryKey , dass ein schadhaftes Programm Tausende von bedeutungslosen Unterschlüsseln oder Schlüssel-Wert-Paaren erstellen könnte. Lassen Sie beispielsweise nicht zu, dass Aufrufer beliebige Schlüssel oder Werte eingeben.
Um die OpenSubKey -Methode verwenden zu können, müssen Sie über einen instance der RegistryKey -Klasse verfügen. Um eine instance von RegistryKeyabzurufen, verwenden Sie 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 Zugriffsmodus. 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
Name oder Pfad des zu erstellenden oder zu öffnenden Unterschlüssels. Bei dieser Zeichenfolge wird die Groß-/Kleinschreibung nicht berücksichtigt.
- writable
- Boolean
true
, um anzugeben, dass der neue Unterschlüssel bearbeitet werden kann, andernfalls false
.
- options
- RegistryOptions
Die zu verwendende Registrierungsoption.
Gibt zurück
Der neu erstellte Unterschlüssel oder null
, wenn bei dem Vorgang ein Fehler aufgetreten ist. Wenn eine Zeichenfolge der Länge 0 (null) für subkey
angegeben ist, 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.
Auf den aktuellen RegistryKey ist kein Schreibzugriff möglich. Möglicherweise wurde der Schlüssel schreibgeschützt geöffnet, oder der Benutzer verfügt nicht über die erforderlichen Zugriffsrechte.
Die Schachtelungsebene überschreitet 510.
- oder -
Ein Systemfehler ist aufgetreten. Möglicherweise wurde der Schlüssel gelöscht, oder es wurde versucht, einen Schlüssel im LocalMachine-Stamm zu erstellen.
Hinweise
Um diese Aktion ausführen zu können, muss der Benutzer über die Berechtigung auf dieser Ebene und darunter in der Registrierungshierarchie verfügen.
Achtung
Machen Sie Objekte nicht so verfügbar RegistryKey , dass ein schadhaftes Programm Tausende von bedeutungslosen Unterschlüsseln oder Schlüssel-Wert-Paaren erstellen könnte. Lassen Sie beispielsweise nicht zu, dass Aufrufer beliebige Schlüssel oder Werte eingeben.
Um die CreateSubKey -Methode verwenden zu können, müssen Sie über einen instance der RegistryKey -Klasse verfügen. Um eine instance von RegistryKeyabzurufen, verwenden Sie eines der statischen Member der Registry -Klasse.
Gilt für:
CreateSubKey(String, RegistryKeyPermissionCheck, RegistryOptions)
- Quelle:
- RegistryKey.cs
Erstellt oder öffnet einen Unterschlüssel für Schreibzugriff unter Verwendung 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
Name oder Pfad des zu erstellenden oder zu öffnenden Unterschlüssels.
- permissionCheck
- RegistryKeyPermissionCheck
Einer der Enumerationswerte, der angibt, ob der Schlüssel für Lesezugriff oder für Lese-/Schreibzugriff geöffnet wird.
- registryOptionsoptions
- RegistryOptions
Die zu verwendende Registrierungsoption, z. B. zum Erstellen eines temporären Schlüssels.
Gibt zurück
Der neu erstellte Unterschlüssel oder null
, wenn bei dem Vorgang ein Fehler aufgetreten ist.
- Attribute
Ausnahmen
subkey
ist null
.
Das aktuelle RegistryKey-Objekt, auf das zugegriffen werden soll, ist geschlossen (auf geschlossene Schlüssel kann nicht zugegriffen werden).
Das aktuelle RegistryKey-Objekt kann nicht bearbeitet werden. Möglicherweise wurde der Schlüssel schreibgeschützt geöffnet, oder der Benutzer verfügt nicht über die erforderlichen Zugriffsrechte.
Die Schachtelungsebene überschreitet 510.
- oder -
Ein Systemfehler ist aufgetreten. Möglicherweise wurde der Schlüssel gelöscht, oder es wurde versucht, 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 oder öffnet einen Unterschlüssel für Schreibzugriff unter Verwendung 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);
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);
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
Name oder Pfad des zu erstellenden oder zu öffnenden Unterschlüssels.
- permissionCheck
- RegistryKeyPermissionCheck
Einer der Enumerationswerte, der angibt, ob der Schlüssel für Lesezugriff oder für 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 bei dem Vorgang ein Fehler aufgetreten 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 bearbeitet werden. Möglicherweise wurde der Schlüssel schreibgeschützt geöffnet, oder der Benutzer verfügt nicht über die erforderlichen Zugriffsrechte.
Die Schachtelungsebene überschreitet 510.
- oder -
Ein Systemfehler ist aufgetreten. Möglicherweise wurde der Schlüssel gelöscht, oder es wurde versucht, 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.