Export (0) Print
Expand All

RegistryKey.DeleteSubKey Method (String)

Deletes the specified subkey.

Namespace:  Microsoft.Win32
Assembly:  mscorlib (in mscorlib.dll)

public void DeleteSubKey(
	string subkey
)

Parameters

subkey
Type: System.String

The name of the subkey to delete. This string is not case-sensitive.

ExceptionCondition
InvalidOperationException

The subkey has child subkeys

ArgumentException

The subkey parameter does not specify a valid registry key

ArgumentNullException

subkey is null

SecurityException

The user does not have the permissions required to delete the key.

ObjectDisposedException

The RegistryKey being manipulated is closed (closed keys cannot be accessed).

UnauthorizedAccessException

The user does not have the necessary registry rights.

To delete child subkeys, use DeleteSubKeyTree.

Use caution when deleting registry keys.

The following example demonstrates how to use DeleteSubKey.

using System;
using Microsoft.Win32;

class RegKeyDel
{
    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.
        RegistryKey testName = test9999.CreateSubKey("TestName");
        RegistryKey testSettings = test9999.CreateSubKey("TestSettings");

        // Create data for the TestSettings subkey.
        testSettings.SetValue("Language", "French");
        testSettings.SetValue("Level", "Intermediate");
        testSettings.SetValue("ID", 123);

        // delete the subkey "TestName"
        test9999.DeleteSubKey("TestName");
        // delete everything under and including "Test9999"
        Registry.CurrentUser.DeleteSubKeyTree("Test9999");
    }
}

.NET Framework

Supported in: 4.5.2, 4.5.1, 4.5, 4, 3.5, 3.0, 2.0, 1.1, 1.0

.NET Framework Client Profile

Supported in: 4, 3.5 SP1

Windows 8.1, Windows Server 2012 R2, Windows 8, Windows Server 2012, Windows 7, Windows Vista SP2, Windows Server 2008 (Server Core Role not supported), Windows Server 2008 R2 (Server Core Role supported with SP1 or later; Itanium not supported)

The .NET Framework does not support all versions of every platform. For a list of the supported versions, see .NET Framework System Requirements.

Was this page helpful?
(1500 characters remaining)
Thank you for your feedback
Show:
© 2014 Microsoft