Função RegSaveKeyExA (winreg.h)
Salva a chave especificada e todas as suas subchaves e valores em um arquivo do Registro, no formato especificado.
Os aplicativos que backupm ou restauram o estado do sistema, incluindo arquivos do sistema e hives de registro, devem usar o serviço de cópia de sombra de volume em vez das funções do Registro.
Sintaxe
LSTATUS RegSaveKeyExA(
[in] HKEY hKey,
[in] LPCSTR lpFile,
[in, optional] const LPSECURITY_ATTRIBUTES lpSecurityAttributes,
[in] DWORD Flags
);
Parâmetros
[in] hKey
Um identificador para uma chave aberta do Registro.
Essa função não dá suporte à chave predefinida HKEY_CLASSES_ROOT.
[in] lpFile
O nome do arquivo no qual a chave e as subchaves especificadas devem ser salvas. Se o arquivo já existir, a função falhará.
O novo arquivo tem o atributo de arquivo morto.
Se a cadeia de caracteres não incluir um caminho, o arquivo será criado no diretório atual do processo de chamada para uma chave local ou no diretório \system32 %systemroot%para uma chave remota.
[in, optional] lpSecurityAttributes
Um ponteiro para uma estrutura SECURITY_ATTRIBUTES que especifica um descritor de segurança para o novo arquivo. Se lpSecurityAttributes for NULL, o arquivo receberá um descritor de segurança padrão. As ACLs em um descritor de segurança padrão para um arquivo são herdadas de seu diretório pai.
[in] Flags
O formato da chave salva ou hive. Esse parâmetro pode ser um dos valores a seguir.
Valor de retorno
Se a função for bem-sucedida, o valor retornado será ERROR_SUCCESS.
Se a função falhar, o valor retornado será um código de erro diferente de zero definido em Winerror.h. Você pode usar a função
Se mais de um dos valores possíveis listados acima para o parâmetro Flags for especificado em uma chamada para essa função, por exemplo, se dois ou mais valores forem OR'ed, ou se REG_NO_COMPRESSION for especificado e hKey especificar uma chave que não seja a raiz de um hive, essa função retornará ERROR_INVALID_PARAMETER.
Observações
Ao contrário de RegSaveKey, essa função não dá suporte à chave predefinida HKEY_CLASSES_ROOT.
Se hKey representar uma chave em um computador remoto, o caminho descrito por lpFile será relativo ao computador remoto.
A função RegSaveKeyEx salva apenas chaves não complexas. Ele não salva chaves voláteis. Uma chave é tornada volátil ou nãovolatile em sua criação; consulte RegCreateKeyEx .
Você pode usar o arquivo criado pelo RegSaveKeyEx em chamadas subsequentes para a função RegLoadKey, RegReplaceKeyou RegRestoreKey. Se RegSaveKeyEx falhar parcialmente durante sua operação, o arquivo será corrompido e as chamadas subsequentes para RegLoadKey, RegReplaceKeyou regRestoreKey do arquivo falharão.
Não é recomendável usar RegSaveKeyEx junto com RegRestoreKey para copiar subárvores no registro. Esse método não dispara notificações e pode invalidar identificadores usados por outros aplicativos. Em vez disso, use a função SHCopyKey
O processo de chamada deve ter o privilégio SE_BACKUP_NAME habilitado. Para obter mais informações, consulte Em execução com privilégios especiais.
Nota
O cabeçalho winreg.h define RegSaveKeyEx como um alias que seleciona automaticamente a versão ANSI ou Unicode dessa função com base na definição da constante do pré-processador UNICODE. A combinação do uso do alias neutro de codificação com código que não é neutro em codificação pode levar a incompatibilidades que resultam em erros de compilação ou de runtime. Para obter mais informações, consulte Conventions for Function Prototypes.
Requisitos
Requisito | Valor |
---|---|
de cliente com suporte mínimo | Windows XP [somente aplicativos da área de trabalho] |
servidor com suporte mínimo | Windows Server 2003 [somente aplicativos da área de trabalho] |
da Plataforma de Destino |
Windows |
cabeçalho | winreg.h (inclua Windows.h) |
biblioteca | Advapi32.lib |
de DLL |
Advapi32.dll |
Consulte também
RegCreateKeyEx
RegDeleteKey
de Arquivos do Registro