Cómo: Crear una clave del Registro y establecer su valor en Visual Basic
El método CreateSubKey del objeto My.Computer.Registry se puede utilizar para crear una clave del Registro.
Procedimiento
Para crear una clave del Registro
Utilice el método CreateSubKey, especificando en qué subárbol se va a colocar la clave, así como el nombre de la clave.El parámetro Subkey no distingue entre mayúsculas y minúsculas.Este ejemplo crea la clave del Registro MyTestKey en HKEY_CURRENT_USER.
My.Computer.Registry.CurrentUser.CreateSubKey("MyTestKey")
Crear una clave del Registro y establecer un valor en él
Utilice el método CreateSubkey, especificando en qué subárbol se va a colocar la clave, así como el nombre de la clave.Este ejemplo crea la clave del Registro MyTestKey en HKEY_CURRENT_USER.
My.Computer.Registry.CurrentUser.CreateSubKey("MyTestKey")
Establezca el valor con el método SetValue.Este ejemplo establece el valor de la cadena. ""MyTestKeyValue" en "This is a test value".
My.Computer.Registry.SetValue("HKEY_CURRENT_USER\MyTestKey", "MyTestKeyValue", "This is a test value.")
Ejemplo
Este ejemplo crea la clave del Registro MyTestKey en HKEY_CURRENT_USER y, a continuación, establece el valor de la cadena MyTestKeyValue en This is a test value.
My.Computer.Registry.CurrentUser.CreateSubKey("MyTestKey")
' Change MyTestKeyValue to This is a test value.
My.Computer.Registry.SetValue("HKEY_CURRENT_USER\MyTestKey",
"MyTestKeyValue", "This is a test value.")
Programación eficaz
Examine la estructura del Registro para buscar la ubicación adecuada para la clave.Por ejemplo, puede que desee abrir la clave HKEY_CURRENT_USER\Software del usuario actual y crear una clave con el nombre de su empresa.A continuación, agregue los valores del Registro a la clave de su empresa.
Cuando se esté leyendo el Registro desde una aplicación Web, el usuario actual dependerá de la autenticación y suplantación implementadas en la aplicación Web.
Resulta más seguro escribir datos en la carpeta de usuario (CurrentUser) que en el equipo local (LocalMachine).
A la hora de crear valores de Registro, deberá decidir qué hacer si coinciden con otros ya existentes.Es posible que otro proceso, probablemente malintencionado, haya creado el valor y tenga acceso a él.Cuando ponga datos en el valor del Registro, los datos estarán disponibles para el otro proceso.Para evitar esto, utilice el método GetValue.Devuelve Nothing si la clave no existe ya.
Aunque la clave del Registro esté protegida por listas de control de acceso (ACL), no es seguro almacenar en ella datos secretos (por ejemplo, contraseñas) como texto sin formato.
Las condiciones siguientes pueden provocar una excepción:
El nombre de la clave es Nothing (ArgumentNullException).
El usuario no tiene permiso para crear claves del Registro (SecurityException).
El nombre de la clave supera el límite de 255 caracteres (ArgumentException).
La clave está cerrada (IOException).
La clave del Registro es de sólo lectura (UnauthorizedAccessException).
Seguridad
Para ejecutar este proceso, el ensamblado requiere un nivel de privilegios concedido por la clase RegistryPermission.Si ejecuta el proceso en un contexto de confianza parcial, podría desencadenarse una excepción por falta de privilegios.De igual manera, el usuario debe tener las ACL correctas para crear o escribir en la configuración.Por ejemplo, una aplicación local que tenga permiso de seguridad de acceso del código puede no tener permiso para el sistema operativo.Para obtener más información, vea Conceptos básicos sobre la seguridad de acceso del código.
Vea también
Referencia
Conceptos
Conceptos básicos sobre la seguridad de acceso del código