Função RegFlushKey (winreg.h)

Grava no Registro todos os atributos da chave do Registro aberta especificada.

Sintaxe

LSTATUS RegFlushKey(
  [in] HKEY hKey
);

Parâmetros

[in] hKey

Um identificador para uma chave aberta do Registro. A chave deve ter sido aberta com o KEY_QUERY_VALUE direito de acesso. Para obter mais informações, consulte Segurança de Chave do Registro e Direitos de Acesso.

Esse identificador é retornado pela função RegCreateKeyEx, RegCreateKeyTransacted, RegOpenKeyEx ou RegOpenKeyTransacted . Também pode ser uma das seguintes chaves predefinidas:

HKEY_CLASSES_ROOT
HKEY_CURRENT_CONFIG
HKEY_CURRENT_USER
HKEY_LOCAL_MACHINE
HKEY_PERFORMANCE_DATA
HKEY_USERS

Retornar valor

Se a função obtiver êxito, o valor retornado será ERROR_SUCCESS.

Se a função falhar, o valor de retorno será o código de erro diferente de zero definido em Winerror.h. Você pode usar a função FormatMessage com o sinalizador FORMAT_MESSAGE_FROM_SYSTEM para obter uma descrição genérica do erro.

Comentários

Chamar RegFlushKey é uma operação cara que afeta significativamente o desempenho em todo o sistema, pois consome largura de banda de disco e bloqueia modificações em todas as chaves por todos os processos no hive do Registro que está sendo liberado até que a operação de liberação seja concluída. RegFlushKey só deve ser chamado explicitamente quando um aplicativo deve garantir que as alterações do Registro sejam mantidas no disco imediatamente após a modificação. Todas as modificações feitas em chaves são visíveis para outros processos sem a necessidade de liberá-las para o disco.

Como alternativa, o registro tem um mecanismo de "liberação lenta" que libera modificações do Registro no disco em intervalos regulares de tempo. Além dessa operação de liberação regular, as alterações do Registro também são liberadas para o disco no desligamento do sistema. Permitir que a "liberação lenta" libere as alterações do Registro é a maneira mais eficiente de gerenciar gravações do Registro no repositório do Registro no disco.

A função RegFlushKey retorna somente quando todos os dados do hive que contém a chave especificada foram gravados no repositório do Registro no disco.

A função RegFlushKey grava os dados de outras chaves no hive que foram modificadas desde a última liberação lenta ou início do sistema.

Depois que RegFlushKey retornar, use RegCloseKey para fechar o identificador da chave do Registro.

Requisitos

Requisito Valor
Cliente mínimo com suporte Windows 2000 Professional [somente aplicativos da área de trabalho]
Servidor mínimo com suporte Windows 2000 Server [somente aplicativos da área de trabalho]
Plataforma de Destino Windows
Cabeçalho winreg.h (inclua Windows.h)
Biblioteca Advapi32.lib
DLL Advapi32.dll

Confira também

Regclosekey

RegDeleteKey

Funções do Registro

Visão geral do Registro