Поделиться через


Метод IVssHardwareSnapshotProviderEx::OnLunStateChange (vsprov.h)

Служба VSS вызывает этот метод для уведомления поставщиков оборудования об изменении состояния LUN.

Поставщики оборудования поддерживаются только в операционных системах Windows Server.
 

Синтаксис

HRESULT OnLunStateChange(
  [in] VDS_LUN_INFORMATION *pSnapshotLuns,
  [in] VDS_LUN_INFORMATION *pOriginalLuns,
  [in] DWORD               dwCount,
  [in] DWORD               dwFlags
);

Параметры

[in] pSnapshotLuns

Указатель на массив структур dwCountVDS_LUN_INFORMATION, по одному для каждого LUN, который вносит вклад в том теневого копирования.

[in] pOriginalLuns

Указатель на массив структур dwCountVDS_LUN_INFORMATION по одному для каждого LUN, который вносит свой вклад в исходный том.

[in] dwCount

Количество элементов в массиве pSnapshotLuns. Это также число элементов в массиве pOriginalLuns.

[in] dwFlags

Битовая маска флагов _VSS_HARDWARE_OPTIONS, которые предоставляют сведения об изменении состояния, которое произошло теневой копией LUN. В следующей таблице описывается, как каждый флаг используется в этом параметре.

Ценность Значение
VSS_ONLUNSTATECHANGE_NOTIFY_READ_WRITE
0x00000100
Теневая копия LUN будет преобразована безвозвратно для чтения и записи.
VSS_ONLUNSTATECHANGE_NOTIFY_LUN_PRE_RECOVERY
0x00000200
Теневая копия LUN будет временно преобразована в чтение и запись и будет проходить восстановление TxF или автоматическое восстановление VSS.
VSS_ONLUNSTATECHANGE_NOTIFY_LUN_POST_RECOVERY
0x00000400
Теневая копия LUN только что прошли восстановление TxF или автоматическое восстановление VSS и были преобразованы обратно в только для чтения.
VSS_ONLUNSTATECHANGE_DO_MASK_LUNS
0x00000800
Теневая копия LUN должна быть маскирована с текущего компьютера, но не удалена.

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

Этот метод может возвращать одно из этих значений.

Возврат кода или значения Описание
S_OK
0x000000000L
Операция успешно завершена.
E_OUTOFMEMORY
0x800700EL
Вне памяти или других системных ресурсов.
E_INVALIDARG
0x80070057L
Одно из значений параметров недопустимо.
VSS_E_PROVIDER_VETO
0x80042306L
Произошла непредвиденная ошибка поставщика. Если это возвращается, ошибка должна быть описана в записи в журнале событий приложения, предоставляя пользователю сведения о том, как устранить проблему.

Требования

Требование Ценность
минимальные поддерживаемые клиентские Не поддерживается
минимальный поддерживаемый сервер Windows Server 2008 [только классические приложения]
целевая платформа Виндоус
заголовка vsprov.h

См. также

IVssHardwareSnapshotProviderEx