RegistryKey.DeleteSubKeyTree Método
Definición
Importante
Parte de la información hace referencia a la versión preliminar del producto, que puede haberse modificado sustancialmente antes de lanzar la versión definitiva. Microsoft no otorga ninguna garantía, explícita o implícita, con respecto a la información proporcionada aquí.
Elimina una subclave y cualquier subclave secundaria, con control de excepciones opcional, de forma recursiva.
Sobrecargas
DeleteSubKeyTree(String, Boolean) |
Elimina la subclave especificada y cualquier subclave secundaria de forma recursiva y especifica si se generará una excepción cuando no se encuentre la subclave. |
DeleteSubKeyTree(String) |
Elimina una subclave y las subclaves secundarias de forma recursiva. |
DeleteSubKeyTree(String, Boolean)
- Source:
- RegistryKey.cs
Elimina la subclave especificada y cualquier subclave secundaria de forma recursiva y especifica si se generará una excepción cuando no se encuentre la subclave.
public:
void DeleteSubKeyTree(System::String ^ subkey, bool throwOnMissingSubKey);
public void DeleteSubKeyTree (string subkey, bool throwOnMissingSubKey);
[System.Runtime.InteropServices.ComVisible(false)]
public void DeleteSubKeyTree (string subkey, bool throwOnMissingSubKey);
member this.DeleteSubKeyTree : string * bool -> unit
[<System.Runtime.InteropServices.ComVisible(false)>]
member this.DeleteSubKeyTree : string * bool -> unit
Public Sub DeleteSubKeyTree (subkey As String, throwOnMissingSubKey As Boolean)
Parámetros
- subkey
- String
Nombre de la subclave que se va a eliminar. Esta cadena no distingue entre mayúsculas y minúsculas.
- throwOnMissingSubKey
- Boolean
Indica si debería producirse una excepción si no se puede encontrar la subclave especificada. Si este argumento es true
y la subclave especificada no existe, se genera una excepción. Si este argumento es false
y la subclave especificada no existe, no se lleva a cabo ninguna acción.
- Atributos
Excepciones
Se intentó eliminar el subárbol raíz del árbol.
o bien
subkey
no especifica una subclave del Registro válida y throwOnMissingSubKey
es true
.
subkey
es null
.
El objeto RegistryKey está cerrado (no se puede tener acceso a claves cerradas).
El usuario no tiene los derechos necesarios en el Registro.
El usuario no tiene los permisos necesarios para eliminar la clave.
Se aplica a
DeleteSubKeyTree(String)
- Source:
- RegistryKey.cs
Elimina una subclave y las subclaves secundarias de forma recursiva.
public:
void DeleteSubKeyTree(System::String ^ subkey);
public void DeleteSubKeyTree (string subkey);
member this.DeleteSubKeyTree : string -> unit
Public Sub DeleteSubKeyTree (subkey As String)
Parámetros
- subkey
- String
Subclave que se va a eliminar. Esta cadena no distingue entre mayúsculas y minúsculas.
Excepciones
subkey
es null
.
Se ha intentado eliminar un subárbol.
o bien
subkey
no especifica una subclave del Registro válida.
Error de E/S.
El usuario no tiene los permisos necesarios para eliminar la clave.
La RegistryKey que se ha manipulado está cerrada (no se puede tener acceso a las claves cerradas).
El usuario no tiene los derechos necesarios en el Registro.
Ejemplos
Este ejemplo de código es parte de un ejemplo más grande proporcionado para la clase RegistryKey.
// 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();
}
// 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();
}
' 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
Comentarios
Debe tener los permisos adecuados para eliminar la subclave y su árbol.
Precaución
Al eliminar una clave determinada, se quitarán todas las entradas debajo de la clave del árbol. No se proporcionará ninguna advertencia. Si desea eliminar una subclave solo cuando no tenga subclaves secundarias, use el DeleteSubKey método .