Função RegQueryInfoKeyW (winreg.h)
Recupera informações sobre a chave do Registro especificada.
Sintaxe
LSTATUS RegQueryInfoKeyW(
[in] HKEY hKey,
[out, optional] LPWSTR lpClass,
[in, out, optional] LPDWORD lpcchClass,
LPDWORD lpReserved,
[out, optional] LPDWORD lpcSubKeys,
[out, optional] LPDWORD lpcbMaxSubKeyLen,
[out, optional] LPDWORD lpcbMaxClassLen,
[out, optional] LPDWORD lpcValues,
[out, optional] LPDWORD lpcbMaxValueNameLen,
[out, optional] LPDWORD lpcbMaxValueLen,
[out, optional] LPDWORD lpcbSecurityDescriptor,
[out, optional] PFILETIME lpftLastWriteTime
);
Parâmetros
[in] hKey
Um identificador para uma chave aberta do Registro. A chave deve ter sido aberta com o acesso KEY_QUERY_VALUE direito. Para obter mais informações, consulte de Direitos de Acesso e Segurança de Chave do Registro.
Esse identificador é retornado pelo RegCreateKeyEx, RegCreateKeyTransacted, RegOpenKeyExou função 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
[out, optional] lpClass
Um ponteiro para um buffer que recebe a classe definida pelo usuário da chave. Esse parâmetro pode ser NULL.
[in, out, optional] lpcchClass
Um ponteiro para uma variável que especifica o tamanho do buffer apontado pelo parâmetro lpClass, em caracteres.
O tamanho deve incluir a terminação caractere de nulo. Quando a função retorna, essa variável contém o tamanho da cadeia de caracteres de classe armazenada no buffer. A contagem retornada não inclui a terminação caractere de nulo. Se o buffer não for grande o suficiente, a função retornará ERROR_MORE_DATA e a variável conterá o tamanho da cadeia de caracteres, em caracteres, sem contar a terminação caractere de nulo.
Se lpClass for NULL, lpcClass poderá ser NULL.
Se o parâmetro lpClass for um endereço válido, mas o parâmetro lpcClass não for, por exemplo, ele será NULL, então a função retornará ERROR_INVALID_PARAMETER.
lpReserved
Esse parâmetro é reservado e deve ser NULL.
[out, optional] lpcSubKeys
Um ponteiro para uma variável que recebe o número de subchaves contidas na chave especificada. Esse parâmetro pode ser NULL.
[out, optional] lpcbMaxSubKeyLen
Um ponteiro para uma variável que recebe o tamanho da subchave da chave com o nome mais longo, em caracteres Unicode, sem incluir a terminação caractere de nulo. Esse parâmetro pode ser NULL.
[out, optional] lpcbMaxClassLen
Um ponteiro para uma variável que recebe o tamanho da cadeia de caracteres mais longa que especifica uma classe de subchave, em caracteres Unicode. A contagem retornada não inclui a terminação caractere de nulo. Esse parâmetro pode ser NULL.
[out, optional] lpcValues
Um ponteiro para uma variável que recebe o número de valores associados à chave. Esse parâmetro pode ser NULL.
[out, optional] lpcbMaxValueNameLen
Um ponteiro para uma variável que recebe o tamanho do nome de valor mais longo da chave, em caracteres Unicode. O tamanho não inclui a terminação caractere de nulo. Esse parâmetro pode ser NULL.
[out, optional] lpcbMaxValueLen
Um ponteiro para uma variável que recebe o tamanho do componente de dados mais longo entre os valores da chave, em bytes. Esse parâmetro pode ser NULL.
[out, optional] lpcbSecurityDescriptor
Um ponteiro para uma variável que recebe o tamanho do descritor de segurança da chave, em bytes. Esse parâmetro pode ser NULL.
[out, optional] lpftLastWriteTime
Um ponteiro para uma estrutura FILETIME
A função define os membros da estrutura FILETIME para indicar a última vez que a chave ou qualquer uma de suas entradas de valor é modificada.
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 do sistema.
Se o lpClass buffer for muito pequeno para receber o nome da classe, a função retornará ERROR_MORE_DATA.
Observações
Nota
O cabeçalho winreg.h define RegQueryInfoKey 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 2000 Professional [somente aplicativos da área de trabalho] |
servidor com suporte mínimo | Windows 2000 Server [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
RegDeleteKey