ФУНКЦИИ УПРАВЛЕНИЯ РЕЕСТРОМ WINDOWS
Введение
В табл.1 сведены все функции системного реестра, а описание основных следует непосредственно после таблицы.
Таблица 1 Сводка функций системного реестра
Функция Назначение RegCloseKey Закрывает открытый ключ системного реестра RegConnectRegistry Выполняет соединение с предопределенным дескриптором системного реестра на другом компьютере RegCreateKeyEx Создает новый подключ RegDeleteKey Удаляет ключ из системного реестра RegDeleteValue Удаляет значение из системного реестра RegDisablePredefinedCashe Отключает таблицу предопределенных дескрипторов системного реестра в ключе HKCU для текущего процесса RegEnumKeyEx Перечисляет все подключи данного ключа RegEnumValue Перечисляет все значения данного ключа RegFlushKey Сразу же записывает все изменения, произведенные в системном реестре RegLoadKey Загружает раздел в корневой ключ, находящийся на вершине иерархии RegNotifyChangeKeyValue Указывает на момент изменения ключа или значения в системном реестре RegOpenCurrentUser Открывает ключ HKCU для пользователя текущей потока RegOpenKeyEx Открывает существующий ключ системного реестра с расширением Win32 RegOverridePredefKey Переопределяет переопределенный ключ системного реестра в соответствии с указанным ключом системного реестра RegQueryInfoKey Возвращает информацию о ключе RegQueryMultipleValues Выбирает тип и данные для списка имен значений RegQueryValueEx Возвращает значение (с расширенными типами данных Win32) RegReplaceKey Заменяет ключ содержимым файла при перезапуске системы RegRestoreKey Считывает содержимое раздела ранее сохраненный ключ RegSaveKey Сохраняет значения и подключи данного ключа в файле улья RegSetValueEx Присваивает ключу значение (с новыми типами данных) RegUnLoadKey Удаляет раздел из системного реестра
1. Создание и открытие ключей
Для того чтобы работать с данными реестра, приложение должно сначала создать собственный ключ или открыть ключ, созданный ранее. Для создания ключа приложению необходимо вызвать функцию RegCreateKeyEx(), которая описана в файле winreg.h так:
LONG RegCreateKeyEx (HKEY hKey, LPCSTR lpSubKey, DWORD Reserved, LPSTR lpClass, DWORD dwOptions, REGSAM samDesired, LPSECURITY_ATTRIBUTES lpSecurityAttributes, PHKEY phkResult, LPDWORD lpdwDisposition)
Параметры:
hKey – хэндл ключа, под которым предполагается создать новый подключ.
lpSubKey – указатель на строку, завершающуюся нулевым символом в конце и содержащую имя нового ключа.
Reserved – резерв.
lpClass – указатель на строку, завершающуюся нулевым символом в конце и содержащую наименование класса нового ключа.
dwOptions – специальные опции для хранения данных, связанных с ключом. Задаются идентификатором с префиксом REG_OPTION_.
samDesired – доступ к ключу с требуемым уровнем защиты.
lpSecurityAttributes – атрибуты защиты ключа.
phkResult – указатель на переменную HKEY, которой присваивается хэндл нового ключа.
lpdwDisposition – указатель на переменную типа DWORD, которой присваивается значение состояния подключа (был создан или открыт).
Возвращаемое значение: если ключ создан или открыт удачно, то значение ERROR_SUCCESS. Любое другое значение является свидетельством того, что при создании или открытии ключа встретилась ошибка.
Первый аргумент - hKey -хэндл ранее открытого ключа или одно из следующих значений:
HKEY_CLASSES_ROOT;
HKEY_CURRENT_USER;
HKEY_LOCAL_MACHINE;
HKEY_USERS;
HKEY_DYN_DATA (Win 9x) или HKEY_PERFORMANCE_DATA (Win NT/2000)
При инсталляции Windows создаются пять ключей. ............