Freigeben über


RegistryKey.GetSubKeyNames-Methode

Ruft ein Array von Zeichenfolgen mit den Namen aller Unterschlüssel ab.

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

Syntax

'Declaration
Public Function GetSubKeyNames As String()
'Usage
Dim instance As RegistryKey
Dim returnValue As String()

returnValue = instance.GetSubKeyNames
public string[] GetSubKeyNames ()
public:
array<String^>^ GetSubKeyNames ()
public String[] GetSubKeyNames ()
public function GetSubKeyNames () : String[]

Rückgabewert

Ein Array von Zeichenfolgen, das die Namen der Unterschlüssel des aktuellen Schlüssels enthält.

Ausnahmen

Ausnahmetyp Bedingung

SecurityException

Der Benutzer verfügt nicht über die erforderlichen Berechtigungen, um aus dem Schlüssel zu lesen.

ObjectDisposedException

Der zu bearbeitende RegistryKey ist geschlossen (auf geschlossene Schlüssel kann nicht zugegriffen werden).

UnauthorizedAccessException

Der Benutzer verfügt nicht über die notwendigen Registrierungsrechte.

IOException

Ein Systemfehler ist aufgetreten, möglicherweise wurde der aktuelle Schlüssel gelöscht.

Hinweise

Diese Methode sucht die Namen nicht rekursiv. Sie gibt die Namen auf der Basisebene zurück, von der aus sie aufgerufen wurde.

Beispiel

Dieses Codebeispiel ist Teil eines umfangreicheren Beispiels für die RegistryKey-Klasse.

' 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
// 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());
        }
    }
}
// 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() );

   }
}

.NET Framework-Sicherheit

Plattformen

Windows 98, Windows 2000 SP4, Windows CE, Windows Millennium Edition, Windows Mobile für Pocket PC, Windows Mobile für Smartphone, Windows Server 2003, Windows XP Media Center Edition, Windows XP Professional x64 Edition, Windows XP SP2, Windows XP Starter Edition

.NET Framework unterstützt nicht alle Versionen sämtlicher Plattformen. Eine Liste der unterstützten Versionen finden Sie unter Systemanforderungen.

Versionsinformationen

.NET Framework

Unterstützt in: 2.0, 1.1, 1.0

.NET Compact Framework

Unterstützt in: 2.0

Siehe auch

Referenz

RegistryKey-Klasse
RegistryKey-Member
Microsoft.Win32-Namespace
SubKeyCount
GetValueNames