Поделиться через


Функция SHGetValueW (shlwapi.h)

Извлекает значение реестра.

Синтаксис

LSTATUS SHGetValueW(
  [in]                HKEY    hkey,
  [in, optional]      LPCWSTR pszSubKey,
  [in, optional]      LPCWSTR pszValue,
  [out, optional]     DWORD   *pdwType,
  [out, optional]     void    *pvData,
  [in, out, optional] DWORD   *pcbData
);

Параметры

[in] hkey

Тип: HKEY

Дескриптор открытого ключа или любого из следующих предопределенных значений.

HKEY_CLASSES_ROOT

HKEY_CURRENT_CONFIG

HKEY_CURRENT_USER

HKEY_LOCAL_MACHINE

HKEY_PERFORMANCE_DATA

HKEY_USERS

[in, optional] pszSubKey

Тип: LPCTSTR

Адрес строки, завершаемой значением NULL, указывающей имя подраздела, из которого требуется получить значение.

[in, optional] pszValue

Тип: LPCTSTR

Адрес значения.

[out, optional] pdwType

Тип: LPDWORD

Тип значения. Дополнительные сведения см. в типах данных реестра.

[out, optional] pvData

Тип: LPVOID

Адрес целевого буфера данных.

[in, out, optional] pcbData

Тип: LPDWORD

Размер целевого буфера данных.

Возвращаемое значение

Тип: LSTATUS

Возвращает ERROR_SUCCESS в случае успешного выполнения или ненулевого кода ошибки, определенного в Winerror.h в противном случае. Для получения универсального описания ошибки можно использовать функцию FormatMessage с флагом FORMAT_MESSAGE_FROM_SYSTEM.

Замечания

Если приложение должно задать или получить ряд значений в одном и том же ключе, лучше открыть ключ один раз и задать и получить значения с помощью обычных функций реестра Microsoft Win32, а не использовать эту функцию повторно.

Заметка

Заголовок shlwapi.h определяет SHGetValue как псевдоним, который автоматически выбирает версию ANSI или Юникод этой функции на основе определения константы препроцессора ЮНИКОДа. Сочетание использования псевдонима, нейтрального для кодирования, с кодом, не зависящим от кодирования, может привести к несоответствиям, которые приводят к ошибкам компиляции или среды выполнения. Дополнительные сведения см. в соглашениях о прототипах функций.

Требования

Требование Ценность
минимальные поддерживаемые клиентские Windows 2000 Профессиональный, Windows XP [только классические приложения]
минимальный поддерживаемый сервер Windows 2000 Server [только классические приложения]
целевая платформа Виндоус
заголовка shlwapi.h
библиотеки Shlwapi.lib
DLL Shlwapi.dll (версия 4.71 или более поздняя)