Что означает код ошибки Windows 1021 (ERROR_CHILD_MUST_BE_VOLATILE)?

 
Предыдущий Следующий
ERROR_KEY_HAS_CHILDREN ERROR_NOTIFY_ENUM_DIR

ERROR_CHILD_MUST_BE_VOLATILE

Стабильный раздел реестра нельзя создать под временным родителем

RegCreateKeyEx может создать раздел с REG_OPTION_VOLATILE, при котором сведения хранятся в памяти и не сохраняются после выгрузки соответствующего куста. Windows обеспечивает соответствие жизненного цикла такого родителя и его потомков. Эта ошибка сообщает о попытке создать постоянное дочернее состояние под родителем с временным жизненным циклом.

Проследите параметры, использованные при создании родительского и дочернего разделов. Обычный дефект — вспомогательная функция, всегда создающая постоянные разделы, даже когда она вызвана внутри временного поддерева среды выполнения. Решите, является ли дочерний раздел временным состоянием и тоже должен быть volatile, либо данные должны сохраняться и находиться под постоянным родителем. Изменение только флага дочернего раздела без анализа жизненного цикла может скрыть архитектурное несоответствие и привести к исчезновению конфигурации после перезагрузки или выгрузки куста.

Что проверить

  • Запишите флаги REG_OPTION_* при создании родителя и потомка.
  • Выбирайте временность исходя из ожидаемого жизненного цикла всего поддерева.
  • Перенесите постоянную конфигурацию под постоянный родитель вместо смешивания жизненных циклов.

Ссылки


Нужно найти другой код? Найти другой код состояния или ошибки.