| Предыдущий | Следующий |
| VSS_E_ASRERROR_DYNAMIC_VHD_NOT_SUPPORTED | VDS_E_CANCEL_TOO_LATE |
VDS_E_OBJECT_DELETED
VDS_E_OBJECT_DELETED: смысл кода и диагностика
VDS_E_OBJECT_DELETED — HRESULT, относящийся к области Virtual Disk Service. Объект VDS уже удалён, а приложение использует устаревшую ссылку на него.
В случае VDS_E_OBJECT_DELETED код относится к Virtual Disk Service и описывает объект диска/тома/раздела, доступное пространство или допустимость операции в текущем состоянии.
Практический вывод для VDS_E_OBJECT_DELETED: этот HRESULT фиксирует описанное условие, но сам по себе не показывает, какой участник операции первым нарушил контракт. Для VDS_E_OBJECT_DELETED найдите первый вызов, вернувший статус, и только после этого меняйте конфигурацию подсистемы Virtual Disk Service.
Как читать имя VDS_E_OBJECT_DELETED
Имя VDS_E_OBJECT_DELETED помогает сузить поиск: OBJECT — объект API; DELETED — технический маркер «deleted». Эти части имени не заменяют документацию API, но позволяют проверить, что журнал и код относятся к одному и тому же условию.
Что проверить в первую очередь
В случае VDS_E_OBJECT_DELETED статус указывает на завершившийся жизненный цикл объекта или контекста. Применительно к VDS_E_OBJECT_DELETED повтор через прежний дескриптор обычно неверен — требуется заново получить или создать объект.
- Для VDS_E_OBJECT_DELETED найдите момент закрытия/удаления объекта и исключите использование устаревшей ссылки после этого события.
- При разборе VDS_E_OBJECT_DELETED повторно перечислите объекты VDS и убедитесь, что ссылка не устарела после изменения конфигурации.
- При разборе VDS_E_OBJECT_DELETED проверьте свободное и нераспределённое пространство, число разделов, файловую систему и занятость устройства.
- При разборе VDS_E_OBJECT_DELETED сделайте резервную копию перед операциями, меняющими разметку, и не тестируйте их на единственной копии данных.
- При разборе VDS_E_OBJECT_DELETED запишите идентификаторы диска, тома и provider, текущую разметку, роль системного/загрузочного тома и запрошенную операцию.
Диагностический минимум
- Для VDS_E_OBJECT_DELETED проверьте параллельные операции управления дисками и незавершённые async-операции.
- Для VDS_E_OBJECT_DELETED подтвердите исправление повторным перечитыванием разметки и проверкой файловой системы.
- Для VDS_E_OBJECT_DELETED сохраните вывод diskpart/list disk/list volume и свойства VDS до и после неуспешного вызова.
Граница корректного решения
В случае VDS_E_OBJECT_DELETED для VDS_E_OBJECT_DELETED недостаточно скрыть ошибку повтором. Применительно к VDS_E_OBJECT_DELETED после изменения воспроизведите исходную операцию, проверьте конечное состояние объекта и убедитесь, что ресурсы освобождаются без потери первичного HRESULT.
Ссылки по VDS_E_OBJECT_DELETED
Нужно найти другой код? Найти другой код состояния или ошибки.