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


Функция 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 HUSKEY, который возвращается через phNewUSKey. По завершении закройте раздел реестра для конкретного пользователя с SHRegCloseUSKey.

Заметка

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

Требования

Требование Ценность
минимальные поддерживаемые клиентские Windows 2000 Профессиональный, Windows XP [только классические приложения]
минимальный поддерживаемый сервер Windows 2000 Server [только классические приложения]
целевая платформа Виндоус
заголовка shlwapi.h
библиотеки Shlwapi.lib
DLL Shlwapi.dll (версия 4.71 или более поздняя)