Compartir a través de


Función ClusterRegCreateKey (clusapi.h)

Crea una clave de base de datos de clúster especificada. Si la clave ya existe en la base de datos, ClusterRegCreateKey la abre sin realizar cambios.

Sintaxis

LONG ClusterRegCreateKey(
  [in]            HKEY                  hKey,
  [in]            LPCWSTR               lpszSubKey,
  [in]            DWORD                 dwOptions,
  [in]            REGSAM                samDesired,
  [in, optional]  LPSECURITY_ATTRIBUTES lpSecurityAttributes,
  [out]           PHKEY                 phkResult,
  [out, optional] LPDWORD               lpdwDisposition
);

Parámetros

[in] hKey

Identificador de una clave de base de datos de clúster abierta. Este parámetro no puede ser NULL.

[in] lpszSubKey

Puntero a una cadena Unicode terminada en null que especifica el nombre de la subclave que se va a crear o abrir. El parámetro lpszSubKey debe apuntar a una subclave que:

  • Es una clave secundaria de la clave identificada por hKey.
  • No debe comenzar con el carácter de barra diagonal inversa ( \ ).
  • No debe ser NULL.
El parámetro lpszSubKey puede apuntar a una cadena vacía, lo que hace que ClusterRegCreateKey devuelva un identificador a la clave de base de datos representada por hKey.

[in] dwOptions

Especifica opciones especiales para esta clave. Actualmente, dwOptions se puede establecer en el siguiente valor.

REG_OPTION_NON_VOLATILE (0x00000000)

La clave abierta o creada no es volátil; la información se conserva cuando se reinicia el sistema.

[in] samDesired

Máscara de acceso que especifica el acceso de seguridad necesario para la nueva clave. Los valores siguientes son válidos.

Para obtener más información, consulte Derechos de acceso y seguridad de clave del Registro.

ACCESS_SYSTEM_SECURITY (0x01000000)

Permiso para acceder a la seguridad del sistema. Se usa para indicar el acceso a una lista de control de acceso del sistema (SACL). Este tipo de acceso requiere que el proceso de llamada tenga el privilegio SE_SECURITY_NAME (Administrar auditoría y registro de seguridad).

DELETE (0x00010000)

Permiso para eliminar.

KEY_ALL_ACCESS (0x000F003F)

Combinación de acceso KEY_QUERY_VALUE, KEY_ENUMERATE_SUB_KEYS, KEY_NOTIFY, KEY_CREATE_SUB_KEY, KEY_CREATE_LINK y KEY_SET_VALUE .

Permiso para crear un vínculo simbólico.

KEY_ENUMERATE_SUB_KEYS (0x00000008)

Permiso para enumerar subclaves.

KEY_EXECUTE (0x00020019)

Permiso para el acceso de lectura.

KEY_NOTIFY (0x00000010)

Permiso para la notificación de cambios.

KEY_QUERY_VALUE (0x00000001)

Permiso para consultar datos de subclave.

KEY_READ (0x00020019)

Combinación de acceso KEY_QUERY_VALUE, KEY_ENUMERATE_SUB_KEYS y KEY_NOTIFY .

KEY_SET_VALUE (0x00000002)

Permiso para cambiar los datos de subclave.

KEY_WRITE (0x00020006)

Combinación de acceso KEY_SET_VALUE y KEY_CREATE_SUB_KEY .

READ_CONTROL (0x00020000)

Permiso para leer el propietario, el grupo y la lista de control de acceso discrecional (DACL) del descriptor de seguridad.

WRITE_DAC (0x00040000)

Permiso para escribir en la DACL.

WRITE_OWNER (0x00080000)

Permiso para cambiar el propietario.

[in, optional] lpSecurityAttributes

Este parámetro se ignora. Para establecer los atributos de seguridad en una nueva clave del Registro, llame a la función ClusterRegSetKeySecurity después de que ClusterRegCreateKey se haya devuelto correctamente.

[out] phkResult

Puntero al identificador de la clave abierta o creada.

[out, optional] lpdwDisposition

Puntero a un valor que describe si se abrió o creó la clave a la que apunta lpszSubKey . Los valores siguientes son válidos.

REG_CREATED_NEW_KEY (0x00000001)

La clave no existía y se creó.

REG_OPENED_EXISTING_KEY (0x00000002)

La clave existía y se abrió.

Valor devuelto

Si la operación se realiza correctamente, la función devuelve ERROR_SUCCESS.

Si se produce un error en la operación, la función devuelve un código de error del sistema.

Comentarios

Los autores de llamadas deben llamar a ClusterRegCloseKey para cerrar el identificador de clave creado por la función ClusterRegCreateKey cuando terminen con él.

No llame a ClusterRegCreateKey desde las siguientes funciones de punto de entrada dll de recursos:

ClusterRegCreateKey se puede llamar de forma segura desde cualquier otra función de punto de entrada dll de recursos o desde un subproceso de trabajo. Para obtener más información, consulte Llamadas de función para evitar en archivos DLL de recursos.

Requisitos

Requisito Value
Cliente mínimo compatible No se admite ninguno
Servidor mínimo compatible Windows Server 2008 Enterprise, Windows Server 2008 Datacenter
Plataforma de destino Windows
Encabezado clusapi.h
Library ClusAPI.lib
Archivo DLL ClusAPI.dll

Consulte también

Funciones de acceso al registro de clúster

ClusterRegCloseKey

ClusterRegDeleteKey

ClusterRegOpenKey