RegistryKey.CreateSubKey Método

Definição

Cria uma nova subchave ou abre uma subchave existente.

Sobrecargas

Nome Description
CreateSubKey(String)

Cria uma nova subchave ou abre uma subchave existente para acesso de gravação.

CreateSubKey(String, RegistryKeyPermissionCheck)

Cria uma nova subchave ou abre uma subchave existente para acesso de gravação usando a opção de verificação de permissão especificada.

CreateSubKey(String, Boolean)

Cria uma nova subchave ou abre uma subchave existente com o acesso especificado. Disponível a partir do .NET Framework 4.6.

CreateSubKey(String, RegistryKeyPermissionCheck, RegistrySecurity)

Cria uma nova subchave ou abre uma subchave existente para acesso de gravação, usando a opção de verificação de permissão especificada e a segurança do Registro.

CreateSubKey(String, Boolean, RegistryOptions)

Cria uma nova subchave ou abre uma subchave existente com o acesso especificado. Disponível a partir do .NET Framework 4.6.

CreateSubKey(String, RegistryKeyPermissionCheck, RegistryOptions)

Cria uma subchave ou abre uma subchave para acesso de gravação, usando as opções de verificação de permissão e registro especificadas.

CreateSubKey(String, RegistryKeyPermissionCheck, RegistryOptions, RegistrySecurity)

Cria uma subchave ou abre uma subchave para acesso de gravação, usando a opção de verificação de permissão especificada, a opção registro e a segurança do Registro.

CreateSubKey(String)

Origem:
RegistryKey.cs

Cria uma nova subchave ou abre uma subchave existente para acesso de gravação.

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

Parâmetros

subkey
String

O nome ou caminho da subchave a ser criada ou aberta. Essa cadeia de caracteres não diferencia maiúsculas de minúsculas.

Retornos

A subchave recém-criada ou null se a operação falhou. Se uma cadeia de caracteres de comprimento zero for especificada, subkeyo objeto atual RegistryKey será retornado.

Exceções

subkey é null.

O usuário não tem as permissões necessárias para criar ou abrir a chave do Registro.

O RegistryKey método no qual esse método está sendo invocado é fechado (chaves fechadas não podem ser acessadas).

O RegistryKey não pode ser gravado; por exemplo, ele não foi aberto como uma chave gravável ou o usuário não tem os direitos de acesso necessários.

O nível de aninhamento excede 510.

- ou -

Ocorreu um erro do sistema, como a exclusão da chave ou uma tentativa de criar uma chave na LocalMachine raiz.

Exemplos

O exemplo de código a seguir mostra como criar uma subchave em HKEY_CURRENT_USER, manipular seu conteúdo e, em seguida, excluir a subchave.

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

Comentários

Para executar essa ação, o usuário deve ter permissão nesse nível e abaixo na hierarquia do Registro.

Cuidado

Não exponha RegistryKey objetos de forma que um programa mal-intencionado possa criar milhares de subchaves sem sentido ou pares chave/valor. Por exemplo, não permita que os chamadores insiram chaves ou valores arbitrários.

Confira também

Aplica-se a

CreateSubKey(String, RegistryKeyPermissionCheck)

Origem:
RegistryKey.cs

Cria uma nova subchave ou abre uma subchave existente para acesso de gravação usando a opção de verificação de permissão especificada.

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

Parâmetros

subkey
String

O nome ou caminho da subchave a ser criada ou aberta. Essa cadeia de caracteres não diferencia maiúsculas de minúsculas.

permissionCheck
RegistryKeyPermissionCheck

Um dos valores de enumeração que especifica se a chave é aberta para acesso de leitura ou leitura/gravação.

Retornos

A subchave recém-criada ou null se a operação falhou. Se uma cadeia de caracteres de comprimento zero for especificada, subkeyo objeto atual RegistryKey será retornado.

Atributos

Exceções

subkey é null.

O usuário não tem as permissões necessárias para criar ou abrir a chave do Registro.

permissionCheck contém um valor inválido.

O RegistryKey método no qual esse método está sendo invocado é fechado (chaves fechadas não podem ser acessadas).

Não RegistryKey pode ser gravado; por exemplo, ele não foi aberto como uma chave gravável ou o usuário não tem os direitos de acesso necessários.

O nível de aninhamento excede 510.

- ou -

Ocorreu um erro do sistema, como a exclusão da chave ou uma tentativa de criar uma chave na LocalMachine raiz.

Comentários

Para executar essa ação, o usuário deve ter permissão nesse nível e abaixo na hierarquia do Registro.

Cuidado

Não exponha RegistryKey objetos de forma que um programa mal-intencionado possa criar milhares de subchaves sem sentido ou pares chave/valor. Por exemplo, não permita que os chamadores insiram chaves ou valores arbitrários.

Para usar o OpenSubKey método, você deve ter uma instância da RegistryKey classe. Para obter uma instância de RegistryKey, use um dos membros estáticos da Registry classe.

Confira também

Aplica-se a

CreateSubKey(String, Boolean)

Origem:
RegistryKey.cs

Cria uma nova subchave ou abre uma subchave existente com o acesso especificado. Disponível a partir do .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

Parâmetros

subkey
String

O nome ou caminho da subchave a ser criada ou aberta. Essa cadeia de caracteres não diferencia maiúsculas de minúsculas.

writable
Boolean

true para indicar que a nova subchave é gravável; caso contrário, false.

Retornos

A subchave recém-criada ou null se a operação falhou. Se uma cadeia de caracteres de comprimento zero for especificada, subkeyo objeto atual RegistryKey será retornado.

Atributos

Exceções

subkey é null.

O usuário não tem as permissões necessárias para criar ou abrir a chave do Registro.

A atual RegistryKey não pode ser gravada; por exemplo, ela não foi aberta como uma chave gravável ou o usuário não tem os direitos de acesso necessários.

O nível de aninhamento excede 510.

- ou -

Ocorreu um erro do sistema, como a exclusão da chave ou uma tentativa de criar uma chave na LocalMachine raiz.

Comentários

Para executar essa ação, o usuário deve ter permissão nesse nível e abaixo na hierarquia do Registro.

Cuidado

Não exponha RegistryKey objetos de forma que um programa mal-intencionado possa criar milhares de subchaves sem sentido ou pares chave/valor. Por exemplo, não permita que os chamadores insiram chaves ou valores arbitrários.

Para usar o CreateSubKey método, você deve ter uma instância da RegistryKey classe. Para obter uma instância de RegistryKey, use um dos membros estáticos da Registry classe.

Aplica-se a

CreateSubKey(String, RegistryKeyPermissionCheck, RegistrySecurity)

Origem:
RegistryKey.cs

Cria uma nova subchave ou abre uma subchave existente para acesso de gravação, usando a opção de verificação de permissão especificada e a segurança do Registro.

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

Parâmetros

subkey
String

O nome ou caminho da subchave a ser criada ou aberta. Essa cadeia de caracteres não diferencia maiúsculas de minúsculas.

permissionCheck
RegistryKeyPermissionCheck

Um dos valores de enumeração que especifica se a chave é aberta para acesso de leitura ou leitura/gravação.

registrySecurity
RegistrySecurity

A segurança do controle de acesso para a nova chave.

Retornos

A subchave recém-criada ou null se a operação falhou. Se uma cadeia de caracteres de comprimento zero for especificada, subkeyo objeto atual RegistryKey será retornado.

Atributos

Exceções

subkey é null.

O usuário não tem as permissões necessárias para criar ou abrir a chave do Registro.

permissionCheck contém um valor inválido.

O RegistryKey método no qual esse método está sendo invocado é fechado (chaves fechadas não podem ser acessadas).

A atual RegistryKey não pode ser gravada; por exemplo, ela não foi aberta como uma chave gravável ou o usuário não tem os direitos de acesso necessários.

O nível de aninhamento excede 510.

- ou -

Ocorreu um erro do sistema, como a exclusão da chave ou uma tentativa de criar uma chave na LocalMachine raiz.

Comentários

O CreateSubKey método cria uma chave do Registro que tem o controle de acesso especificado pelo registrySecurity parâmetro. O RegistryKey objeto retornado representa a chave do Registro, mas esse objeto não é restrito pelo controle de acesso especificado no registrySecurity parâmetro.

Se permissionCheck estiver RegistryKeyPermissionCheck.ReadWriteSubTree, a chave será aberta para acesso de leitura/gravação. Se permissionCheck estiver RegistryKeyPermissionCheck.ReadSubTree, a chave será aberta para acesso de leitura.

Para compatibilidade com versões anteriores, a chave é aberta para leitura e gravação se permissionCheck for RegistryKeyPermissionCheck.Default e a chave pai também tem RegistryKeyPermissionCheck.Default. Se a chave pai tiver qualquer outra configuração, o status de leitura/gravação será controlado pela configuração da chave pai.

Para executar essa ação, o usuário deve ter permissões nesse nível e abaixo na hierarquia do Registro.

Cuidado

Não exponha RegistryKey objetos de forma que um programa mal-intencionado possa criar milhares de subchaves sem sentido ou pares chave/valor. Por exemplo, não permita que os chamadores insiram chaves ou valores arbitrários.

Para usar o OpenSubKey método, você deve ter uma instância da RegistryKey classe. Para obter uma instância de RegistryKey, use um dos membros estáticos da Registry classe.

Confira também

Aplica-se a

CreateSubKey(String, Boolean, RegistryOptions)

Origem:
RegistryKey.cs

Cria uma nova subchave ou abre uma subchave existente com o acesso especificado. Disponível a partir do .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

Parâmetros

subkey
String

O nome ou caminho da subchave a ser criada ou aberta. Essa cadeia de caracteres não diferencia maiúsculas de minúsculas.

writable
Boolean

true para indicar que a nova subchave é gravável; caso contrário, false.

options
RegistryOptions

A opção de registro a ser usada.

Retornos

A subchave recém-criada ou null se a operação falhou. Se uma cadeia de caracteres de comprimento zero for especificada, subkeyo objeto atual RegistryKey será retornado.

Atributos

Exceções

subkey é null.

options não especifica uma opção válida

O usuário não tem as permissões necessárias para criar ou abrir a chave do Registro.

A atual RegistryKey não pode ser gravada; por exemplo, ela não foi aberta como uma chave gravável ou o usuário não tem os direitos de acesso necessários.

O nível de aninhamento excede 510.

- ou -

Ocorreu um erro do sistema, como a exclusão da chave ou uma tentativa de criar uma chave na LocalMachine raiz.

Comentários

Para executar essa ação, o usuário deve ter permissão nesse nível e abaixo na hierarquia do Registro.

Cuidado

Não exponha RegistryKey objetos de forma que um programa mal-intencionado possa criar milhares de subchaves sem sentido ou pares chave/valor. Por exemplo, não permita que os chamadores insiram chaves ou valores arbitrários.

Para usar o CreateSubKey método, você deve ter uma instância da RegistryKey classe. Para obter uma instância de RegistryKey, use um dos membros estáticos da Registry classe.

Aplica-se a

CreateSubKey(String, RegistryKeyPermissionCheck, RegistryOptions)

Origem:
RegistryKey.cs

Cria uma subchave ou abre uma subchave para acesso de gravação, usando as opções de verificação de permissão e registro especificadas.

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

Parâmetros

subkey
String

O nome ou caminho da subchave a ser criada ou aberta.

permissionCheck
RegistryKeyPermissionCheck

Um dos valores de enumeração que especifica se a chave é aberta para acesso de leitura ou leitura/gravação.

registryOptionsoptions
RegistryOptions

A opção de registro a ser usada; por exemplo, isso cria uma chave volátil.

Retornos

A subchave recém-criada ou null se a operação falhou.

Atributos

Exceções

subkey é null.

O objeto atual RegistryKey é fechado (chaves fechadas não podem ser acessadas).

O objeto atual RegistryKey não pode ser gravado; por exemplo, ele não foi aberto como uma chave gravável ou o usuário não tem os direitos de acesso necessários.

O nível de aninhamento excede 510.

- ou -

Ocorreu um erro do sistema, como a exclusão da chave ou uma tentativa de criar uma chave na LocalMachine raiz.

O usuário não tem as permissões necessárias para criar ou abrir a chave do Registro.

Comentários

Para obter o objeto atual RegistryKey , especifique uma cadeia de caracteres vazia ("") para subkey.

Aplica-se a

CreateSubKey(String, RegistryKeyPermissionCheck, RegistryOptions, RegistrySecurity)

Origem:
RegistryKey.cs

Cria uma subchave ou abre uma subchave para acesso de gravação, usando a opção de verificação de permissão especificada, a opção registro e a segurança do Registro.

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

Parâmetros

subkey
String

O nome ou caminho da subchave a ser criada ou aberta.

permissionCheck
RegistryKeyPermissionCheck

Um dos valores de enumeração que especifica se a chave é aberta para acesso de leitura ou leitura/gravação.

registryOptions
RegistryOptions

A opção de registro a ser usada.

registrySecurity
RegistrySecurity

A segurança do controle de acesso para a nova subchave.

Retornos

A subchave recém-criada ou null se a operação falhou.

Atributos

Exceções

subkey é null.

O objeto atual RegistryKey está fechado. As chaves fechadas não podem ser acessadas.

O objeto atual RegistryKey não pode ser gravado; por exemplo, ele não foi aberto como uma chave gravável ou o usuário não tem os direitos de acesso necessários.

O nível de aninhamento excede 510.

- ou -

Ocorreu um erro do sistema, como a exclusão da chave ou uma tentativa de criar uma chave na LocalMachine raiz.

O usuário não tem as permissões necessárias para criar ou abrir a chave do Registro.

Comentários

Para obter o objeto atual RegistryKey , especifique uma cadeia de caracteres vazia ("") para subkey.

Aplica-se a