Функция RegQueryInfoKeyW (winreg.h)
Извлекает сведения о указанном разделе реестра.
Синтаксис
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
);
Параметры
[in] hKey
Дескриптор открытого раздела реестра. Ключ должен быть открыт с помощью права доступа KEY_QUERY_VALUE. Дополнительные сведения см. в разделе "Безопасность и права доступа реестра".
Этот дескриптор возвращается RegCreateKeyEx, RegCreateKeyTransacted, RegOpenKeyExили функцией RegOpenKeyTransacted. Он также может быть одним из следующих предопределенных ключей:
HKEY_CLASSES_ROOT HKEY_CURRENT_CONFIG HKEY_CURRENT_USER HKEY_LOCAL_MACHINE HKEY_PERFORMANCE_DATA HKEY_USERS
[out, optional] lpClass
Указатель на буфер, который получает определяемый пользователем класс ключа. Этот параметр может быть NULL.
[in, out, optional] lpcchClass
Указатель на переменную, указывающую размер буфера, на который указывает параметр lpClass в символах.
Размер должен содержать завершающий символ null. При возврате функции эта переменная содержит размер строки класса, хранящейся в буфере. Возвращаемое число не включает завершающий символ null. Если буфер недостаточно велик, функция возвращает ERROR_MORE_DATA, а переменная содержит размер строки в символах без подсчета конца null символа.
Если lpClassNULL, lpcClass можно NULL.
Если параметр lpClass
lpReserved
Этот параметр зарезервирован и должен быть null.
[out, optional] lpcSubKeys
Указатель на переменную, которая получает количество вложенных ключей, содержащихся указанным ключом. Этот параметр может быть NULL.
[out, optional] lpcbMaxSubKeyLen
Указатель на переменную, которая получает размер подраздела ключа с самым длинным именем в символах Юникода, не включая завершающийся символ null. Этот параметр может быть NULL.
[out, optional] lpcbMaxClassLen
Указатель на переменную, которая получает размер самой длинной строки, указывающей класс подключа в символах Юникода. Возвращаемое число не включает завершающий символ null. Этот параметр может быть NULL.
[out, optional] lpcValues
Указатель на переменную, которая получает количество значений, связанных с ключом. Этот параметр может быть NULL.
[out, optional] lpcbMaxValueNameLen
Указатель на переменную, которая получает размер самого длинного имени значения ключа в символах Юникода. Размер не включает завершающий символ null. Этот параметр может быть NULL.
[out, optional] lpcbMaxValueLen
Указатель на переменную, которая получает размер самого длинного компонента данных среди значений ключа в байтах. Этот параметр может быть NULL.
[out, optional] lpcbSecurityDescriptor
Указатель на переменную, которая получает размер дескриптора безопасности ключа в байтах. Этот параметр может быть NULL.
[out, optional] lpftLastWriteTime
Указатель на структуру FILETIME, которая получает время последней записи. Этот параметр может быть NULL.
Функция задает члены структуры FILETIME, чтобы указать время последнего изменения ключа или любого из его записей значений.
Возвращаемое значение
Если функция выполнена успешно, возвращаемое значение ERROR_SUCCESS.
Если функция завершается ошибкой, возвращаемое значение является системным кодом ошибки.
Если буфер
Замечания
Заметка
Заголовок winreg.h определяет RegQueryInfoKey как псевдоним, который автоматически выбирает версию ANSI или Юникод этой функции на основе определения константы препроцессора ЮНИКОДа. Сочетание использования псевдонима, нейтрального для кодирования, с кодом, не зависящим от кодирования, может привести к несоответствиям, которые приводят к ошибкам компиляции или среды выполнения. Дополнительные сведения см. в соглашениях о прототипах функций.
Требования
Требование | Ценность |
---|---|
минимальные поддерживаемые клиентские | Windows 2000 Профессиональный [только классические приложения] |
минимальный поддерживаемый сервер | Windows 2000 Server [только классические приложения] |
целевая платформа | Виндоус |
заголовка | winreg.h (включая Windows.h) |
библиотеки |
Advapi32.lib |
DLL | Advapi32.dll |
См. также
Обзор реестра