Desenvolvimento - C#
Utilizando o Registro do Windows para gravar informações com C#.Net
Nesse artigo será demonstrado como podemos utilizar o registro do Windows para gravar o caminho de um arquivo “.txt”.
por Wilker Silva de OliveiraNesse 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.
Criando o Projeto
Feito isso, crie então um formulário conforme imagem abaixo:
Formulário
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:
ToolBox
Agora vamos partir para a ação dos botões.
De dois clique no botão Abrir e insira o código abaixo:
/// /// Abri a janela para escolher o caminho do /// banco de dados /// 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.
Utilizaremos 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á uma pasta 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 algum 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).