Partilhar via


Como: ler dados do registro do Windows (C + + / CLI)

O seguinte exemplo de código usa o CurrentUser chave para ler dados do 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 pela RegistryKey classe.Finalmente, o novo RegistryKey o objeto é usado para enumerar os pares chave/valor.

Exemplo

df4afx57.collapse_all(pt-br,VS.110).gifCó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

O Registry classe é meramente um contêiner para instâncias estáticos de RegistryKey.Cada instância representa um nó de raiz do registro.The instances are ClassesRoot, CurrentConfig, CurrentUser, LocalMachine, and Users.

Além para sendo estático, os objetos dentro do Registry classe são somente leitura.Além disso, instâncias do RegistryKey objetos de classe são criados para acessar o conteúdo do registro também são somente leitura.Para obter um exemplo de como substituir esse comportamento, consulte Como: gravar dados no registro do Windows (C + + / CLI).

Há dois objetos adicionais na Registry classe: DynData e PerformanceData.Ambos são instâncias de RegistryKey classe.O DynData objeto contém informações de registro dinâmico, que só são suportadas no Windows 98 e Windows Me.O PerformanceData objeto pode ser usado para acessar informações de contador de desempenho para aplicativos que usam o sistema de monitoramento de desempenho do Windows.O 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 (C + + / CLI)

Outros recursos

Operações do Windows (C + + / CLI)

.NET programação no Visual C++