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

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
Este artigo foi arquivado. É oferecido "como está" e não será mais atualizado.
Para uma versão deste artigo do Microsoft Visual Basic 6.0, consulte 145679.

NESTA TAREFA

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.

back to the top

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.DiagnosticsImports 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 TryEnd SubSub 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 TryEnd 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 .

back to the top

REFERÊNCIAS

Para obter mais informações sobre classes e namespaces usados neste artigo, visite os seguintes sites: back to the top

Propriedades

ID do Artigo: 316151 - Última Revisão: 02/24/2014 12:55:01 - Revisão: 3.3

Microsoft Visual Basic 2005, Microsoft Visual Basic .NET 2003 Standard Edition, Microsoft Visual Basic .NET 2002 Standard Edition

  • kbnosurvey kbarchive kbmt kbvs2005swept kbvs2005applies kbhowtomaster KB316151 KbMtpt
Comentários
ERROR: at System.Diagnostics.Process.Kill() at Microsoft.Support.SEOInfrastructureService.PhantomJS.PhantomJSRunner.WaitForExit(Process process, Int32 waitTime, StringBuilder dataBuilder, Boolean isTotalProcessTimeout)