15 сент. 2010 г.

RegFlushKey


Функция RegFlushKey записывает все атрибуты указанного открытого ключа в реестр.
LONG RegFlushKey(
    HKEY hKey  // дескриптор записываемого ключа.
);
Параметры:
hKeyИдентифицирует уже открытый ключ или один из предопределенных дескрипторов:

HKEY_CLASSES_ROOT
HKEY_CURRENT_USER
HKEY_LOCAL_MACHINE
HKEY_USERS
HKEY_CURRENT_CONFIG

Возвращаемые значения:
Если функция успешна, возвращается значение ERROR_SUCCESS.

При ошибке, возвращаемое значение – это код ошибки, объявленный в WINERROR.H. Вы можете использовать функцию FormatMessage с флагом FORMAT_MESSAGE_FROM_SYSTEM для получения общего описания ошибки.
Замечания:
Изменения в реестре сбрасываются на диск. Также, они сбасываются при завершении работы системы.

В отличии от RegCloseKey, функция RegFlushKey возвращается только тогда, когда все данные будут записаны в реестр.

Функция RegFlushKey может, также, записать части всех других ключей. Вызывайте эту функцию только при крайней необходимости потому, что ваше приложение потеряет в производительности.

Приложение может вызывать RegFlushKey только тогда, если нужна уверенность в том, что изменения в реестре будут находятся на диске. Вообще, RegFlushKey нужно использовать очень редко.