Função RegDeleteKeyExA (winreg.h)

Exclui uma subchave e seus valores da exibição específica da plataforma especificada do registro. Observe que os nomes de chave não diferenciam maiúsculas de minúsculas.

Para excluir uma subchave como uma operação transacionada, chame a função RegDeleteKeyTransacted .

Sintaxe

LSTATUS RegDeleteKeyExA(
  [in] HKEY   hKey,
  [in] LPCSTR lpSubKey,
  [in] REGSAM samDesired,
       DWORD  Reserved
);

Parâmetros

[in] hKey

Um identificador para uma chave aberta do Registro. Os direitos de acesso dessa chave não afetam a operação de exclusão. Para obter mais informações sobre direitos de acesso, consulte Segurança de Chave do Registro e Direitos de Acesso.

Esse identificador é retornado pela função RegCreateKeyEx ou RegOpenKeyEx ou pode ser uma das seguintes chaves predefinidas:

HKEY_CLASSES_ROOT
HKEY_CURRENT_CONFIG
HKEY_CURRENT_USER
HKEY_LOCAL_MACHINE
HKEY_USERS

[in] lpSubKey

O nome da chave a ser excluída. Essa chave deve ser uma subchave da chave especificada pelo valor do parâmetro hKey .

A função abre a subchave com o direito de acesso DELETE.

Os nomes de chave não diferenciam maiúsculas de minúsculas.

O valor desse parâmetro não pode ser NULL.

[in] samDesired

Uma máscara de acesso especifica a exibição específica da plataforma do registro.

Valor Significado
KEY_WOW64_32KEY
0x0200
Exclua a chave da exibição do Registro de 32 bits.
KEY_WOW64_64KEY
0x0100
Exclua a chave da exibição do Registro de 64 bits.

Reserved

Esse parâmetro é reservado e precisa ser zero.

Valor retornado

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

Uma chave excluída não é removida até que o último identificador para ela seja fechado.

Em WOW64, aplicativos de 32 bits exibem uma árvore do Registro separada da árvore do Registro que os aplicativos de 64 bits exibem. Essa função permite que um aplicativo exclua uma entrada na exibição alternativa do Registro.

A subchave a ser excluída não deve ter subchaves. Para excluir uma chave e todas as subchaves, você precisa enumerar as subchaves e excluí-las individualmente. Para excluir chaves recursivamente, use a função RegDeleteTree ou SHDeleteKey .

Se a função for bem-sucedida, RegDeleteKeyEx removerá a chave especificada do registro. Toda a chave, incluindo todos os seus valores, é removida.

Observação

Em versões herdadas do Windows, essa API também é exposta por kernel32.dll.

Observação

O cabeçalho winreg.h define RegDeleteKeyEx como um alias que seleciona automaticamente a versão ANSI ou Unicode dessa função com base na definição da constante de pré-processador UNICODE. Misturar o uso do alias neutro de codificação com código que não seja neutro em codificação pode levar a incompatibilidades que resultam em erros de compilação ou de runtime. Para obter mais informações, consulte Convenções para protótipos de função.

Requisitos

   
Cliente mínimo com suporte Windows Vista, Windows XP Professional x64 Edition [somente aplicativos da área de trabalho]
Servidor mínimo com suporte Windows Server 2008, Windows Server 2003 com SP1 [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

RegCreateKeyEx

RegDeleteKeyTransacted

RegOpenKeyEx

Funções do Registro

Redirecionador do Registro