Tutorial: Crear una clave del Registro y cambiar sus valores (Visual Basic)
Este tutorial muestra cómo crear una aplicación que irá a las claves del Registro en el equipo para que los usuarios pueden crear y eliminar claves, así como leer, obtener, establecer y eliminar valores.
Para crear el formulario principal
Seleccione Nuevo proyecto en el menú Archivo y haga clic en Aplicación para Windows.
Agregue un clase TextBox denominada Value al formulario. En la esquina inferior derecha de la ventana Propiedades , en el campo (Nombre), escriba Valor.
Agregue un clase ListBox denominada History al formulario. En la esquina inferior derecha de la ventana Propiedades , en el campo (Nombre), escriba Historial.
Cree la variable adicional y agréguela inmediatamente después de la declaración de clase.
Dim tempKey As Microsoft.Win32.RegistryKey
Para explorar las claves del Registro en un ComboBox
Agregue al formulario una clase ComboBox denominada selectHive que mostrará los subárboles del Registro y le permitirá seleccionar uno. Rellénelo agregando el código siguiente al evento de carga del formulario.
selectHive.Items.Add("ClassesRoot") selectHive.Items.Add("CurentConfig") selectHive.Items.Add("CurrentUser") selectHive.Items.Add("LocalMachine") selectHive.Items.Add("PerformanceData") selectHive.Items.Add("Users")
Adjunte el código siguiente después de su declaración de clase.
Dim registryObject As Microsoft.Win32.RegistryKey = Nothing
Agregue el código siguiente al evento selectHive SelectedIndexChanged.
Select Case selectHive.Text Case "ClassesRoot" registryObject = My.Computer.Registry.ClassesRoot Case "CurrentConfig" registryObject = My.Computer.Registry.CurrentConfig Case "CurrentUser" registryObject = My.Computer.Registry.CurrentUser Case "LocalMachine" registryObject = My.Computer.Registry.LocalMachine Case "PerformanceData" registryObject = My.Computer.Registry.PerformanceData Case "Users" registryObject = My.Computer.Registry.Users End Select
Para leer un valor en una clave del Registro
Agregue al formulario una clase Button denominada ReadValueButton con el texto "Leer valor".
Agregue al formulario una clase TextBox denominada showSubKey con el texto "Escribir subclave".
Agregue el código siguiente al evento ReadValueButton Click.
tempKey = registryObject If tempKey Is Nothing Then MsgBox("Please select a registry hive.") Return End If Value.Text = CStr(tempKey.GetValue(ShowSubKey.Text)) History.Items.Add("Read Value " & selectHive.Text & "\" & ShowSubKey.Text)
Pruebe su aplicación escribiendo el nombre de una subclave existente en el cuadro de texto showSubKey. Cuando se hace clic en ReadValueButton, el cuadro de texto Value muestra el valor.
Para establecer un valor en una clave del Registro
Agregue al formulario un botón denominado SetValueButton con el texto "Establecer valor".
Agregue el código siguiente al evento Click.
tempKey = registryObject If tempKey Is Nothing Then MsgBox("Please select a registry hive.") Return End If If Value.Text Is Nothing Then MsgBox("Please enter a value.") Return End If tempKey.SetValue(showSubKey.Text, Value.Text) tempKey.Close() History.Items.Add("Set Value " & selectHive.Text & "\" & showSubKey.Text)
Pruebe su aplicación especificando un nuevo valor para una subclave en el cuadro de texto Valor y confirmando a continuación que el valor se ha cambiado con el botón denominado ReadValueButton.
Para crear una clave del Registro
Agregue al formulario un botón denominado CreateButton con el texto "Crear clave".
Agregue el código siguiente al evento Click.
registryObject.CreateSubKey(showSubKey.Text) History.Items.Add("Create Key " & selectHive.Text & "\" & showSubKey.Text)
Pruebe su aplicación escribiendo un nuevo nombre de clave en el cuadro de texto showSubKey y utilizando el Editor del Registro para confirmar que se ha creado su clave.
Para eliminar una clave del Registro
Agregue al formulario un botón denominado DeleteButton con el texto "Eliminar clave".
Agregue el código siguiente al evento Click.
tempKey = registryObject If tempKey Is Nothing Then MsgBox("Please select a registry hive.") Return End If If showSubKey.Text Is Nothing Then MsgBox("Please enter a subkey.") Return End If registryObject.DeleteSubKey(showSubKey.Text) History.Items.Add("Delete Key " & selectHive.Text & "\" & showSubKey.Text)
Pruebe su código eliminando una subclave y utilizando el Editor del Registro para confirmar que la clave fue eliminada.
Vea también
Tareas
Solución de problemas: Manipulación del Registro (Visual Basic)
Conceptos
Tareas habituales del Registro (Visual Basic)
La seguridad y el Registro (Visual Basic)
Leer y escribir en el Registro con My (Visual Basic)
Leer y escribir en el Registro mediante el espacio de nombres Microsoft.Win32 (Visual Basic)