| Предыдущий | Следующий |
| VDS_E_INVALID_STRIPE_SIZE | VDS_E_INVALID_EXTENT_COUNT |
VDS_E_INVALID_DISK_COUNT
Где возник отказ
Этот HRESULT означает, что VDS disk object state, attributes и ownership отклонил условие vds input диск. До исправления сохраните producer, входные аргументы и object/session state, иначе последующий recovery сотрёт причинный контекст.
VDS устарел как API, но его HRESULT по-прежнему полезен как указатель на точный contract старого storage stack. Важно сохранить object ID и final IVdsAsync result до Refresh или rescan.
Специфичные признаки исходной документации
IVdsPack::CreateVolume · IVdsPack2::CreateVolume2 · the result · Volume Object · VDS_VOLUME_TYPE
CreateVolume2 also documents a hard array limit of 32 input objects because Windows permits no more than 32 disks in one volume.
Log the declared disk count and the actual number of initialized the result records.
Enforce the documented 32-input limit before entering CreateVolume2 .
Evidence до изменения состояния
- VDS disk/provider object ID, status/health/flags и generation.
- SAN/cluster/read-only/offline/pack state, относящийся к операции.
- точный VDS method, provider/driver return и IVdsAsync final HRESULT.
Операции над системным, shared/SAN или dynamic storage требуют осторожности: принудительный online/clean/delete способен превратить диагностическую ошибку в потерю данных.
Проверка одной гипотезы
Сопоставьте первый failing call с рабочим примером на той же версии Windows/provider. Меняйте только prerequisite «vds input диск» и сохраняйте остальные параметры неизменными.
Для «vds input диск» сравнивайте один и тот же disk object и layout generation. Offline/read-only/SAN/cluster/boot policy нельзя подменять общим выводом «диск недоступен».
Безопасный повтор
Устраните VDS condition «vds input диск» на актуальном object generation, выполните Refresh при изменении состояния и повторите исходный method, дождавшись final asynchronous HRESULT.
Технические ссылки
Нужно найти другой код? Найти другой код состояния или ошибки.
