Compartilhar via


Como: Ler dados do registro do Windows

O exemplo de código a seguir usa o CurrentUser chave de ler dados de registro do Windows. Primeiro, as subchaves são enumeradas usando o GetSubKeyNames método e, em seguida, a subchave Identities é aberto usando o OpenSubKey método. Como as chaves de raiz, cada subchave é representado pelo RegistryKey classe. Finalmente, o novo RegistryKey o objeto é usado para enumerar os pares chave/valor.

Exemplo

Código

// registry_read.cpp
// compile with: /clr
using namespace System;
using namespace Microsoft::Win32;

int main( )
{
   array<String^>^ key = Registry::CurrentUser->GetSubKeyNames( );

   Console::WriteLine("Subkeys within CurrentUser root key:");
   for (int i=0; i<key->Length; i++)
   {
      Console::WriteLine("   {0}", key[i]);
   }

   Console::WriteLine("Opening subkey 'Identities'...");
   RegistryKey^ rk = nullptr;
   rk = Registry::CurrentUser->OpenSubKey("Identities");
   if (rk==nullptr)
   {
      Console::WriteLine("Registry key not found - aborting");
      return -1;
   }

   Console::WriteLine("Key/value pairs within 'Identities' key:");
   array<String^>^ name = rk->GetValueNames( );
   for (int i=0; i<name->Length; i++)
   {
      String^ value = rk->GetValue(name[i])->ToString();
      Console::WriteLine("   {0} = {1}", name[i], value);
   }

   return 0;
}

Comentários

The Registry classe é meramente um contêiner para estático instâncias de RegistryKey. Cada instância representa um nó de raiz do registro.As instâncias são ClassesRoot, CurrentConfig, CurrentUser, LocalMachine, e Users.

Em adição à sendo estática, os objetos dentro de Registry classe são somente leitura. Além disso, ocorrências do RegistryKey classe que são criadas para acesso o Sumário de objetos do registro é somente leitura também. Para obter um exemplo de como substituir esse comportamento, consulte Como: Gravar dados no registro do Windows.

Há dois objetos adicionais no Registry classe: DynData e PerformanceData.Ambos são instâncias do RegistryKey classe. The DynData objeto contém informações de registro dinâmico, o que só são suportadas no Windows 98 e Windows Me. The PerformanceData objeto pode ser usado para acesso informações do contador de desempenho para aplicativos que usam o Windows Performance Monitoring sistema. The PerformanceData nó representa informações que não é realmente armazenadas no registro e, portanto, não podem ser visualizadas usando Regedit.exe.

Consulte também

Conceitos

Como: Gravar dados no registro do Windows

Outros recursos

Operações do Windows em C++

Guia de programação .NET