Что означает код HRESULT 0x8004270F (VDS_E_NO_DISK_PATHNAME)?

 
Предыдущий Следующий
VDS_E_MULTIPLE_DISCOVERY_DOMAINS VDS_E_ISCSI_LOGOUT_INCOMPLETE

VDS_E_NO_DISK_PATHNAME

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

VDS_E_NO_DISK_PATHNAME относится к Virtual Disk Service и disk management. Конкретный признак: для диска отсутствует ожидаемый pathname. Смысл кода следует проверять на том объекте и generation, где он был возвращён впервые.

Это failure HRESULT; успешность следующего шага подтверждайте отдельным результатом, а не отсутствием исключения в верхнем слое. В первую очередь проверяйте disk/pack/partition state, policy и фактический layout, который VDS видел в момент вызова. Не переносите вывод с соседнего HRESULT только потому, что у него тот же facility или общий компонент.

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

  • Correlate the object with the current disk device instance instead of assuming the previously cached pathname is still valid.
  • Why this state matters The failure is not equivalent to “disk not found.” The VDS object may already have been enumerated.
  • A disk can be present in the VDS object model while the service fails to obtain the pathname needed by operations that address the Windows disk device.
  • Distinguish pathname retrieval failure from later access-denied or I/O errors that occur after a valid disk device has been opened.

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

  • disk/pack IDs, partition style и online/offline state
  • layout/extent snapshot и system/boot/pagefile flags
  • provider event или storage-path event, предшествующий HRESULT

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

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

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

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

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


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