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


Функция 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 или следующее.

Значение Значение
REG_MUI_STRING_TRUNCATE
0x00000001
Строка усекается в соответствии с доступным размером буфера 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

См. также раздел

Функции реестра