Utilizando o Registro do Windows para gravar informações com C#(csharp).Net

Você precisa estar logado para dar um feedback. Clique aqui para efetuar o login
Para efetuar o download você precisa estar logado. Clique aqui para efetuar o login
Confirmar voto
0
 (0)  (0)

Quando precisamos gravar algum tipo de informação onde o banco de dados não pode ser utilizado, utilizamos outras formas, como um arquivo “.txt”...

Utilizando o Registro do Windows para gravar informações com C#.Net

 

Quando precisamos gravar algum tipo de informação onde o banco de dados não pode ser utilizado, utilizamos outras formas, como um arquivo “.txt”, “.ini” entre outros. Podemos também, dependendo da informação que será guardada, utilizar o próprio registro do Windows.

 

Um exemplo para essa gravação e o caminho de um banco de dados ou uma string de conexão criptografada.

 

Nesse artigo irei demonstrar como podemos utilizar o registro do Windows para gravar o caminho de um arquivo “.txt”. Mas você pode escolher qualquer outro tipo de arquivo.

 

A chave de Registro que iremos utilizar será:

HKEY_LOCAL_MACHINE\Software

 

Nela podemos encontrar informações de todos os programas instalados no computador.

 

Iniciando a construção do Programa

Estarei utilizando o Visual Studio 2005, mas você pode utilizar qualquer outro aplicativo para auxiliar no desenvolvimento.

 

Começaremos criando um projeto. No Visual Studio, clique em File/New/Project e escolha Windows Application. Escolha o nome para sua aplicação e o caminho que será salvo conforme Figura 1.

 

wourwfig01.jpg 

Figura 1: Criando o Projeto.

 

Feito isso, crie então um formulário conforme imagem abaixo:

 

wourwfig02.jpg 

Figura 2: Formulário.

 

Componentes utilizados:

GroupBox:     gb_gravaCaminho

Label:           lb_caminho

TextBox:       tbx_caminho

Button:         bt_abrir

Button:         bt_gravarCaminho

 

GroupBox:     gb_leCaminho

Label:           lb_caminhoGravado

TextBox::      tbx_caminhoGravado

 

Iremos utilizar também um outro componente, o OpenFileDialog para poder pegar o caminho do arquivo (para maiores informações sobre esse componente, acesse http://msdn2.microsoft.com/pt-br/library/system.windows.forms.openfiledialog(vs.80).aspx). Para usar esse componente no projeto, na barra Toolbox de dois clique em cima dele:

 

wourwfig03.jpg 

Figura 3: ToolBox.

 

Agora vamos partir para a ação dos botões.

Dê dois cliques no botão Abrir e insira o código abaixo:

 

 /// <summary>

 /// Abri a janela para escolher o caminho do

 /// banco de dados

 /// </summary>

 private void bt_abrir_Click(object sender, EventArgs e)

 {

    // coloca o título na janela

    this.openFileDialog1.Title = "Escolha o banco de dados...";

    // informa qual será o diretório inicial

    this.openFileDialog1.InitialDirectory = "c:\\";

    // configura o filtro para tipo de arquivo

    this.openFileDialog1.Filter = "txt files (*.txt)|*.txt";

    // abre a janela para escolher o banco de dados

    this.openFileDialog1.ShowDialog();

 

    // pega o caminho escolhido

    this.tbx_caminho.Text = this.openFileDialog1.FileName;

 }

 

Feito isso, você já consegue selecionar o arquivo e pegar seu caminho.

 

Agora vamos para a parte principal, gravar essa informação no registro do Windows.

 

Vamos utilizar o namespace Microsoft.Win3, então acrescente ele ao programa:

 

using Microsoft.Win32;

 

De dois clique no botão Gravar Caminho e o insira o código abaixo:

 

try

{

   // cria uma referêcnia para a chave de registro Software

   RegistryKey rk = Registry.LocalMachine.OpenSubKey("Software",  true);

   // cria um Subchave como o nome GravaRegistro

   rk = rk.CreateSubKey("GravaRegistro");

   // grava o caminho na SubChave GravaRegistro

   rk.SetValue("CAMINHO_TXT", tbx_caminho.Text);

   // fecha a Chave de Restistro registro

   rk.Close();

   MessageBox.Show("Caminho gravado com Sucesso!");

 

}

catch (Exception erro)

{

   MessageBox.Show("Erro no gravação do Registro: " + erro.Message);

}

 

Pronto, agora já temos nosso caminho gravado do Registro do Windows.

 

Para verificar o caminho gravado, basta acessar o Registro do Windows com o comando regedit, e verificar que na chave de registro HKEY_LOCAL_MACHINE\Software terá um basta com o nome GravaRegistro e dentro dela um arquivo com o nome CAMINHO_TXT onde tera o caminho que você escolheu.

 

Agora precisamos realizar a leitura desse caminho gravado.

De dois clique no botão Caminho Gravado e insira o codigo abaixo:

 

try

{

   // cria uma referêcnia para a chave de registro Software

   RegistryKey rk = Registry.LocalMachine.OpenSubKey("Software", true);

   // realiza a leitura do registro

   tbx_caminhoGravado.Text =

     rk.OpenSubKey("GravaRegistro", true).GetValue("CAMINHO_TXT").ToString();

}

catch (Exception erro)

{

   MessageBox.Show("Erro na leitura do Registro: " + erro.Message);

}

 

Finalizada então a codificação, execute o programa e realize a leitura do registro gravado.

 

Conclusão

Podemos ver que exitem outras formas que auxiliam nas gravações de  informações, não só utilizando os arquivos .txt ou .ini. E que para utilizar o registro do Windows é muito simples, bastando algumas linhas de programação e você não irá precisar usar mais arquivos de texto para quardar informações como caminho do banco de dados.

 

Mas utilize com cuidado, pois se alterar o registro de ulgum outro programa, poderá tem sérios problemas.

 

Referências

http://www.microsoft.com/brasil/security/guidance/topics/devsec/secmod25.mspx

http://www.infowester.com/tutregistrowin.php

http://msdn2.microsoft.com/pt-br/library/system.windows.forms.openfiledialog(vs.80).aspx)

 
Você precisa estar logado para dar um feedback. Clique aqui para efetuar o login
Receba nossas novidades
Ficou com alguma dúvida?