Condividi tramite


RegistryKey.GetValueNames Metodo

Definizione

Recupera una matrice di stringhe contenente tutti i nomi dei valori associati alla chiave.

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

Restituisce

String[]

Matrice di stringhe contenente i nomi dei valori della chiave corrente.

Eccezioni

L'utente non dispone dell'autorizzazione richiesta per la lettura dalla chiave del Registro di sistema.

La chiave RegistryKey da modificare è chiusa, pertanto non è possibile accedere ad essa.

L'utente non dispone dei necessari diritti relativi al Registro di sistema.

Si è verificato un errore di sistema, ad esempio la chiave corrente è stata eliminata.

Esempio

Questo esempio di codice fa parte di un esempio più grande fornito per la RegistryKey classe.

// 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

Commenti

Se non vengono trovati nomi di valore per la chiave, viene restituita una matrice vuota.

Una chiave del Registro di sistema può avere un valore predefinito, ovvero una coppia nome/valore in cui il nome è la stringa vuota (""). Se per una chiave del Registro di sistema è stato impostato un valore predefinito, la matrice restituita dal GetValueNames metodo include la stringa vuota.

Si applica a

Vedi anche