RegistryKey.GetValueNames Método

Definición

Recupera una matriz de cadenas que contiene todos los nombres de valores asociados a esta clave.

public:
 cli::array <System::String ^> ^ GetValueNames();
public string[] GetValueNames ();
member this.GetValueNames : unit -> string[]
Public Function GetValueNames () As String()

Devoluciones

String[]

Matriz de cadenas que contiene los nombres de los valores de la clave actual.

Excepciones

El usuario no tiene los permisos necesarios para leer en la clave del Registro.

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.

Se ha producido un error en el sistema porque, por ejemplo, se ha eliminado la clave actual.

Ejemplos

Este ejemplo de código es parte de un ejemplo más grande proporcionado para la clase RegistryKey.

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

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

Comentarios

Si no se encuentra ningún nombre de valor para la clave, se devuelve una matriz vacía.

Una clave del Registro puede tener un valor predeterminado, es decir, un par nombre-valor en el que el nombre es la cadena vacía (""). Si se ha establecido un valor predeterminado para una clave del Registro, la matriz devuelta por el GetValueNames método incluye la cadena vacía.

Se aplica a

Consulte también