Função RegOpenKeyA (winreg.h)
Abre a chave do Registro especificada.
Sintaxe
LSTATUS RegOpenKeyA(
[in] HKEY hKey,
[in, optional] LPCSTR lpSubKey,
[out] PHKEY phkResult
);
Parâmetros
[in] hKey
Um identificador para uma chave aberta do Registro. 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, optional] lpSubKey
O nome da chave do Registro a ser aberta. Essa chave deve ser uma subchave da chave identificada pelo parâmetro hKey .
Os nomes de chave não diferenciam maiúsculas de minúsculas.
Se esse parâmetro for NULL ou um ponteiro para uma cadeia de caracteres vazia, a função retornará o mesmo identificador que foi passado.
Para obter mais informações, consulte Limites de tamanho do elemento do Registro.
[out] phkResult
Um ponteiro para uma variável que recebe um identificador para a chave aberta. Se a chave não for uma das chaves predefinidas do Registro, chame a função RegCloseKey depois de terminar de usar o identificador.
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
A função RegOpenKey usa a máscara de acesso de segurança padrão para abrir uma chave. Se abrir a chave exigir um direito de acesso diferente, a função falhará, retornando ERROR_ACCESS_DENIED. Um aplicativo deve usar a função RegOpenKeyEx para especificar uma máscara de acesso nessa situação.
RegOpenKey não criará a chave especificada se a chave não existir no banco de dados.
Se seu serviço ou aplicativo representar usuários diferentes, não use essa função com HKEY_CURRENT_USER. Em vez disso, chame a função RegOpenCurrentUser .
Observação
O cabeçalho winreg.h define RegOpenKey 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
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 |