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

Извлекает путь к файлу из реестра, при необходимости расширяя переменные среды.

Синтаксис

LSTATUS SHRegGetPathW(
  [in]  HKEY    hKey,
  [in]  LPCWSTR pcszSubKey,
  [in]  LPCWSTR pcszValue,
  [out] LPWSTR  pszPath,
        DWORD   dwFlags
);

Параметры

[in] hKey

Тип: HKEY

Дескриптор открытого ключа или корневого раздела реестра.

[in] pcszSubKey

Тип: LPCTSTR

Указатель на строку, завершающуюся null, которая содержит имя подраздела.

[in] pcszValue

Тип: LPCTSTR

Указатель на строку, завершающуюся null, которая содержит имя значения, содержащего строку неразвернутого пути.

[out] pszPath

Тип: LPTSTR

Буфер для хранения развернутого пути. Необходимо задать размер этого буфера MAX_PATH , чтобы убедиться, что он достаточно велик для хранения возвращаемой строки.

dwFlags

Тип: DWORD

Зарезервировано.

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

Тип: LSTATUS

Возвращает ERROR_SUCCESS в случае успешного выполнения, или код ошибки Windows в противном случае.

Комментарии

Тип данных указанного значения реестра должен быть REG_EXPAND_SZ или REG_SZ. Если он имеет тип REG_EXPAND_SZ , все переменные среды в строке реестра будут развернуты с помощью ExpandEnvironmentStrings. Если он имеет тип данных REG_SZ , переменные среды не будут развернуты, а строка, на которую указывает pszPath , будет идентична строке в реестре.

Следующие строки среды будут заменены эквивалентным путем.

Строка среды Папка
%USERPROFILE% Папка профиля текущего пользователя
%ALLUSERSPROFILE% Папка профиля "Все пользователи"
%ProgramFiles% Папка Program Files
%SystemRoot% Корневая папка системы
%SystemDrive% Системная буква диска
 
Примечание %USERPROFILE% относительно пользователя, выполняющего вызов. Эта функция не работает, если пользователь олицетворяется службой.
 

Примечание

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

Требования

   
Минимальная версия клиента Windows 2000 Professional, Windows XP [только классические приложения]
Минимальная версия сервера Windows 2000 Server [только классические приложения]
Целевая платформа Windows
Header shlwapi.h
Библиотека Shlwapi.lib
DLL Shlwapi.dll (версия 5.0 или более поздняя)