Como escrever seu próprio registro acessando funções usando as bibliotecas de classe base no Visual Basic .NET ou no Visual Basic 2005

Traduções deste artigo Traduções deste artigo
ID do artigo: 316151 - Exibir os produtos aos quais esse artigo se aplica.
Este artigo foi arquivado. É oferecido "como está" e não será mais atualizado.
Expandir tudo | Recolher tudo

Neste artigo

Sumário

Este artigo demonstra como usar o Visual Basic. NET ou Visual Basic 2005 para acessar o registro. Para fazer isso, você deve escrever seu próprio registro acessando funções usando as bibliotecas de classe base.

Limitações do GetSetting e SaveSetting funções

Visual Basic .NET fornece as funções GetSetting e SaveSetting para acessar o registro. Essas funções têm as seguintes limitações:
  • Você pode acessar apenas as chaves do registro em HKEY_CURRENT_USER\Software\VB and VBA Program Settings.
  • Você deve estar conectado ao sistema, porque você executar a modificação sob a chave de registro HKEY_CURRENT_USER . Essa chave não está ativa até que o usuário está conectado ao sistema.
Observação : se a configuração da chave não pode ser salvo por qualquer motivo, uma mensagem de erro aparece.



Usando o registro e RegistryKey Classes

Para acessar o registro sem restrições de GetSetting e SaveSetting funções, use as classes de registro e RegistryKey no namespace Microsoft.Win32 . A classe Registry fornece as chaves do registro base para acesso valores e subchaves no registro. Ela possui campos (compartilhados) estáticos, como CurrentUser , para representar a chave raiz.

A classe RegistryKey representa um nó de nível de chave no registro do Windows. Essa classe é um encapsulamento de registro que permite leitura e gravação permissões para o registro através dos métodos GetValue e SetValue da classe RegistryKey .

Para criar um projeto console ler e gravar no registro usando o registro e classes RegistryKey , execute essas etapas:
  1. Abra o Microsoft Visual Studio .NET ou Microsoft Visual Studio 2005.
  2. No menu arquivo , clique em New Project .
  3. Selecione Projetos do Visual Basic em TreeView à esquerda e, em seguida, selecione Aplicativo de console em ListView à direita.

    Observação No Visual Studio 2005, selecione Visual Basic nos tipos de projeto à esquerda e selecione Console Application nos modelos à direita.
  4. Importar os namespaces a seguir para o projeto:
    Imports System.Diagnostics
    Imports Microsoft.Win32
    
    						
  5. Adicione o seguinte código para o Module1:
    Sub WriteRegistry(ByVal ParentKey As RegistryKey, ByVal SubKey As String, _
        ByVal ValueName As String, ByVal Value As Object)
    
        Dim Key As RegistryKey
    
        Try
            'Open the registry key.
            Key = ParentKey.OpenSubKey(SubKey, True)
            If Key Is Nothing Then 'if the key doesn't exist.
                Key = ParentKey.CreateSubKey(SubKey)
            End If
    
            'Set the value.
            Key.SetValue(ValueName, Value)
    
            Console.WriteLine("Value:{0} for {1} is successfully written.", Value, ValueName)
        Catch e As Exception
            Console.WriteLine("Error occurs in WriteRegistry" & e.Message)
        End Try
    End Sub
    
    Sub ReadRegistry(ByVal ParentKey As RegistryKey, ByVal SubKey As String, _
        ByVal ValueName As String, ByRef Value As Object)
    
        Dim Key As RegistryKey
    
        Try
            'Open the registry key.
            Key = ParentKey.OpenSubKey(SubKey, True)
            If Key Is Nothing Then 'if the key doesn't exist
                Throw New Exception("The registry key doesn't exist")
            End If
    
            'Get the value.
            Value = Key.GetValue(ValueName)
    
            Console.WriteLine("Value:{0} for {1} is successfully retrieved.", Value, ValueName)
        Catch e As Exception
            Console.WriteLine("Error occurs in ReadRegistry" & e.Message)
        End Try
    End Sub
    
    						
  6. Copie e cole o código a seguir para substituir o Sub Main que é gerado pelo Visual Basic .NET ou Visual Basic 2005:
    Sub Main()
        WriteRegistry(Registry.CurrentUser, "Software\MySoftware", "Count", 123)
    
        Dim Value As Object
        ReadRegistry(Registry.CurrentUser, "Software\MySoftware", "Count", Value)
    
        Console.ReadLine()
    End Sub
    						
  7. Pressione F5 para executar o aplicativo.
Observação : esse procedimento cria uma chave de Registro chamada MeuSoftware sob a subchave HKEY_CURRENT_USER\Software . E ele cria um valor DWORD chamado contar com o valor 123 sob a chave MeuSoftware .

REFERÊNCIAS

Para obter mais informações sobre classes e namespaces usados neste artigo, visite os seguintes sites:
RegistryKey Class
Registry Class
Microsoft.Win32 namespace

Propriedades

ID do artigo: 316151 - Última revisão: segunda-feira, 24 de fevereiro de 2014 - Revisão: 3.3
A informação contida neste artigo aplica-se a:
  • Microsoft Visual Basic 2005
  • Microsoft Visual Basic .NET 2003 Standard Edition
  • Microsoft Visual Basic .NET 2002 Standard Edition
Palavras-chave: 
kbnosurvey kbarchive kbmt kbvs2005swept kbvs2005applies kbhowtomaster KB316151 KbMtpt
Tradução automática
IMPORTANTE: Este artigo foi traduzido por um sistema de tradução automática (também designado por Machine Translation ou MT), não tendo sido portanto traduzido ou revisto por pessoas. A Microsoft possui artigos traduzidos por aplicações (MT) e artigos traduzidos por tradutores profissionais, com o objetivo de oferecer em português a totalidade dos artigos existentes na base de dados de suporte. No entanto, a tradução automática não é sempre perfeita, podendo conter erros de vocabulário, sintaxe ou gramática. A Microsoft não é responsável por incoerências, erros ou prejuízos ocorridos em decorrência da utilização dos artigos MT por parte dos nossos clientes. A Microsoft realiza atualizações freqüentes ao software de tradução automática (MT). Obrigado.
Clique aqui para ver a versão em Inglês deste artigo: 316151

Contact us for more help

Contact us for more help
Connect with Answer Desk for expert help.
Get more support from smallbusiness.support.microsoft.com