Como: criar uma chave do registro e defina seu valor em Visual Basic
O método CreateSubKey do objeto My.Computer.Registry pode ser usado para criar uma chave do Registro.
Procedimento
Para criar uma chave do Registro
Use o método CreateSubKey, especificando em que seção colocar a chave, bem como o nome da chave.O parâmetro Subkey é não diferencia maiúsculas de minúsculas.Este exemplo cria a chave de registro MyTestKey em HKEY_CURRENT_USER.
My.Computer.Registry.CurrentUser.CreateSubKey("MyTestKey")
Para criar uma chave do Registro e definir um valor dentro dela
Use o método CreateSubkey, especificando em que seção colocar a chave, bem como o nome da chave.Este exemplo cria a chave de registro MyTestKey em HKEY_CURRENT_USER.
My.Computer.Registry.CurrentUser.CreateSubKey("MyTestKey")
Defina o valor com o método SetValue.Este exemplo define a valor da cadeia de caracteres. "MyTestKeyValue"para"Este é um valor de teste".
My.Computer.Registry.SetValue("HKEY_CURRENT_USER\MyTestKey", "MyTestKeyValue", "This is a test value.")
Exemplo
Este exemplo cria o chave do Registro MyTestKey em HKEY_CURRENT_USER e, em seguida, define o valor da cadeia de caracteres MyTestKeyValue para This is a test value.
My.Computer.Registry.CurrentUser.CreateSubKey("MyTestKey")
' Change MyTestKeyValue to This is a test value.
My.Computer.Registry.SetValue("HKEY_CURRENT_USER\MyTestKey",
"MyTestKeyValue", "This is a test value.")
Programação robusta
Examine a estrutura do Registro para localizar um local adequado para a sua chave.Por exemplo, você pode desejar abrir a chave HKEY_CURRENT_USER\\Software do usuário atual, e criar uma chave com nome da sua empresa.Em seguida, adicione os valores do registro a chave da sua empresa.
Quando se esta lendo o registro para um aplicativo da Web, o usuário atual depende da autenticação e representação implementada no aplicativo da Web.
É mais seguro gravar dados na pasta de usuário (CurrentUser) em vez de no computador local (LocalMachine).
Quando você cria um valor do registro, é preciso decidir o que fazer se esse valor já existe.Outro processo, talvez um arquivo mal-intencionado, talvez já criou o valor e faz acesso a ele.Quando você coloca o valor dos dados no valor do registro, os dados estão disponíveis para o outro processo.Para evitar isso, use o método GetValue.Ele retorna Nothing se a chave ainda não existir.
Ele é não seguro para armazenamento de segredos, como senhas, ele registra como texto simples, mesmo se a chave do registro estiver protegido por ACLs) (listas de controle de acesso.
As seguintes condições podem causar uma exceção:
O nome da chave é Nothing (ArgumentNullException).
O usuário não tem permissões para criar chaves do Registro (SecurityException).
O nome da chave excede o limite de 255 caracteres (ArgumentException).
A chave é fechada (IOException).
A chave do Registro é somente leitura (UnauthorizedAccessException).
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..
Consulte também
Referência
Conceitos
Noções básicas sobre segurança de acesso de código.