Вы находитесь на странице: 1из 5

25/7/2011

7.974.047 membros e crescendo! (37856 online)

Trabalhando com o Registro do Wind


E-mail Senha Entrar Juntar Lembre-se de mim? Esqueceu a senha?

Casa

Artigos

Perguntas & Respostas

Zonas de aprendizagem

Caractersticas

Help!

O Salo

Search

Idiomas VB.NET Geral

Trabalhando com o Registro do Windows usando VB.NET


Por Manoj G | 28 de mar o de 2003
. NET1.0 Win2K WinXP VB Dev Intermediate

Licena Postado primeira Visualizaes Downloads Bookmarked

28 de maro de 2003 346240 832 113 vezes

Veja tambm
Mais como esta Mais deste autor

Este artigo fala sobre c omo trabalhar com o registro do Windows usando VB.NET.
Artigo Procurar Cdigo Revises
4,60 ( 64 votos ) 38

Links Patrocinados
Vlukenizer Scheduler, organizador planejador semana,. Interface de Fcil legal. Dom Registro, ... www.vluke.ca TierDeveloper (Software Livre) TierDeveloper um objeto de mapeamento relacional (O / R mapeamento) cdigo ... www.alachisoft.com

Baixar arquivos de origem - 20 Kb

Introduo
Os desenvolvedores tm sempre enc ontrado o registro do Windows para ser um loc al adequado para armazenar informa es de aplicativos espec ficos e c onfigura es. Tradicionalmente, o registro tem sido usado para armazenar informa es de configura o, como seqnc ias de c onexo do banc o de dados, perfis etc A popularidade do registro pode ser atribudo ao fato de que o ac esso do registro mais rpido que o acesso ao arquivo e tambm porque um system-wide muito segura de dados repositrio. Alm disso, os arquivos de c onfigura o, como arquivos INI tinha suas prprias limita es. Neste artigo vou discutir algumas no es bsic as de registro do Windows e ento explic ar como operaes bsic as de registro pode ser feito em VB.NET

Anncios

Noes bsicas de Windows Registry


O registro organizado c omo uma estrutura hierrquica. Ele tem basicamente c inc o predefinidos c haves em que todos os dados so adicionados ou ac essado. Essas c haves no podem ser renomeados ou exc ludos. Dada a seguir uma tabela contendo uma breve descrio sobre eles. Subrvore Definio Este contm informa es de c onfigurao de um usurio que est c onec tado no momento ao system.That , os dados de perfil de usurio armazenado aqui Contm todos os perfis de usurio no c omputador. HKEY_CURRENT_USER na verdade um pseudnimo para uma c have na rvore de sub HKEY_USERS. Contm informa es de c onfigurao especficas para o c omputador, independentemente de qual usurio est c onec tado. Contm dados que tipos de arquivos assoc iados c om os programas e dados de configura o de objetos COM. Contm informa es sobre o perfil de hardware usado pelo c omputador loc al na inic ializa o do sistema.

The Insider Dirio

HKEY_CURRENT_USER

HKEY_USERS

HKEY_LOCAL_MACHINE

HKEY_CLASSES_ROOT

HKEY_CURRENT_CONFIG

Cada tec la tem vrias subchaves e pode ter um valor. Dada a seguir um instantneo do registro c omo pode ser visto atravs do editor de Registro (Regedit.exe), que vem junto com windows.

codeproject.com//registry_with_vb.

1/5

25/7/2011

Trabalhando com o Registro do Wind

Fig. 1: Estrutura do Registro No instantneo acima, cada n em Meu c omputador uma c have. Por exemplo, HKEY_CURRENT_CONFIG uma c have que tem duas subc haves: Software e Sistema. Fontes uma subchave sob software e tem valores. Cada Valor contm um nome e seus dados associados. Cada valor tem de ser associado a um tipo de dados partic ular. Dada a seguir uma tabela contendo os tipos de dados importantes Tipos de dados REG_SZ Usado para Uma seqnc ia de texto de c omprimento fixo. Boolean ( verdadeiro ou falso ) os valores e outros valores de texto c urtas c ostumam ter este tipo de dados. Uma seqnc ia de texto de c omprimento varivel, que pode incluir variveis que so resolvidas quando um aplic ativo ou servi o usa os dados. Dados representados por um nmero que de 4 bytes (32 bits) de comprimento. Mltiplas cadeias de texto formatado c omo uma matriz de strings terminadas, e terminado por dois c arac teres nulos.

REG_EXPAND_SZ

REG_DWORD

REG_MULTI_SZ

Voltando figura 1, existe um valor c hamado LogPixels que tem os dados do tipo REG_DWORD e valor 96.

Trabalhando com Microsoft.Win32 Namespace


. As opera es sobre o registro no NET pode ser feito usando duas c lasses do Microsoft.Win32 Espa o nominal : Registro de c lasse ea RegistryKey c lass.The Registro c lasse fornec e base de chaves do registro c omo pblic a compartilhada (somente leitura) mtodos: ClassesRoot Este c ampo l o registro do Windows base de c have HKEY_CLASSES_ROOT. L o registro do Windows HKEY_CURRENT_CONFIG chave base. L o registro do Windows base de HKEY_CURRENT_USER chave Este c ampo l o registro do Windows base de c have HKEY_LOCAL_MACHINE. Este c ampo l o registro do Windows HKEY_USERS c have base.

CurrentConfig

CurrentUser

LocalMachine

Usurios

Cada um dos mtodos pblic os mostrado acima fornec e um objeto do RegistryKey c lasse cujos mtodos podem ser usados para acessar subchaves sob as tec las c orrespondentes. Os membros importantes do RegistryKey c lasse so alistados abaixo
Propriedades pblicas

Nome SubKeyCount

Rec upera o nome da c have. Rec upera a contagem de subc haves no nvel base, para a c have atual.

codeproject.com//registry_with_vb.

2/5

25/7/2011
ValueCount

Trabalhando com o Registro do Wind


Rec upera a contagem de valores na c have.

Mtodos pblicos

Fechar

Fec ha a chave e libera-lo para o disc o se o c ontedo foi modific ado. Cria uma nova subchave ou abre uma subc have existente. Exclui a subchave espec ific ada. Exclui uma subc have e qualquer subc haves filho recursivamente. Exclui o valor espec ificado a partir desta c have. Escreve todos os atributos da c have do Registro especificada aberto para o registro. Rec upera uma matriz de strings que c ontm todos os nomes da subc have. Rec upera o valor espec ific ado. Rec upera uma matriz de strings que c ontm todos os nomes de valor associado c om essa c have. Rec upera uma subc have espec ific ada, com o ac esso de esc rita, c onforme espec ific ado. Define o valor espec ific ado.

CreateSubKey

DeleteSubKey DeleteSubKeyTree

DeleteValue

Resplendor

GetSubKeyNames

GetValue GetValueNames

OpenSubKey

SetValue

VB.NET e Registro
Vou agora para o aspecto prtico e ver c omo o registro pode ser manipulado usando c digo VB.NET. Considerei trs operaes bsic as: Criando uma subchave, agregando valores e excluir uma subchave
Criando um Subkey
C olapso

Dim RegKey Como RegistryKey RegKey = Registry.LocalMachine.OpenSubKey ( " SOFTWARE " , True) regKey.CreateSubKey ( " MyApp " ) regKey.Close ()

No trec ho de c digo mostrado acima, eu c riei uma subc have HKLM \ Software chamado MyApp. Note-se que eu passei verdadeiro como o segundo parmetro para o mtodo OpenSubKey. Este valor booleano para indicar se a c have gravvel ou no. Por exemplo, voc pode c onfigur-lo para false se voc est apenas a leitura de dados do Registro.
Leitura e escrita de valores
C olapso

RegKey Dim Dim RegistryKey ver como Decimal RegKey = Registry.LocalMachine.OpenSubKey ( " Software \ MyApp " , True) regKey.SetValue ( " AppName " , " MyRegApp " ) ver = regKey.GetValue ( " Version " , 0 . 0 ) Se ver < 1 . 1 Ento regKey.SetValue ( " Version " , uma . 1 ) End If regKey.Close ()

No trec ho de c digo mostrado acima, eu estou criando dois AppName valores e Version. Tambm estou definindo os valores para MyRegApp e 1,1, respectivamente. Nota: Se voc lembrar que nas se es anteriores que eu tinha mencionado sobre tipos de dados para valores de registro c omo REG_SZ. Mas em nenhum lugar no c digo acima menc ionamos sobre o tipo de dados. Isto porque. NET interpreta o prprio tipo com base no que passado como valor e no precisamos pass-la explic itamente.
Excluindo uma subchave
C olapso

Dim RegKey Como RegistryKey RegKey = Registry.LocalMachine.OpenSubKey ( " Software " , True) regKey.DeleteSubKey ( " MyApp " , True) regKey.Close ()

No trec ho de c digo acima, estou exc luir a subc have MyApp e todos os seus valores. Note que na chamada para DeleteSubkey, eu passei um segundo argumento booleano de True. Isto signific a que uma

codeproject.com//registry_with_vb.

3/5

25/7/2011

Trabalhando com o Registro do Wind

exc e o lan ada quando a c have a ser excluda no enc ontrado


Importante

A ler e escrever para o registro voc precisa de permisses de segurana. Se voc no tiver permisses suficientes, ento voc vai ter um Sec urityException quando voc tenta acessar ou criar chaves. O registro uma parte muito sensvel do sistema operacional Windows. Portanto, imperativo que voc faa um bac kup do registro antes de tentar brincar c om ele. Um registro corrompido pode tornar o sistema operacional no funcional.

Concluso
Este artigo espero que tornou mais fcil para inic iantes para entender o registro e fazer opera es simples c om ele. Muitas opera es so possveis com as c lasses de Registro e RegistryKey mas por uma questo de simplic idade, omiti todos aqueles aqui.

Licena
Este artigo no tem lic ena explcita a ela ligada, mas pode conter termos de uso no texto do artigo ou o download de arquivos prprios. Em c aso de dvida entre em contato c om o autor atravs do frum de disc usso abaixo. A lista de autores pode usar lic en as podem ser encontrados aqui

Sobre o Autor
Manoj G Eu sou um desenvolvedor de software e tem trabalhado em tec nologias Mic rosoft para c erca de cinc o anos. Eu sempre fui fasc inado por tecnologias da Mic rosoft e c om o advento do. NET, este fasc nio atingiu novas alturas. Eu tomo muito interesse de ler artigos tc nicos e tambm gosta de escrever-los. Eu realmente gostaria de ser c hamado de um junkie. NET e c ertamente ir tentar viver de acordo c om esse nome eu sou . MVP NET e tambm c ompletou MCAD, MCSD (VS 6), MCDBA (SQL Server 2000), MCSA (Win 2K) e MCTS (Distributed Apps) c ertfications.

Web Developer ndia Membro

Top artigo

Inscreva-se para votar neste artigo

Comentrios e discusses
Voc deve Entrar para usar esta placa da mensagem. ( seguro sign-in ) FAQ Perfil popups nvel de rudo
Mdio

Pesquisa Layout Normal Por pgina 10 Atualizar

Refrescar O meu voto de 5 Muito obrigado. Tempo chave de registro Uma boa Alterando a Aparncia do Desktop Gerar problema enquanto plz help me Sensibilidade do mouse escrevendo para Registro Leia Valor & Nome do tipo Binrio Membro 3948170 Schudi snehalpatil jeal4real Gomda eg_Anubhava agrawal nilesh

Primeiro Anterior Prxima 03:00 30 de maio '11 01:50 30 de maro '11 01:09 22 mar '11 02:19 20 de julho '10 08:34 16 de abril '09 21:54 05 de fevereiro '09 22:38 19 de outubro '08

needmoney973@yahoo.com 12:05 20 de junho '08 Prajakta joshi sonia.sardana 01:13 18 de junho '08 04:36 27 de maio '08 1 2 3 4 Seguinte Rant Administrao

ltima Visita: 31 de dezembro 19:00 '99 ltima Atualizao: 24 de julho 18:18 '11 Geral Notcias Sugesto Pergunta Bug Resposta Joke

Use C trl + Esquerda / Direita para alternar mensagens, C trl + Up / Down para mudar tpicos, C trl + Shift + Esquerda / Direita para mudar as pginas.

codeproject.com//registry_with_vb.

4/5

25/7/2011
P ermalink | A nunc ie | P rivac idade | C elular | Web2 3 | 2 .3 .1 1 0 7 2 4 .2

Trabalhando com o Registro do Wind


L ayout: fixo | fluido A rtigo C opyright 2 0 0 3 por M anoj G T udo o res to C opyright C odeP rojec t , 1 9 9 9 - 2 0 1 1 T ermos de U s o

codeproject.com//registry_with_vb.

5/5

Вам также может понравиться