Функция RegLoadMUIStringW (winreg.h)
Загружает указанную строку из указанного ключа и подраздела.
Синтаксис
LSTATUS RegLoadMUIStringW(
[in] HKEY hKey,
[in, optional] LPCWSTR pszValue,
[out, optional] LPWSTR pszOutBuf,
[in] DWORD cbOutBuf,
[out, optional] LPDWORD pcbData,
[in] DWORD Flags,
[in, optional] LPCWSTR pszDirectory
);
Параметры
[in] hKey
Дескриптор открытого раздела реестра. Ключ должен быть открыт с правом доступа KEY_QUERY_VALUE. Дополнительные сведения см. в разделе Безопасность раздела реестра и права доступа.
Этот дескриптор возвращается функцией RegCreateKeyEx или RegOpenKeyEx . Это также может быть один из следующих предопределенных ключей:
- HKEY_CLASSES_ROOT
- HKEY_CURRENT_CONFIG
- HKEY_CURRENT_USER
- HKEY_LOCAL_MACHINE
- HKEY_USERS
[in, optional] pszValue
Имя значения реестра.
[out, optional] pszOutBuf
Указатель на буфер, получающий строку.
Строки следующей формы получают специальную обработку:
@[path]\dllname,-strID
Строка с идентификатором strID загружается из dllname; Путь необязателен. Если параметр pszDirectory не равен NULL, каталог добавляется к пути, указанному в данных реестра. Обратите внимание, что dllname может содержать переменные среды для развертывания.
[in] cbOutBuf
Размер буфера pszOutBuf в байтах.
[out, optional] pcbData
Указатель на переменную, которая получает размер данных, скопированных в буфер pszOutBuf , в байтах.
Если буфер недостаточно велик для хранения данных, функция возвращает ERROR_MORE_DATA и сохраняет требуемый размер буфера в переменной, на которую указывает pcbData. В этом случае содержимое буфера не определено.
[in] Flags
Этот параметр может иметь значение 0 или следующее.
Значение | Значение |
---|---|
|
Строка усекается в соответствии с доступным размером буфера pszOutBuf . Если этот флаг указан, параметр pcbData должен иметь значение NULL. |
[in, optional] pszDirectory
Путь к каталогу.
Возвращаемое значение
Если функция выполнена успешно, возвращаемое значение будет ERROR_SUCCESS.
Если функция завершается сбоем, возвращаемое значение представляет собой системный код ошибки.
Если буфер pcbData слишком мал для получения строки, функция возвращает ERROR_MORE_DATA.
Версия ANSI этой функции возвращает ERROR_CALL_NOT_IMPLEMENTED.
Комментарии
Функция RegLoadMUIString поддерживается только для Юникода. Хотя объявлены версии этой функции в Юникоде (W) и ANSI (A), функция RegLoadMUIStringA возвращает ERROR_CALL_NOT_IMPLEMENTED. Приложения должны явно вызывать RegLoadMUIStringW или указывать Юникод в качестве набора символов в вызовах платформы (PInvoke).
Чтобы скомпилировать приложение, использующее эту функцию, определите _WIN32_WINNT как 0x0600 или более поздней версии. Дополнительные сведения см. в разделе Использование заголовков Windows.
Примечание
Заголовок winreg.h определяет RegLoadMUIString как псевдоним, который автоматически выбирает версию ANSI или Юникод этой функции на основе определения константы препроцессора UNICODE. Сочетание использования псевдонима, не зависящий от кодировки, с кодом, не зависящим от кодировки, может привести к несоответствиям, которые приводят к ошибкам компиляции или среды выполнения. Дополнительные сведения см. в разделе Соглашения для прототипов функций.
Требования
Минимальная версия клиента | Windows Vista [только классические приложения] |
Минимальная версия сервера | Windows Server 2008 [только классические приложения] |
Целевая платформа | Windows |
Header | winreg.h (включая Windows.h) |
Библиотека | Advapi32.lib |
DLL | Advapi32.dll |