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


Функция RegLoadMUIStringA (winreg.h)

Загружает указанную строку из указанного ключа и подраздела.

Синтаксис

LSTATUS RegLoadMUIStringA(
  [in]            HKEY    hKey,
  [in, optional]  LPCSTR  pszValue,
  [out, optional] LPSTR   pszOutBuf,
  [in]            DWORD   cbOutBuf,
  [out, optional] LPDWORD pcbData,
  [in]            DWORD   Flags,
  [in, optional]  LPCSTR  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 или Юникод этой функции на основе определения константы препроцессора ЮНИКОДа. Сочетание использования псевдонима, нейтрального для кодирования, с кодом, не зависящим от кодирования, может привести к несоответствиям, которые приводят к ошибкам компиляции или среды выполнения. Дополнительные сведения см. в соглашениях о прототипах функций.

Требования

Требование Ценность
минимальные поддерживаемые клиентские Windows Vista [только классические приложения]
минимальный поддерживаемый сервер Windows Server 2008 [только классические приложения]
целевая платформа Виндоус
заголовка winreg.h (включая Windows.h)
библиотеки Advapi32.lib
DLL Advapi32.dll

См. также

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