| Предыдущий | Следующий |
| hrRestoreInProgress | hrInvalidRecips |
hrAlreadyOpen
Что означает этот результат
hrAlreadyOpen (0xC7FF0005) — код ошибки из области ESE / Directory Service backup HRESULT. Короткий ориентир по имени: уже / открыто. Для диагностики важнее определить первый API и состояние объекта в момент возврата, чем переводить символическое имя как общее сообщение.
Исходное условие в техническом описании сформулировано так: the backup context already has a file open when another file-open operation is attempted.
. Эту формулировку следует сопоставлять с фактическим параметром, handle, файлом или state transition в trace.
Граница контракта
Для этого кода особенно полезно различать два признака из исходной документации: the backup context already has a file open when another file-open operation is attempted.
и Code-specific observation: record the current filename, requested filename, HBC owner, and whether DsBackupClose was reached on every prior branch.
. Они задают более узкую границу, чем название facility.
Данные для диагностики
- Сопоставьте trace с исходным признаком:
It specifically means that the legacy context permits one current file; the result does not mean another process has the file open at the operating-system layer. Related values below can appear in the same workflow but require a different response:
- Сопоставьте trace с исходным признаком:
Relevant API surface — DsBackupPrepare /OpenFile/Read/Close/End and DsRestorePrepare /Register/Complete/End
- Сопоставьте trace с исходным признаком:
Beginning with Windows Vista, Microsoft directs new implementations to VSS instead of these legacy functions., the HBC state advances across calls and must be released even when a later step fails.
Порядок проверки
- Проверьте именно границу «уже / открыто» и зафиксируйте объект, аргумент или состояние, которое её подтверждает.
- Сверьте наблюдаемое состояние с отдельным исходным признаком:
Narrow corrective direction — close the current backup file and serialize file iteration within the context
.
Исправление и контроль
Регрессионная проверка должна отдельно контролировать условие do not reuse an HBC after end, abort, or a fatal sequence error.
. Положительный тест обязан проходить после узкого исправления, а отрицательный — по-прежнему воспроизводить ожидаемый отказ на заведомо неверном состоянии.
Технические ссылки
Нужно найти другой код? Найти другой код состояния или ошибки.