| Предыдущий | Следующий |
| VDS_E_VOLUME_GUID_PATHNAME_NOT_ALLOWED | VDS_E_DELETE_WITH_CRITICAL |
VDS_E_BOOT_PAGEFILE_DRIVE_LETTER
Практический смысл
Значение локализует отказ в Virtual Disk Service object/state validation. Для VDS_E_DRIVE_LETTER_NOT_FREE проверяется состояние диск буква не свободное; позднее сообщение UI или service wrapper может уже описывать вторичный эффект.
Virtual Disk Service представляет storage как объекты disk, volume, plex, provider, initiator и asynchronous operations; свойства одного слоя нельзя автоматически переносить на другой.
Специфичные признаки исходной документации
IVdsVolumeMF::AddAccessPath · IVdsVolumeMF::DeleteAccessPath · IVdsService::QueryDriveLetters · VDS_DISK_FLAG · MS-VDS error codes
Confirm whether the containing disk has BOOT_DISK or PAGEFILE_DISK role flags.
This HRESULT protects the access-path identity of two active system roles: the current boot volume and a volume hosting the paging file.
IVdsService::QueryDriveLetters reports which drive letters are in use, while VDS disk flags expose boot/pagefile roles at disk level.
Минимальный диагностический снимок
- VDS disk/provider object ID, status/health/flags и generation.
- SAN/cluster/read-only/offline/pack state, относящийся к операции.
- точный VDS method, provider/driver return и IVdsAsync final HRESULT.
VDS устарел как API, но его HRESULT по-прежнему полезен как указатель на точный contract старого storage stack. Важно сохранить object ID и final IVdsAsync result до Refresh или rescan.
Как отличить соседний результат
Сопоставьте первый failing call с рабочим примером на той же версии Windows/provider. Меняйте только prerequisite «диск буква не свободное» и сохраняйте остальные параметры неизменными.
Условие «диск буква не свободное» проверяйте на том VDS object и method, который вернул HRESULT. Partition, volume, plex, provider и asynchronous completion имеют разные контракты и не должны сливаться в один storage error.
Критерий восстановления
Устраните VDS condition «диск буква не свободное» на актуальном object generation, выполните Refresh при изменении состояния и повторите исходный method, дождавшись final asynchronous HRESULT.
Технические ссылки
- IVdsVolumeMF::AddAccessPath.
- IVdsVolumeMF::DeleteAccessPath.
- IVdsService::QueryDriveLetters.
- VDS_DISK_FLAG.
- MS-VDS error codes.
Нужно найти другой код? Найти другой код состояния или ошибки.