Como: ler um valor de chave do registro Visual Basic
O método GetValue do objeto My.Computer.Registry pode ser usado para gravar valores no Registro do Windows.
Se não existir, a chave, "Software\MyApp" no exemplo a seguir, uma exceção é lançada.Se a ValueName, "Nome" no exemplo a seguir, não existe, Nothing é retornado.
O GetValue método também pode ser usado para determinar se um determinado valor existe em uma chave do Registro específica.
Quando o código lê o registro de um aplicativo da Web, o usuário atual é determinado da autenticação e representação implementada no aplicativo da Web.
Para ler um valor de uma Chave do Registro
Use o método GetValue, especificando o caminho e o nome para ler um valor da chave do registro.O exemplo a seguir lê o valor Name do HKEY_CURRENT_USER\Software\MyApp e o exibe em uma caixa de mensagem.
Dim readValue = My.Computer.Registry.GetValue( "HKEY_CURRENT_USER\Software\MyApp", "Name", Nothing) MsgBox("The value is " & readValue)
Este exemplo de código também está disponível como um trecho de código IntelliSense.No selecionador de trechos de código, ele está localizado em Windows Operating System > Registry.Para mais informações, consulte Trechos de código.
Para determinar se um valor existe em uma Chave do Registro
Use o método GetValue para recuperar o valor.O código a seguir verifica se o valor existir e retorna uma mensagem se não existir.
If My.Computer.Registry.GetValue("HKEY_LOCAL_MACHINE\TestApp", "TestValue", Nothing) Is Nothing Then MsgBox("Value does not exist.") End If
Programação robusta
O registro possui chaves de alto nível, ou raiz, que são usadas para armazenar dados.Por exemplo, a chave raiz HKEY_LOCAL_MACHINE é usada para armazenar configurações a nível de máquina usadas por todos os usuários, enquanto HKEY_CURRENT_USER é usada para armazenar dados específicos para um usuário individual
As seguintes condições podem causar uma exceção:
O nome da chave é Nothing (ArgumentNullException).
O usuário não tem permissões para ler das chaves do Registro (SecurityException).
O nome da chave excede o limite de 255 caracteres (ArgumentException).
Segurança
Para executar esse processo, seu assembly requer um nível de privilégio concedido pela classe RegistryPermission.Se você estiver executando em um contexto parcialmente confiável, o código pode lançar uma exceção devido a privilégios insuficientes.Da mesma forma, o usuário deve ter as ACLs corretas para criar ou gravar as configurações.Por exemplo, um aplicativo local que possui a permissão de segurança de acesso ao código talvez não tenha permissão de sistema operacional.Para mais informações, consulte Noções básicas sobre segurança de acesso de código..