| Предыдущий | Следующий |
| ERROR_BADDB | ERROR_CANTOPEN |
ERROR_BADKEY
Операция реестра получила недопустимый раздел
API реестра работают с предопределёнными корневыми дескрипторами или дескрипторами, возвращёнными успешными операциями открытия или создания. ERROR_BADKEY означает, что сам контекст раздела недопустим для попытки операции с реестром конфигурации. Это отличается от ERROR_CANTOPEN, где Windows не смогла открыть именованный раздел, и от ERROR_KEY_DELETED, где ранее допустимый раздел перешёл в состояние удаления.
Проверьте время жизни дескриптора и точную последовательность API. Устаревший, перезаписанный, неправильно маршалированный или неинициализированный HKEY может привести к сбою последующих чтений и записей ещё до учёта имени значения. В коде, переключающемся между локальным и удалённым контекстом реестра, убедитесь, что дескрипторы не используются после закрытия соединения или куста-владельца. Регистрируйте корневой раздел, строку подраздела, результат вызова открытия или создания и место выполнения RegCloseKey.
Что проверить
- Убедитесь, что каждый HKEY получен из успешной операции открытия или создания.
- Проверьте использование после RegCloseKey и случайную перезапись дескрипторов.
- Отличайте недопустимый дескриптор от отсутствующего имени подраздела.
Ссылки
Нужно найти другой код? Найти другой код состояния или ошибки.
