Condividi tramite


RegistryKey.CreateSubKey Metodo

Definizione

Crea una nuova sottochiave o apre una sottochiave esistente.

Overload

CreateSubKey(String)

Crea una nuova sottochiave o apre una sottochiave esistente per l'accesso in scrittura.

CreateSubKey(String, RegistryKeyPermissionCheck)

Crea una nuova sottochiave o apre una sottochiave esistente per l'accesso in scrittura, usando l'opzione di controllo dell'autorizzazione specificata.

CreateSubKey(String, Boolean)

Crea una nuova sottochiave o apre una sottochiave esistente con l'accesso specificato. Disponibile a partire da .NET Framework 4.6.

CreateSubKey(String, RegistryKeyPermissionCheck, RegistrySecurity)

Crea una nuova sottochiave o apre una sottochiave esistente per l'accesso in scrittura, usando l'opzione di controllo dell'autorizzazione e la sicurezza del Registro di sistema specificate.

CreateSubKey(String, Boolean, RegistryOptions)

Crea una nuova sottochiave o apre una sottochiave esistente con l'accesso specificato. Disponibile a partire da .NET Framework 4.6.

CreateSubKey(String, RegistryKeyPermissionCheck, RegistryOptions)

Crea una sottochiave o apre una sottochiave per l'accesso in scrittura, usando le opzioni del Registro di sistema e di verifica delle autorizzazioni specificate.

CreateSubKey(String, RegistryKeyPermissionCheck, RegistryOptions, RegistrySecurity)

Crea una nuova sottochiave o apre una sottochiave per l'accesso in scrittura, usando l'opzione di verifica delle autorizzazioni, l'opzione del Registro di sistema e la sicurezza del Registro di sistema specificate.

CreateSubKey(String)

Source:
RegistryKey.cs

Crea una nuova sottochiave o apre una sottochiave esistente per l'accesso in scrittura.

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

Parametri

subkey
String

Nome o percorso della sottochiave da creare o aprire. Stringa senza distinzione tra maiuscole e minuscole.

Restituisce

Nuova sottochiave creata oppure null se l'operazione non è riuscita. Se viene specificata una stringa di lunghezza zero per subkey, viene restituito l'oggetto RegistryKey corrente.

Eccezioni

subkey è null.

L'utente non ha le autorizzazioni necessarie per creare o aprire la chiave del Registro di sistema.

La chiave RegistryKey su cui viene richiamato il metodo è chiusa, pertanto non è possibile accedere ad essa.

Non è possibile scrivere nella chiave RegistryKey perché, ad esempio, non è stata aperta come chiave scrivibile oppure l'utente non dispone dei diritti di accesso necessari.

Il livello di annidamento supera 510.

-oppure-

Si è verificato un errore di sistema, ad esempio eliminazione della chiave, o un tentativo di creare una chiave nella radice LocalMachine.

Esempio

Nell'esempio di codice seguente viene illustrato come creare una sottochiave in HKEY_CURRENT_USER, modificare il contenuto e quindi eliminare la sottochiave.

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

Commenti

Per eseguire questa azione, l'utente deve disporre dell'autorizzazione a questo livello e sotto nella gerarchia del Registro di sistema.

Attenzione

Non esporre RegistryKey oggetti in modo che un programma dannoso possa creare migliaia di sottochiavi senza significato o coppie chiave/valore. Ad esempio, non consentire ai chiamanti di immettere chiavi o valori arbitrari.

Vedi anche

Si applica a

CreateSubKey(String, RegistryKeyPermissionCheck)

Source:
RegistryKey.cs

Crea una nuova sottochiave o apre una sottochiave esistente per l'accesso in scrittura, usando l'opzione di controllo dell'autorizzazione specificata.

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

Parametri

subkey
String

Nome o percorso della sottochiave da creare o aprire. Stringa senza distinzione tra maiuscole e minuscole.

permissionCheck
RegistryKeyPermissionCheck

Uno dei valori di enumerazione che specifica se la chiave è aperta per l'accesso in lettura o in lettura/scrittura.

Restituisce

Nuova sottochiave creata oppure null se l'operazione non è riuscita. Se viene specificata una stringa di lunghezza zero per subkey, viene restituito l'oggetto RegistryKey corrente.

Attributi

Eccezioni

subkey è null.

L'utente non ha le autorizzazioni necessarie per creare o aprire la chiave del Registro di sistema.

permissionCheck contiene un valore non valido.

La chiave RegistryKey su cui viene richiamato il metodo è chiusa, pertanto non è possibile accedere ad essa.

Non è possibile scrivere nella chiave RegistryKey, ad esempio perché non è stata aperta come chiave scrivibile o perché l'utente non dispone dei diritti di accesso necessari.

Il livello di annidamento supera 510.

-oppure-

Si è verificato un errore di sistema, ad esempio eliminazione della chiave, o un tentativo di creare una chiave nella radice LocalMachine.

Commenti

Per eseguire questa azione, l'utente deve disporre dell'autorizzazione a questo livello e sotto nella gerarchia del Registro di sistema.

Attenzione

Non esporre RegistryKey oggetti in modo che un programma dannoso possa creare migliaia di sottochiavi senza significato o coppie chiave/valore. Ad esempio, non consentire ai chiamanti di immettere chiavi o valori arbitrari.

Per usare il OpenSubKey metodo, è necessario disporre di un'istanza della RegistryKey classe. Per ottenere un'istanza di RegistryKey, usare uno dei membri statici della Registry classe.

Vedi anche

Si applica a

CreateSubKey(String, Boolean)

Source:
RegistryKey.cs

Crea una nuova sottochiave o apre una sottochiave esistente con l'accesso specificato. Disponibile a partire da .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

Parametri

subkey
String

Nome o percorso della sottochiave da creare o aprire. Stringa senza distinzione tra maiuscole e minuscole.

writable
Boolean

true per indicare che la nuova sottochiave è accessibile in scrittura; in caso contrario, false.

Restituisce

Nuova sottochiave creata oppure null se l'operazione non è riuscita. Se viene specificata una stringa di lunghezza zero per subkey, viene restituito l'oggetto RegistryKey corrente.

Attributi

Eccezioni

subkey è null.

L'utente non ha le autorizzazioni necessarie per creare o aprire la chiave del Registro di sistema.

Non è possibile scrivere nella chiave RegistryKey corrente perché, ad esempio, non è stata aperta come chiave scrivibile oppure l'utente non ha i diritti di accesso necessari.

Il livello di annidamento supera 510.

-oppure-

Si è verificato un errore di sistema, ad esempio eliminazione della chiave, o un tentativo di creare una chiave nella radice LocalMachine.

Commenti

Per eseguire questa azione, l'utente deve disporre dell'autorizzazione a questo livello e sotto nella gerarchia del Registro di sistema.

Attenzione

Non esporre RegistryKey oggetti in modo che un programma dannoso possa creare migliaia di sottochiavi senza significato o coppie chiave/valore. Ad esempio, non consentire ai chiamanti di immettere chiavi o valori arbitrari.

Per usare il CreateSubKey metodo, è necessario disporre di un'istanza della RegistryKey classe. Per ottenere un'istanza di RegistryKey, usare uno dei membri statici della Registry classe.

Si applica a

CreateSubKey(String, RegistryKeyPermissionCheck, RegistrySecurity)

Source:
RegistryKey.cs

Crea una nuova sottochiave o apre una sottochiave esistente per l'accesso in scrittura, usando l'opzione di controllo dell'autorizzazione e la sicurezza del Registro di sistema specificate.

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

Parametri

subkey
String

Nome o percorso della sottochiave da creare o aprire. Stringa senza distinzione tra maiuscole e minuscole.

permissionCheck
RegistryKeyPermissionCheck

Uno dei valori di enumerazione che specifica se la chiave è aperta per l'accesso in lettura o in lettura/scrittura.

registrySecurity
RegistrySecurity

Sicurezza del controllo di accesso per la nuova chiave.

Restituisce

Nuova sottochiave creata oppure null se l'operazione non è riuscita. Se viene specificata una stringa di lunghezza zero per subkey, viene restituito l'oggetto RegistryKey corrente.

Attributi

Eccezioni

subkey è null.

L'utente non ha le autorizzazioni necessarie per creare o aprire la chiave del Registro di sistema.

permissionCheck contiene un valore non valido.

La chiave RegistryKey su cui viene richiamato il metodo è chiusa, pertanto non è possibile accedere ad essa.

Non è possibile scrivere nella chiave RegistryKey corrente perché, ad esempio, non è stata aperta come chiave scrivibile oppure l'utente non ha i diritti di accesso necessari.

Il livello di annidamento supera 510.

-oppure-

Si è verificato un errore di sistema, ad esempio eliminazione della chiave, o un tentativo di creare una chiave nella radice LocalMachine.

Commenti

Il CreateSubKey metodo crea una chiave del registrySecurity Registro di sistema con il controllo di accesso specificato dal parametro . L'oggetto RegistryKey restituito rappresenta la chiave del registrySecurity Registro di sistema, ma tale oggetto non è limitato dal controllo di accesso specificato nel parametro.

Se permissionCheck è RegistryKeyPermissionCheck.ReadWriteSubTree, la chiave viene aperta per l'accesso in lettura/scrittura. Se permissionCheck è RegistryKeyPermissionCheck.ReadSubTree, la chiave viene aperta per l'accesso in lettura.

Per la compatibilità con le versioni precedenti, la chiave viene aperta per la lettura e la scrittura se permissionCheck è RegistryKeyPermissionCheck.Default e la chiave padre ha RegistryKeyPermissionCheck.Defaultanche . Se la chiave padre ha qualsiasi altra impostazione, lo stato di lettura/scrittura viene controllato dall'impostazione della chiave padre.

Per eseguire questa azione, l'utente deve disporre delle autorizzazioni a questo livello e sotto nella gerarchia del Registro di sistema.

Attenzione

Non esporre RegistryKey oggetti in modo che un programma dannoso possa creare migliaia di sottochiavi senza significato o coppie chiave/valore. Ad esempio, non consentire ai chiamanti di immettere chiavi o valori arbitrari.

Per usare il OpenSubKey metodo, è necessario disporre di un'istanza della RegistryKey classe. Per ottenere un'istanza di RegistryKey, usare uno dei membri statici della Registry classe.

Vedi anche

Si applica a

CreateSubKey(String, Boolean, RegistryOptions)

Source:
RegistryKey.cs

Crea una nuova sottochiave o apre una sottochiave esistente con l'accesso specificato. Disponibile a partire da .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

Parametri

subkey
String

Nome o percorso della sottochiave da creare o aprire. Stringa senza distinzione tra maiuscole e minuscole.

writable
Boolean

true per indicare che la nuova sottochiave è accessibile in scrittura; in caso contrario, false.

options
RegistryOptions

Opzione del Registro di sistema da usare.

Restituisce

Nuova sottochiave creata oppure null se l'operazione non è riuscita. Se viene specificata una stringa di lunghezza zero per subkey, viene restituito l'oggetto RegistryKey corrente.

Attributi

Eccezioni

subkey è null.

options non specifica un'opzione valida.

L'utente non ha le autorizzazioni necessarie per creare o aprire la chiave del Registro di sistema.

Non è possibile scrivere nella chiave RegistryKey corrente perché, ad esempio, non è stata aperta come chiave scrivibile oppure l'utente non ha i diritti di accesso necessari.

Il livello di annidamento supera 510.

-oppure-

Si è verificato un errore di sistema, ad esempio eliminazione della chiave, o un tentativo di creare una chiave nella radice LocalMachine.

Commenti

Per eseguire questa azione, l'utente deve disporre dell'autorizzazione a questo livello e sotto nella gerarchia del Registro di sistema.

Attenzione

Non esporre RegistryKey oggetti in modo che un programma dannoso possa creare migliaia di sottochiavi senza significato o coppie chiave/valore. Ad esempio, non consentire ai chiamanti di immettere chiavi o valori arbitrari.

Per usare il CreateSubKey metodo, è necessario disporre di un'istanza della RegistryKey classe. Per ottenere un'istanza di RegistryKey, usare uno dei membri statici della Registry classe.

Si applica a

CreateSubKey(String, RegistryKeyPermissionCheck, RegistryOptions)

Source:
RegistryKey.cs

Crea una sottochiave o apre una sottochiave per l'accesso in scrittura, usando le opzioni del Registro di sistema e di verifica delle autorizzazioni specificate.

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

Parametri

subkey
String

Nome o percorso della sottochiave da creare o aprire.

permissionCheck
RegistryKeyPermissionCheck

Uno dei valori di enumerazione che specifica se la chiave è aperta per l'accesso in lettura o in lettura/scrittura.

registryOptionsoptions
RegistryOptions

Opzione del Registro di sistema da usare, ad esempio quella per la creazione di una chiave volatile.

Restituisce

Nuova sottochiave creata oppure null se l'operazione non è riuscita.

Attributi

Eccezioni

subkey è null.

L'oggetto corrente RegistryKey viene chiuso, pertanto non è possibile accedere a esso).

Non è possibile scrivere nell'oggetto RegistryKey corrente perché, ad esempio, l'oggetto non è stato aperto come chiave scrivibile oppure l'utente non dispone dei diritti di accesso richiesti.

Il livello di annidamento supera 510.

-oppure-

Si è verificato un errore di sistema, ad esempio eliminazione della chiave o un tentativo di creare una chiave nella radice LocalMachine.

L'utente non ha le autorizzazioni necessarie per creare o aprire la chiave del Registro di sistema.

Commenti

Per ottenere l'oggetto corrente RegistryKey , specificare una stringa vuota ("") per subkey.

Si applica a

CreateSubKey(String, RegistryKeyPermissionCheck, RegistryOptions, RegistrySecurity)

Source:
RegistryKey.cs

Crea una nuova sottochiave o apre una sottochiave per l'accesso in scrittura, usando l'opzione di verifica delle autorizzazioni, l'opzione del Registro di sistema e la sicurezza del Registro di sistema specificate.

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

Parametri

subkey
String

Nome o percorso della sottochiave da creare o aprire.

permissionCheck
RegistryKeyPermissionCheck

Uno dei valori di enumerazione che specifica se la chiave è aperta per l'accesso in lettura o in lettura/scrittura.

registryOptions
RegistryOptions

Opzione del Registro di sistema da usare.

registrySecurity
RegistrySecurity

Sicurezza del controllo di accesso per la nuova sottochiave.

Restituisce

Nuova sottochiave creata oppure null se l'operazione non è riuscita.

Attributi

Eccezioni

subkey è null.

L'oggetto RegistryKey corrente viene chiuso. L'accesso alle chiavi chiuse non può essere eseguito.

Non è possibile scrivere nell'oggetto RegistryKey corrente perché, ad esempio, l'oggetto non è stato aperto come chiave scrivibile oppure l'utente non dispone dei diritti di accesso richiesti.

Il livello di annidamento supera 510.

-oppure-

Si è verificato un errore di sistema, ad esempio eliminazione della chiave o un tentativo di creare una chiave nella radice LocalMachine.

L'utente non ha le autorizzazioni necessarie per creare o aprire la chiave del Registro di sistema.

Commenti

Per ottenere l'oggetto corrente RegistryKey , specificare una stringa vuota ("") per subkey.

Si applica a