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


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

Создает или открывает подраздел реестра в пользовательском поддереве (HKEY_CURRENT_USER или HKEY_LOCAL_MACHINE).

Синтаксис

LSTATUS SHRegCreateUSKeyA(
  [in]           LPCSTR  pszPath,
  [in]           REGSAM  samDesired,
  [in, optional] HUSKEY  hRelativeUSKey,
  [out]          PHUSKEY phNewUSKey,
  [in]           DWORD   dwFlags
);

Параметры

[in] pszPath

Тип: LPCTSTR

Указатель на строку, завершающуюся значением NULL, которая содержит подраздел, который необходимо создать или открыть. Если в подразделе уже есть значение с таким именем, оно будет открыто.

[in] samDesired

Тип: REGSAM

Требуемый доступ к системе безопасности. Дополнительные сведения о безопасном доступе см. в разделе REGSAM.

[in, optional] hRelativeUSKey

Тип: HUSKEY

Ключ, используемый в качестве основы для относительных путей. Если pszPath является относительным путем, заданный ключ будет относительно hRelativeUSKey. Если pszPath является абсолютным путем, задайте для hRelativeUSKeyзначение NULL. Затем ключ будет создан в HKEY_LOCAL_MACHINE или HKEY_CURRENT_USER в зависимости от значения dwFlags.

[out] phNewUSKey

Тип: PHUSKEY

Указатель на КЛЮЧ HUSKEY , который получит дескриптор нового ключа.

[in] dwFlags

Тип: DWORD

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

SHREGSET_HKCU

Создайте или откройте ключ в HKEY_CURRENT_USER. Создает ключ, только если он пуст.

SHREGSET_FORCE_HKCU

Создайте или откройте ключ в HKEY_CURRENT_USER. Создает ключ, даже если он не является пустым.

SHREGSET_HKLM

Создайте или откройте ключ в HKEY_LOCAL_MACHINE. Создает ключ, только если он пуст.

SHREGSET_FORCE_HKLM

Создайте или откройте ключ в HKEY_LOCAL_MACHINE. Создает ключ, даже если он не является пустым.

SHREGSET_DEFAULT

Создайте или откройте ключ в HKEY_CURRENT_USER (принудительно) и HKEY_LOCAL_MACHINE (только если он пуст). Этот флаг эквивалентен (SHREGSET_FORCE_HKCU | SHREGSET_HKLM).

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

Тип: LSTATUS

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

Комментарии

Если вы хотите записать значения в новый ключ, используйте SHRegWriteUSValue для записи каждого значения, передав дескриптор HUSKEY , возвращаемый через phNewUSKey. Завершив, закройте раздел реестра для конкретного пользователя с помощью shRegCloseUSKey.

Примечание

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

Требования

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