Что означает код HRESULT 0x80042938 (VDS_E_VD_IS_BEING_DETACHED)?

 
Предыдущий Следующий
VDS_E_VD_IS_BEING_ATTACHED VDS_E_NO_POOL

VDS_E_VD_IS_BEING_DETACHED

Практический смысл

VDS_E_VD_IS_BEING_DETACHED относится к Virtual Disk Service и virtual disk. Конкретный признак: виртуальный диск сейчас отключается. Этот код локализует конкретную границу, а не общий сбой подсистемы.

Это failure HRESULT; успешность следующего шага подтверждайте отдельным результатом, а не отсутствием исключения в верхнем слое. В первую очередь проверяйте lifecycle виртуального диска: open/attach/detach/compact/expand/merge и соответствующую generation объекта. Не переносите вывод с соседнего HRESULT только потому, что у него тот же facility или общий компонент.

Специфичные признаки исходного описания

  • Once detached, reopen the virtual disk as required by the next operation and refresh its properties before reuse.
  • Another state-changing operation is rejected because the topology transition is incomplete.
  • VDS has begun detach, but the operating-system disk object associated with the virtual disk has not yet been removed.
  • Why this state matters The published state sequence is precise: after the disk object is removed, the virtual disk returns to OPEN; releasing the opened interface then returns it to ADDED.

Что сохранить до исправления

  • pathname и open flags виртуального диска
  • текущее attach/read-only/operation state до вызова
  • финальный IVdsAsync result и изменение состояния после операции

Как проверить границу

Сравнивайте повтор только с тем же типом объекта и тем же этапом операции; изменение topology или lifecycle уже означает другой эксперимент. Для состояния «виртуальный диск сейчас отключается» сначала воспроизведите минимальную операцию без параллельных изменений конфигурации, затем сравните before/after evidence.

Исправление и повтор

Исправляйте только подтверждённый prerequisite на уровне Virtual Disk Service и virtual disk: входной параметр, capability, object state, provider/graph topology или внешний ресурс. После изменения заново получите актуальные объекты, если их состояние могло устареть, и повторите исходный минимальный вызов.

Технические ссылки


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