'Às vezes é necessário verificar o registro do computador remoto para determinar a existência de alguns itens de valor-chave ou modificá-los
'RegistryKey, Registry e RegistryHive no namespace Microsoft.Win32 em .NET são usados para operar o registro
'|______ ScanRemoteRegister ___________|
'| Coypright wgscd(c)2005 |
'|QQ:153964481 E-mail:[email protected] |
'| Blog: http://blog.csdn.net/wgsnet |
'|________________________________________|
Dim treeV como novo TreeView
Dim SubNode como novo TreeNode
Dim treeN como novo TreeNode
Função OpenRemoteRegister (ByVal RemoteBaseKey como string, ByVal ComputerName como string) como string
Dim subchave como Microsoft.Win32.RegistryKey
Dim k As Microsoft.Win32.RegistryKey = Microsoft.Win32.RegistryKey.OpenRemoteBaseKey(RemoteBaseKey, Net.Dns.GetHostByName(ComputerName).HostName)
treeV.Nodes.Add(Net.Dns.GetHostByName(ComputerName).HostName) 'Adiciona o nome do computador ao TreeView
árvoreV.Nodes.Add(k.Nome)
Dim é como string
For Each s In k.GetSubKeyNames 'Obtém o nome da subchave
árvoreN.Nodes.Add(s)
subchave = k.OpenSubKey(s)
OpenKeys(subkey) 'Abre subchaves/chaves
Próximo
árvoreV.Nodes.Add(árvoreN)
Função final
Sub OpenKeys (chave ByVal como Microsoft.Win32.RegistryKey)
'k.SubKeyCount' obtém o número de subchaves
Dim é como string
Dim SubKey como Microsoft.Win32.RegistryKey
árvoreN.Nodes.Add(Chave.Nome)
Se Key.GetSubKeyNames.Length > 0 Então
For Each s In Key.GetSubKeyNames 'Obtém o nome da subchave
árvoreN.Nodes.Add(s)
Tentar
SubKey = Key.OpenSubKey(s, False)
Me.Text = s
Se for como "*microsoft*" ou como "*wgscd*" Então 'Adicionar termos de pesquisaEntão' Adicionar termos de pesquisa
'ADICIONE SEU CÓDIGO....
Caixa(s) de mensagens
Terminar se
OpenKeys (Subchave)
Capturar ex como exceção
Terminar Tentar
Próximo
treeV.Nodes.Add(treeN) 'Adiciona a chave de registro ao TreeView como uma subchave
End If
Finalizar sub
Subcúpula()
OpenRemoteRegister(Microsoft.Win32.RegistryHive.CurrentUser, Net.Dns.GetHostByName("wgscd").HostName) 'Verifica o item CurrentUser
'"wgscd" é o nome do computador remoto que você deseja verificar. Observe que a premissa é que você tenha as permissões correspondentes para "computador remoto"!
'OpenRemoteRegister(Microsoft.Win32.RegistryHive.LocalMachine, Net.Dns.GetHostByName("wgscd").HostName)'Verificar entradas do LocalMachine
' OpenRemoteRegister(Microsoft.Win32.RegistryHive.Users, Net.Dns.GetHostByName("wgscd").HostName) 'Verificar itens de usuários
' OpenRemoteRegister(Microsoft.Win32.RegistryHive.ClassesRoot, Net.Dns.GetHostByName("wgscd").HostName) 'Verificar itens ClassesRoot
'OpenRemoteRegister(Microsoft.Win32.RegistryHive.CurrentConfig, Net.Dns.GetHostByName("wgscd").HostName) 'Verificar itens CurrentConfig
'OpenRemoteRegister(Microsoft.Win32.RegistryHive.DynData, Net.Dns.GetHostByName("wgscd").HostName) 'Verificar itens DynData
Finalizar sub
Sub ScanRemoteRegistry()
Dim Mythread como novo Threading.Thread (AddressOf dome)
Mythread.Start()
Finalizar sub
Sub AddTreeViewToForm() 'Adiciona TreeView ao Formss
Com árvoreV
.Largura = 400
.Altura = 500
Terminar com
Me.Controls.Add(árvoreV)
Finalizar subchamada
:
ScanRemoteRegistry()