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 |
---|---|
|
Exclua a chave da exibição do Registro de 32 bits. |
|
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 |