Nota
El acceso a esta página requiere autorización. Puede intentar iniciar sesión o cambiar directorios.
El acceso a esta página requiere autorización. Puede intentar cambiar los directorios.
El CreateSubKey
método del My.Computer.Registry
objeto se puede usar para crear una clave del Registro.
Procedimiento
Para crear una clave del Registro
Use el
CreateSubKey
método , especificando en qué subárbol colocar la clave, así como el nombre de la clave. El parámetroSubkey
no distingue entre mayúsculas y minúsculas. En este ejemplo se crea la claveMyTestKey
del Registro en HKEY_CURRENT_USER.My.Computer.Registry.CurrentUser.CreateSubKey("MyTestKey")
Para crear una clave del Registro y establecer un valor en ella
Use el
CreateSubkey
método , especificando en qué subárbol colocar la clave, así como el nombre de la clave. En este ejemplo se crea la claveMyTestKey
del Registro en HKEY_CURRENT_USER.My.Computer.Registry.CurrentUser.CreateSubKey("MyTestKey")
Establezca el valor con el
SetValue
método . En este ejemplo se establece el valor de cadena. "MyTestKeyValue" a "Este es un valor de prueba".My.Computer.Registry.SetValue("HKEY_CURRENT_USER\MyTestKey", "MyTestKeyValue", "This is a test value.")
Ejemplo
En este ejemplo se crea la clave MyTestKey
del Registro en HKEY_CURRENT_USER y, a continuación, se establece el valor MyTestKeyValue
de cadena 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 sólida
Examine la estructura del Registro para buscar una ubicación adecuada para la clave. Por ejemplo, puede que quiera abrir la clave HKEY_CURRENT_USER\Software del usuario actual y crear una clave con el nombre de la empresa. A continuación, agregue los valores del Registro a la clave de la empresa.
Al leer el registro desde una aplicación web, el usuario actual depende de la autenticación y la suplantación implementadas en la aplicación web.
Es más seguro escribir datos en la carpeta de usuario () enCurrentUser lugar del equipo local (LocalMachine).
Al crear un valor del Registro, debe decidir qué hacer si ese valor ya existe. Otro proceso, quizás un malintencionado, puede que ya haya creado el valor y tenga acceso a él. Al colocar datos en el valor del Registro, los datos están disponibles para el otro proceso. Para evitar esto, use el GetValue método .
Nothing
Devuelve si la clave aún no existe.
No es seguro almacenar secretos, como contraseñas, en el Registro como texto sin formato, incluso si la clave del Registro está protegida por ACL (listas de control de acceso).
Las condiciones siguientes pueden provocar una excepción:
El nombre de la clave es
Nothing
(ArgumentNullException).El usuario no tiene permisos para crear claves del Registro (SecurityException).
El nombre de clave supera el límite de 255 caracteres (ArgumentException).
La tecla está cerrada (IOException).
La clave del Registro es de solo lectura (UnauthorizedAccessException).
Seguridad de .NET Framework
Para ejecutar este proceso, el ensamblado requiere un nivel de privilegio concedido por la RegistryPermission clase . Si se ejecuta en un contexto de confianza parcial, el proceso podría producir una excepción debido a privilegios insuficientes. Del mismo modo, el usuario debe tener las ACL correctas para poder crear o escribir en las configuraciones. Por ejemplo, es posible que una aplicación local que tenga el permiso de seguridad de acceso al código no tenga permiso de sistema operativo. Para obtener más información, consulte Conceptos básicos de seguridad de acceso al código.
Nota:
La seguridad de acceso al código (CAS) está en desuso en todas las versiones de .NET Framework y .NET. Las versiones recientes de .NET no respetan las anotaciones CAS y producen errores si se utilizan las APIs relacionadas con CAS. Los desarrolladores deben buscar medios alternativos para realizar tareas de seguridad.