| Предыдущий | Следующий |
| VDS_E_NO_PNP_DISK_REMOVE | VDS_E_PROVIDER_EXITING |
VDS_E_NO_PNP_VOLUME_REMOVE
Практический смысл
VDS_E_NO_PNP_VOLUME_REMOVE относится к Virtual Disk Service и topology тома. Конкретный признак: состояние «no pnp volume remove». Смысл кода следует проверять на том объекте и generation, где он был возвращён впервые.
Это failure HRESULT; успешность следующего шага подтверждайте отдельным результатом, а не отсутствием исключения в верхнем слое. В первую очередь проверяйте топологию volume/plex/member, health участников и ограничения файловой системы. Не переносите вывод с соседнего HRESULT только потому, что у него тот же facility или общий компонент.
Специфичные признаки исходного описания
VDS treats volumes as independent notification subjects, so a disk can remain present while one volume disappears because of layout, plex, import, or provider changes.
Why this state matters Before forcing cleanup, compare the current VDS volume enumeration and access paths with the object ID that was supposed to depart.
Removing drive letters or mounted folders does not prove that a volume object has departed, and stale object references should be resolved through the current VDS service view.
Compare volume departure notifications with current volume enumeration after the provider state settles.
Что сохранить до исправления
- volume/plex/member IDs и типы
- health/status каждого участника и карта extent
- операция, requested size и фактический layout до изменения
Как проверить границу
Если состояние исчезает после повторной enumeration, отдельно проверьте race между получением объекта и вызовом метода. Для состояния «состояние «no pnp volume remove»» сначала воспроизведите минимальную операцию без параллельных изменений конфигурации, затем сравните before/after evidence.
Исправление и повтор
Исправляйте только подтверждённый prerequisite на уровне Virtual Disk Service и topology тома: входной параметр, capability, object state, provider/graph topology или внешний ресурс. После изменения заново получите актуальные объекты, если их состояние могло устареть, и повторите исходный минимальный вызов.
Технические ссылки
Нужно найти другой код? Найти другой код состояния или ошибки.
