Функция RegDeleteKeyA (winreg.h)
Удаляет подраздел и его значения. Обратите внимание, что в именах ключей регистр не учитывается.
64-разрядная версия Windows: В WOW64 32-разрядные приложения просматривают дерево реестра, отдельное от дерева реестра, которое просматривает 64-разрядные приложения. Чтобы разрешить приложению удалять запись в альтернативном представлении реестра, используйте функцию RegDeleteKeyEx .
Синтаксис
LSTATUS RegDeleteKeyA(
[in] HKEY hKey,
[in] LPCSTR lpSubKey
);
Параметры
[in] hKey
Дескриптор открытого раздела реестра. Права доступа для этого ключа не влияют на операцию удаления. Дополнительные сведения о правах доступа см. в разделе Безопасность раздела реестра и права доступа.
Этот дескриптор возвращается функцией RegCreateKeyEx или RegOpenKeyEx или может быть одним из следующих предопределенных ключей:
- HKEY_CLASSES_ROOT
- HKEY_CURRENT_CONFIG
- HKEY_CURRENT_USER
- HKEY_LOCAL_MACHINE
- HKEY_USERS
[in] lpSubKey
Имя удаляемого ключа. Это должен быть подраздел ключа, определяемого hKey , но он не может содержать подразделы. Этот параметр не может иметь значение NULL.
Функция открывает подраздел с правой кнопкой доступа DELETE.
В именах ключей регистр не учитывается.
Дополнительные сведения см. в разделе Ограничения размера элементов реестра.
Возвращаемое значение
Если функция выполняется успешно, возвращаемое значение будет ERROR_SUCCESS.
Если функция завершается сбоем, возвращаемое значение представляет собой ненулевой код ошибки, определенный в Winerror.h. Чтобы получить общее описание ошибки, можно использовать функцию FormatMessage с флагом FORMAT_MESSAGE_FROM_SYSTEM.
Комментарии
Удаленный ключ не удаляется, пока не будет закрыт последний дескриптор.
У удаляемого подраздела не должно быть подразделов. Чтобы удалить ключ и все его подразделы, необходимо перечислить подразделы и удалить их по отдельности. Для рекурсивного удаления ключей используйте функцию RegDeleteTree или SHDeleteKey .
Примеры
Пример использования этой функции см. в разделе Удаление ключа с подразделами.
Примечание
В устаревших версиях Windows этот API также предоставляется kernel32.dll.
Примечание
Заголовок winreg.h определяет RegDeleteKey в качестве псевдонима, который автоматически выбирает версию ANSI или Юникод этой функции на основе определения константы препроцессора ЮНИКОДа. Использование псевдонима, не зависящий от кодирования, с кодом, который не является нейтральным для кодировки, может привести к несоответствиям, которые приводят к ошибкам компиляции или времени выполнения. Дополнительные сведения см. в разделе Соглашения для прототипов функций.
Требования
Минимальная версия клиента | Windows 2000 Professional [только классические приложения] |
Минимальная версия сервера | Windows 2000 Server [только классические приложения] |
Целевая платформа | Windows |
Header | winreg.h (включая Windows.h) |
Библиотека | Advapi32.lib |
DLL | Advapi32.dll |