'A veces es necesario escanear el registro de la computadora remota para determinar la existencia de algunos elementos clave-valor o modificarlos.
'RegistryKey, Registry y RegistryHive bajo el espacio de nombres Microsoft.Win32 en .NET se utilizan para operar el registro
'|______ ScanRemoteRegister ___________|
'|Coypright wgscd (c)2005 |
'| QQ:153964481 Correo electrónico:[email protected] |
'|Blog:http://blog.csdn.net/wgsnet |
'|________________________________________|
Dim treeV como nueva vista de árbol
Atenuar el subnodo como nuevo nodo de árbol
Árbol tenueN como nuevo nodo de árbol
Función OpenRemoteRegister (ByVal RemoteBaseKey como cadena, ByVal ComputerName como cadena) Como cadena
Subclave tenue como Microsoft.Win32.RegistryKey
Dim k Como Microsoft.Win32.RegistryKey = Microsoft.Win32.RegistryKey.OpenRemoteBaseKey(RemoteBaseKey, Net.Dns.GetHostByName(ComputerName).HostName)
treeV.Nodes.Add(Net.Dns.GetHostByName(ComputerName).HostName) 'Agrega el nombre de la computadora a TreeView
árbolV.Nodos.Agregar(k.Nombre)
Atenuar como cuerda
Para cada s en k.GetSubKeyNames 'Obtiene el nombre de la subclave
árbolN.Nodos.Añadir(s)
subclave = k.OpenSubKey(s)
OpenKeys(subclave) 'Abrir subclaves/claves
Próximo
árbolV.Nodos.Agregar(árbolN)
Función final
Sub OpenKeys (clave ByVal como Microsoft.Win32.RegistryKey)
'k.SubKeyCount' obtiene el número de subclaves
Atenuar como cuerda
Subclave atenuada como Microsoft.Win32.RegistryKey
árbolN.Nodos.Agregar(Clave.Nombre)
Si Key.GetSubKeyNames.Length > 0 Entonces
Para cada s In Key.GetSubKeyNames 'Obtiene el nombre de la subclave
árbolN.Nodos.Añadir(s)
Intentar
SubClave = Clave.OpenSubKey(s, False)
Yo.Texto = s
Si es como "*microsoft*" o como "*wgscd*" Entonces 'Agregar términos de búsquedaLuego 'Agregar términos de búsqueda
'AÑADE TU CÓDIGO....
Cuadro(s) de mensajes
Terminar si
OpenKeys (subclave)
Atrapar a ex como excepción
Finalizar intento
Siguiente
treeV.Nodes.Add(treeN) 'Agrega la clave de registro a TreeView como una subclave
End If
Subtítulo final
Subdomo()
OpenRemoteRegister(Microsoft.Win32.RegistryHive.CurrentUser, Net.Dns.GetHostByName("wgscd").HostName) 'Escanear el elemento CurrentUser
'"wgscd" es el nombre de la computadora remota que desea escanear. Tenga en cuenta que la premisa es que tiene los permisos correspondientes para "computadora remota".
'OpenRemoteRegister(Microsoft.Win32.RegistryHive.LocalMachine, Net.Dns.GetHostByName("wgscd").HostName)'Escanear entradas de LocalMachine
' OpenRemoteRegister(Microsoft.Win32.RegistryHive.Users, Net.Dns.GetHostByName("wgscd").HostName) 'Escanear elementos de usuarios
' OpenRemoteRegister(Microsoft.Win32.RegistryHive.ClassesRoot, Net.Dns.GetHostByName("wgscd").HostName) 'Escanear elementos ClassesRoot
'OpenRemoteRegister(Microsoft.Win32.RegistryHive.CurrentConfig, Net.Dns.GetHostByName("wgscd").HostName) 'Escanear elementos de CurrentConfig
'OpenRemoteRegister(Microsoft.Win32.RegistryHive.DynData, Net.Dns.GetHostByName("wgscd").HostName) 'Escanear elementos de DynData
Subtítulo final
Sub ScanRegistryRemote()
Atenuar Mythread como nuevo thread.Thread (Dirección del domo)
Mi hilo.Inicio()
Subtítulo final
Sub AddTreeViewToForm() 'Agregar TreeView a formularios
Con árbolV
.Ancho = 400
.Altura = 500
Terminar con
Yo.Controles.Agregar(árbolV)
Finalizar subllamada
:
ScanRemoteRegistry()