Метод IVdsService::QueryUnallocatedDisks (vds.h)
[Начиная с Windows 8 и Windows Server 2012, COM-интерфейс службы виртуальных дисков замечается API управления хранилищем Windows.]
Возвращает объект перечисления, содержащий список нераспределенных дисков, управляемых VDS.
Синтаксис
HRESULT QueryUnallocatedDisks(
[out] IEnumVdsObject **ppEnum
);
Параметры
[out] ppEnum
Адрес указателя интерфейса IEnumVdsObject , который можно использовать для перечисления дисков в качестве объектов диска. Дополнительные сведения см. в разделе Работа с объектами перечисления. Вызывающие объекты должны освободить интерфейс и каждый из объектов диска, если они больше не нужны, вызвав метод IUnknown::Release .
Возвращаемое значение
Этот метод может возвращать стандартные значения HRESULT, такие как E_INVALIDARG или E_OUTOFMEMORY, а также возвращаемые значения VDS. Он также может возвращать коды преобразованных системных ошибок с помощью макроса HRESULT_FROM_WIN32 . Ошибки могут возникать из самого VDS или из используемого базового поставщика VDS . Возможные возвращаемые значения включают следующие.
Возвращаемый код/значение | Описание |
---|---|
|
Перечисление было успешно возвращено. |
|
Не удалось инициализировать VDS. Если приложение вызывает этот метод до завершения инициализации службы, метод блокируется до завершения инициализации. Если инициализация завершается сбоем, возвращается эта ошибка. |
Комментарии
Нераспределенный диск не запрашивается ни поставщиком. Он может содержать или не содержать сведения о формате раздела MBR или GPT. Часто это неинициализированный диск. Если состояние диска VDS_DS_ONLINE или VDS_DS_OFFLINE, диск нераспределен и не инициализирован. Если она VDS_DS_UNKNOWN, VDS_DS_NOT_READY, VDS_DS_FAILED или VDS_DS_MISSING, она не будет размещена, но служба VDS не может определить, инициализирована ли она, возможно, из-за проблем с диском.
Чтобы определить состояние диска, ознакомьтесь с элементом состоянияVDS_DISK_PROP или VDS_DISK_PROP2 структуры диска.
Если состояние диска VDS_DS_ONLINE, диск можно добавить в пакет.
Если состояние диска VDS_DS_OFFLINE, попробуйте подключить диск, вызвав IVdsDiskOnline::Online. Если вызов метода Online завершается успешно, диск можно добавить в пакет. Если вызов в сети завершается сбоем, диск нельзя использовать.
Требования
Требование | Значение |
---|---|
Минимальная версия клиента | Windows Vista [только классические приложения] |
Минимальная версия сервера | Windows Server 2003 [только классические приложения] |
Целевая платформа | Windows |
Header | vds.h |
Библиотека | Uuid.lib |