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


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

Создает подраздел в разделе HKEY_USERS или HKEY_LOCAL_MACHINE и загружает данные из указанного куста реестра в этот подраздел.

Приложения, которые выполняют резервное копирование или восстановление состояния системы, включая системные файлы и кусты реестра, должны использовать службу теневого копирования томов вместо функций реестра.

Синтаксис

LSTATUS RegLoadKeyA(
  [in]           HKEY   hKey,
  [in, optional] LPCSTR lpSubKey,
  [in]           LPCSTR lpFile
);

Параметры

[in] hKey

Дескриптор ключа, в котором будет создан подраздел. Это может быть дескриптор, возвращаемый вызовом RegConnectRegistry, или один из следующих предопределенных дескрипторов:

HKEY_LOCAL_MACHINEHKEY_USERS . Эта функция всегда загружает сведения в верхней части иерархии реестра. Значения дескрипторов HKEY_CLASSES_ROOT и HKEY_CURRENT_USER нельзя указать для этого параметра, так как они представляют подмножества HKEY_LOCAL_MACHINE и HKEY_USERS дескрипторов соответственно.

[in, optional] lpSubKey

Имя ключа, создаваемого в разделе hKey. В этот подраздел будут загружаться сведения о регистрации из файла.

В именах ключей регистр не учитывается.

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

[in] lpFile

Имя файла, содержащего данные реестра. Этот файл должен быть локальным файлом, который был создан с помощью функции RegSaveKey . Если этот файл не существует, создается файл с указанным именем.

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

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

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

Комментарии

Существует два формата файлов hive реестра. Кусты реестра, созданные в текущих операционных системах, обычно не могут быть загружены предыдущими.

Если hKey — это дескриптор, возвращаемый RegConnectRegistry, то путь, указанный в lpFile , относится к удаленному компьютеру.

Вызывающий процесс должен иметь права SE_RESTORE_NAME и SE_BACKUP_NAME на компьютере, на котором находится реестр. Дополнительные сведения см. в разделе Выполнение с особыми привилегиями. Чтобы загрузить куст без этих специальных привилегий, используйте функцию RegLoadAppKey .

Примечание

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

Требования

Требование Значение
Минимальная версия клиента Windows 2000 Professional [только классические приложения]
Минимальная версия сервера Windows 2000 Server [только классические приложения]
Целевая платформа Windows
Header winreg.h (включая Windows.h)
Библиотека Advapi32.lib
DLL Advapi32.dll

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

RegConnectRegistry

RegDeleteKey

RegLoadAppKey

RegReplaceKey

RegRestoreKey

RegSaveKey

RegUnLoadKey

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

Куст реестра