Азбука программирования в Win32 API


Азбука программирования в Win32 API - стр. 173


LPCSTR IpSubKey, DWORD ulOptions, REGSAM samDcsired, PHKEY phkResult);

WINADVAPI LONG APIENTRY RegOpcnKeyExW (HKEY hKey,

LPCWSTR IpSubKey, DWORD ulOptions, REGSAM samDesired, PHKEY phkResult);

tfifdcfUNICODE

ffdeime RcgOpenKeyEx RegOpenKcyExW

#elsc

/'define- RcgOpcnKeyEx KcgOpenKeyExA

#cndil"// 'UNICODE

.Надеюсь, что читатель, сравнив описания обеих функций, разберется с аргументами открывающей ключ функции самостоятельно (небольшая подсказка - полю Reserved функции RegCreateKeyExQ соответствует поле ulOptions).

Так, создавать и открывать ключи мы научились. Теперь необходимо научиться ключи закрывать.

207

ЗАКРЫТИЕ КЛЮЧЕЙ И СОХРАНЕНИЕ ПРОИЗВЕДЕННЫХ

В НИХ ИЗМЕНЕНИЙ

Закрывается ключ с помощью функции RegCloseKeyO, описание ко­торой, приведенное ниже, можно встретить в файле winreg.h:

WINADVAPI LONG APIENTRY RegCloseKey (HKEY hKey);

Единственным аргументом этой функции является хэндл закрываемого ключа. Но при выполнении этой функции читатель может встретиться с одной проблемой, незаметной с первого взгляда Дело в том, что данные из реестра на время работы с ними переписываются в кэш и записываются обратно на диск при выполнении функции RegFlushKeyO, описание которой имеет следующий вид:

WINADVAPI LONG APIENTRY RegFlushKey (HKEY hKey);

Другими словами, если вы не хотите, чтобы данные, которые вы из­менили во время работы программы, были потеряны, перед закрытием ключа сбрасывайте на диск. С другой стороны, у программиста может появиться соблазн сбрасывать данные на диск достаточно часто. Так как RegFlushKeyO использует огромное количество системных ресурсов, то эту функцию нужно вызывать только в том случае, когда действительно в этом есть необходимость.

ДОБАВЛЕНИЕ ДАННЫХ К КЛЮЧАМ И УДАЛЕНИЕ

ДАННЫХ ИЗ КЛЮЧЕЙ

После того, как ключ создан, возникает необходимость добавить к ключу некоторые данные, которые будут использоваться программой. Для этого нужно вызвать функцию RegSetValueExQ. Описание этой функции, которое приведено ниже, взято из файла winreg.h:




Начало  Назад  Вперед



Книжный магазин