RegistryKey.CreateSubKey Método

Definición

Crea una nueva subclave o abre una subclave existente.

Sobrecargas

Nombre Description
CreateSubKey(String)

Crea una nueva subclave o abre una subclave existente para el acceso de escritura.

CreateSubKey(String, RegistryKeyPermissionCheck)

Crea una nueva subclave o abre una subclave existente para el acceso de escritura mediante la opción de comprobación de permisos especificada.

CreateSubKey(String, Boolean)

Crea una nueva subclave o abre una subclave existente con el acceso especificado. Disponible a partir de .NET Framework 4.6.

CreateSubKey(String, RegistryKeyPermissionCheck, RegistrySecurity)

Crea una nueva subclave o abre una subclave existente para el acceso de escritura mediante la opción de comprobación de permisos y la seguridad del Registro especificadas.

CreateSubKey(String, Boolean, RegistryOptions)

Crea una nueva subclave o abre una subclave existente con el acceso especificado. Disponible a partir de .NET Framework 4.6.

CreateSubKey(String, RegistryKeyPermissionCheck, RegistryOptions)

Crea una subclave o abre una subclave para el acceso de escritura mediante la comprobación de permisos y las opciones del Registro especificadas.

CreateSubKey(String, RegistryKeyPermissionCheck, RegistryOptions, RegistrySecurity)

Crea una subclave o abre una subclave para el acceso de escritura mediante la opción de comprobación de permisos, la opción del Registro y la seguridad del Registro especificadas.

CreateSubKey(String)

Source:
RegistryKey.cs

Crea una nueva subclave o abre una subclave existente para el acceso de escritura.

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

Nombre o ruta de acceso de la subclave que se va a crear o abrir. Esta cadena no distingue mayúsculas de minúsculas.

Devoluciones

La subclave recién creada o null si se produjo un error en la operación. Si se especifica una cadena de longitud cero para subkey, se devuelve el objeto actual RegistryKey .

Excepciones

subkey es null.

El usuario no tiene los permisos necesarios para crear o abrir la clave del Registro.

El RegistryKey en el que se invoca este método está cerrado (no se puede tener acceso a las claves cerradas).

no RegistryKey se puede escribir en; por ejemplo, no se abrió como una clave grabable o el usuario no tiene los derechos de acceso necesarios.

El nivel de anidamiento supera los 510.

O bien

Error del sistema, como la eliminación de la clave o un intento de crear una clave en la LocalMachine raíz.

Ejemplos

En el ejemplo de código siguiente se muestra cómo crear una subclave en HKEY_CURRENT_USER, manipular su contenido y, a continuación, eliminar la subclave.

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

Comentarios

Para realizar esta acción, el usuario debe tener permiso en este nivel y debajo en la jerarquía del Registro.

Caution

No exponga RegistryKey objetos de tal manera que un programa malintencionado pueda crear miles de subclaves sin significado ni pares clave-valor. Por ejemplo, no permita que los autores de llamadas escriban claves o valores arbitrarios.

Consulte también

Se aplica a

CreateSubKey(String, RegistryKeyPermissionCheck)

Source:
RegistryKey.cs

Crea una nueva subclave o abre una subclave existente para el acceso de escritura mediante la opción de comprobación de permisos 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

Nombre o ruta de acceso de la subclave que se va a crear o abrir. Esta cadena no distingue mayúsculas de minúsculas.

permissionCheck
RegistryKeyPermissionCheck

Uno de los valores de enumeración que especifica si la clave se abre para el acceso de lectura o lectura y escritura.

Devoluciones

La subclave recién creada o null si se produjo un error en la operación. Si se especifica una cadena de longitud cero para subkey, se devuelve el objeto actual RegistryKey .

Atributos

Excepciones

subkey es null.

El usuario no tiene los permisos necesarios para crear o abrir la clave del Registro.

permissionCheck contiene un valor no válido.

El RegistryKey en el que se invoca este método está cerrado (no se puede tener acceso a las claves cerradas).

no RegistryKey se puede escribir en; por ejemplo, no se abrió como una clave grabable o el usuario no tiene los derechos de acceso necesarios.

El nivel de anidamiento supera los 510.

O bien

Error del sistema, como la eliminación de la clave o un intento de crear una clave en la LocalMachine raíz.

Comentarios

Para realizar esta acción, el usuario debe tener permiso en este nivel y debajo en la jerarquía del Registro.

Caution

No exponga RegistryKey objetos de tal manera que un programa malintencionado pueda crear miles de subclaves sin significado ni pares clave-valor. Por ejemplo, no permita que los autores de llamadas escriban claves o valores arbitrarios.

Para usar el OpenSubKey método , debe tener una instancia de la RegistryKey clase . Para obtener una instancia de RegistryKey, use uno de los miembros estáticos de la Registry clase .

Consulte también

Se aplica a

CreateSubKey(String, Boolean)

Source:
RegistryKey.cs

Crea una nueva subclave o abre una subclave existente con el acceso especificado. Disponible a partir de .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

Nombre o ruta de acceso de la subclave que se va a crear o abrir. Esta cadena no distingue mayúsculas de minúsculas.

writable
Boolean

true para indicar que se puede escribir la nueva subclave; de lo contrario, false.

Devoluciones

La subclave recién creada o null si se produjo un error en la operación. Si se especifica una cadena de longitud cero para subkey, se devuelve el objeto actual RegistryKey .

Atributos

Excepciones

subkey es null.

El usuario no tiene los permisos necesarios para crear o abrir la clave del Registro.

El objeto actual RegistryKey no se puede escribir en; por ejemplo, no se abrió como una clave grabable o el usuario no tiene los derechos de acceso necesarios.

El nivel de anidamiento supera los 510.

O bien

Error del sistema, como la eliminación de la clave o un intento de crear una clave en la LocalMachine raíz.

Comentarios

Para realizar esta acción, el usuario debe tener permiso en este nivel y debajo en la jerarquía del Registro.

Caution

No exponga RegistryKey objetos de tal manera que un programa malintencionado pueda crear miles de subclaves sin significado ni pares clave-valor. Por ejemplo, no permita que los autores de llamadas escriban claves o valores arbitrarios.

Para usar el CreateSubKey método , debe tener una instancia de la RegistryKey clase . Para obtener una instancia de RegistryKey, use uno de los miembros estáticos de la Registry clase .

Se aplica a

CreateSubKey(String, RegistryKeyPermissionCheck, RegistrySecurity)

Source:
RegistryKey.cs

Crea una nueva subclave o abre una subclave existente para el acceso de escritura mediante la opción de comprobación de permisos y la seguridad del Registro especificadas.

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

Nombre o ruta de acceso de la subclave que se va a crear o abrir. Esta cadena no distingue mayúsculas de minúsculas.

permissionCheck
RegistryKeyPermissionCheck

Uno de los valores de enumeración que especifica si la clave se abre para el acceso de lectura o lectura y escritura.

registrySecurity
RegistrySecurity

Seguridad del control de acceso para la nueva clave.

Devoluciones

La subclave recién creada o null si se produjo un error en la operación. Si se especifica una cadena de longitud cero para subkey, se devuelve el objeto actual RegistryKey .

Atributos

Excepciones

subkey es null.

El usuario no tiene los permisos necesarios para crear o abrir la clave del Registro.

permissionCheck contiene un valor no válido.

El RegistryKey en el que se invoca este método está cerrado (no se puede tener acceso a las claves cerradas).

El objeto actual RegistryKey no se puede escribir en; por ejemplo, no se abrió como una clave grabable o el usuario no tiene los derechos de acceso necesarios.

El nivel de anidamiento supera los 510.

O bien

Error del sistema, como la eliminación de la clave o un intento de crear una clave en la LocalMachine raíz.

Comentarios

El CreateSubKey método crea una clave del Registro que tiene el control de acceso especificado por el registrySecurity parámetro . El RegistryKey objeto que se devuelve representa la clave del Registro, pero ese objeto no está restringido por el control de acceso especificado en el registrySecurity parámetro .

Si permissionCheck es RegistryKeyPermissionCheck.ReadWriteSubTree, la clave se abre para el acceso de lectura y escritura. Si permissionCheck es RegistryKeyPermissionCheck.ReadSubTree, la clave se abre para el acceso de lectura.

Para la compatibilidad con versiones anteriores, la clave se abre para leer y escribir si permissionCheck es RegistryKeyPermissionCheck.Default y la clave primaria también tiene RegistryKeyPermissionCheck.Default. Si la clave primaria tiene cualquier otra configuración, el estado de lectura y escritura se controla mediante la configuración de la clave primaria.

Para realizar esta acción, el usuario debe tener permisos en este nivel y debajo en la jerarquía del Registro.

Caution

No exponga RegistryKey objetos de tal manera que un programa malintencionado pueda crear miles de subclaves sin significado ni pares clave-valor. Por ejemplo, no permita que los autores de llamadas escriban claves o valores arbitrarios.

Para usar el OpenSubKey método , debe tener una instancia de la RegistryKey clase . Para obtener una instancia de RegistryKey, use uno de los miembros estáticos de la Registry clase .

Consulte también

Se aplica a

CreateSubKey(String, Boolean, RegistryOptions)

Source:
RegistryKey.cs

Crea una nueva subclave o abre una subclave existente con el acceso especificado. Disponible a partir de .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

Nombre o ruta de acceso de la subclave que se va a crear o abrir. Esta cadena no distingue mayúsculas de minúsculas.

writable
Boolean

true para indicar que se puede escribir la nueva subclave; de lo contrario, false.

options
RegistryOptions

Opción del Registro que se va a usar.

Devoluciones

La subclave recién creada o null si se produjo un error en la operación. Si se especifica una cadena de longitud cero para subkey, se devuelve el objeto actual RegistryKey .

Atributos

Excepciones

subkey es null.

options no especifica una opción válida

El usuario no tiene los permisos necesarios para crear o abrir la clave del Registro.

El objeto actual RegistryKey no se puede escribir en; por ejemplo, no se abrió como una clave grabable o el usuario no tiene los derechos de acceso necesarios.

El nivel de anidamiento supera los 510.

O bien

Error del sistema, como la eliminación de la clave o un intento de crear una clave en la LocalMachine raíz.

Comentarios

Para realizar esta acción, el usuario debe tener permiso en este nivel y debajo en la jerarquía del Registro.

Caution

No exponga RegistryKey objetos de tal manera que un programa malintencionado pueda crear miles de subclaves sin significado ni pares clave-valor. Por ejemplo, no permita que los autores de llamadas escriban claves o valores arbitrarios.

Para usar el CreateSubKey método , debe tener una instancia de la RegistryKey clase . Para obtener una instancia de RegistryKey, use uno de los miembros estáticos de la Registry clase .

Se aplica a

CreateSubKey(String, RegistryKeyPermissionCheck, RegistryOptions)

Source:
RegistryKey.cs

Crea una subclave o abre una subclave para el acceso de escritura mediante la comprobación de permisos y las opciones del 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

Nombre o ruta de acceso de la subclave que se va a crear o abrir.

permissionCheck
RegistryKeyPermissionCheck

Uno de los valores de enumeración que especifica si la clave se abre para el acceso de lectura o lectura y escritura.

registryOptionsoptions
RegistryOptions

Opción del Registro que se va a usar; por ejemplo, que crea una clave volátil.

Devoluciones

La subclave recién creada o null si se produjo un error en la operación.

Atributos

Excepciones

subkey es null.

El objeto actual RegistryKey está cerrado (no se puede acceder a las claves cerradas).

El objeto actual RegistryKey no se puede escribir en; por ejemplo, no se abrió como una clave grabable o el usuario no tiene los derechos de acceso necesarios.

El nivel de anidamiento supera los 510.

O bien

Error del sistema, como la eliminación de la clave o un intento de crear una clave en la LocalMachine raíz.

El usuario no tiene los permisos necesarios para crear o abrir la clave del Registro.

Comentarios

Para obtener el objeto actual RegistryKey , especifique una cadena vacía ("") para subkey.

Se aplica a

CreateSubKey(String, RegistryKeyPermissionCheck, RegistryOptions, RegistrySecurity)

Source:
RegistryKey.cs

Crea una subclave o abre una subclave para el acceso de escritura mediante la opción de comprobación de permisos, la opción del Registro y la seguridad del Registro especificadas.

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

Nombre o ruta de acceso de la subclave que se va a crear o abrir.

permissionCheck
RegistryKeyPermissionCheck

Uno de los valores de enumeración que especifica si la clave se abre para el acceso de lectura o lectura y escritura.

registryOptions
RegistryOptions

Opción del Registro que se va a usar.

registrySecurity
RegistrySecurity

Seguridad del control de acceso para la nueva subclave.

Devoluciones

La subclave recién creada o null si se produjo un error en la operación.

Atributos

Excepciones

subkey es null.

El objeto actual RegistryKey está cerrado. No se puede acceder a las claves cerradas.

El objeto actual RegistryKey no se puede escribir en; por ejemplo, no se abrió como una clave grabable o el usuario no tiene los derechos de acceso necesarios.

El nivel de anidamiento supera los 510.

O bien

Error del sistema, como la eliminación de la clave o un intento de crear una clave en la LocalMachine raíz.

El usuario no tiene los permisos necesarios para crear o abrir la clave del Registro.

Comentarios

Para obtener el objeto actual RegistryKey , especifique una cadena vacía ("") para subkey.

Se aplica a