Метод IVdsLun::AddPlex (vds.h)

[Начиная с Windows 8 и Windows Server 2012 COM-интерфейс службы виртуальных дисков замечается API управления хранилищем Windows.]

Добавляет LUN в целевой LUN в качестве нового плекса.

Синтаксис

HRESULT AddPlex(
  [in]  VDS_OBJECT_ID lunId,
  [out] IVdsAsync     **ppAsync
);

Параметры

[in] lunId

GUID LUN, добавляемого в виде плекса.

[out] ppAsync

Адрес указателя интерфейса IVdsAsync , который VDS инициализирует при возврате. Вызывающие элементы должны освободить интерфейс. Используйте этот интерфейс для отмены, ожидания или запроса состояния операции.

Возвращаемое значение

Этот метод может возвращать стандартные значения HRESULT, такие как E_INVALIDARG или E_OUTOFMEMORY, а также возвращаемые значения VDS. Он также может возвращать преобразованные коды системных ошибок с помощью макроса HRESULT_FROM_WIN32 . Ошибки могут возникать из самого VDS или из используемого базового поставщика VDS . Возможные возвращаемые значения включают следующие.

Возвращаемый код или значение Описание
VDS_E_PROVIDER_CACHE_CORRUPT
0x8004241FL
Это возвращаемое значение сигнализирует о проблеме программного обеспечения или связи внутри поставщика, который кэширует сведения о массиве. Для восстановления кэша используйте метод IVdsHwProvider::Reenumerate , за которым следует метод IVdsHwProvider::Refresh .
VDS_E_OBJECT_DELETED
0x8004240BL
Объект LUN больше не присутствует.
VDS_E_OBJECT_STATUS_FAILED
0x80042431L
LUN находится в состоянии сбоя и не может выполнить запрошенную операцию.
VDS_E_ANOTHER_CALL_IN_PROGRESS
0x80042404L
Выполняется еще одна операция. Эта операция не может продолжаться до завершения предыдущей операции или операций.
VDS_E_OBJECT_NOT_FOUND
0x80042405L
Его можно вернуть из любого метода, который принимает константу VDS_OBJECT_ID . Он указывает, что идентификатор не ссылается на существующий объект.
VDS_E_INVALID_OPERATION
0x80042415L
Недопустимая операция. Кроме того, исходный LUN меньше целевого LUN. Если исходный LUN больше целевого LUN, целевой LUN остается прежним, и операция выполняется успешно.

Комментарии

После того как вызывающий объект добавит новый LUN в виде плекса, он больше не отображается как LUN. Если вызывающий объект
добавляет зеркальный LUN, VDS включает каждый из них в виде дискретного. Все данные в добавленном LUN теряются.

Реализующие объекты должны возвращать указатель на интерфейс IVdsAsync для этого метода независимо от того, инициирует ли вызов асинхронную операцию.

Требования

Требование Значение
Минимальная версия клиента Windows Vista [только классические приложения]
Минимальная версия сервера Windows Server 2003 [только классические приложения]
Целевая платформа Windows
Header vds.h
Библиотека Uuid.lib

См. также раздел

IVdsAsync

IVdsHwProvider::Reenumerate

IVdsHwProvider::Refresh

IVdsLun