Función RegFlushKey (winreg.h)

Escribe todos los atributos de la clave del Registro abierta y especificada en el Registro.

Sintaxis

LSTATUS RegFlushKey(
  [in] HKEY hKey
);

Parámetros

[in] hKey

Identificador de una clave del Registro abierta. La clave debe haberse abierto con el derecho de acceso KEY_QUERY_VALUE. Para obtener más información, consulte Derechos de acceso y seguridad de clave del Registro.

Este identificador lo devuelve la función RegCreateKeyEx, RegCreateKeyTransacted, RegOpenKeyEx o RegOpenKeyTransacted . También puede ser una de las siguientes claves predefinidas:

HKEY_CLASSES_ROOT
HKEY_CURRENT_CONFIG
HKEY_CURRENT_USER
HKEY_LOCAL_MACHINE
HKEY_PERFORMANCE_DATA
HKEY_USERS

Valor devuelto

Si la función se ejecuta correctamente, el valor devuelto es ERROR_SUCCESS.

Si la función no se ejecuta correctamente, el valor devuelto es un código de error distinto de cero definido en Winerror.h. Puede usar la función FormatMessage con la marca FORMAT_MESSAGE_FROM_SYSTEM para obtener una descripción genérica del error.

Comentarios

Llamar a RegFlushKey es una operación costosa que afecta significativamente al rendimiento de todo el sistema, ya que consume ancho de banda de disco y bloquea las modificaciones en todas las claves por todos los procesos del subárbol del Registro que se vacían hasta que se completa la operación de vaciado. RegFlushKey solo se debe llamar explícitamente cuando una aplicación debe garantizar que los cambios del Registro se conserven en el disco inmediatamente después de la modificación. Todas las modificaciones realizadas en las claves son visibles para otros procesos sin necesidad de vaciarlas en el disco.

Como alternativa, el registro tiene un mecanismo de vaciado diferido que vacía las modificaciones del registro en el disco a intervalos regulares de tiempo. Además de esta operación de vaciado normal, los cambios del Registro también se vacían en el disco durante el apagado del sistema. Permitir el vaciado diferido para vaciar los cambios del Registro es la manera más eficaz de administrar las escrituras del Registro en el almacén del Registro en el disco.

La función RegFlushKey solo devuelve cuando todos los datos del subárbol que contiene la clave especificada se han escrito en el almacén del Registro en el disco.

La función RegFlushKey escribe los datos de otras claves del subárbol que se han modificado desde el último vaciado diferido o inicio del sistema.

Después de que RegFlushKey vuelva, use RegCloseKey para cerrar el identificador de la clave del Registro.

Requisitos

Requisito Value
Cliente mínimo compatible Windows 2000 Professional [solo aplicaciones de escritorio]
Servidor mínimo compatible Windows 2000 Server [solo aplicaciones de escritorio]
Plataforma de destino Windows
Encabezado winreg.h (incluye Windows.h)
Library Advapi32.lib
Archivo DLL Advapi32.dll

Consulte también

RegCloseKey

RegDeleteKey

Funciones del Registro

Introducción al Registro