Метод IVssHardwareSnapshotProvider::FillInLunInfo (vsprov.h)
Метод FillInLunInfo предлагает поставщику оборудования указать, поддерживает ли он соответствующее дисковое устройство, и исправить все упущения в структуре VDS_LUN_INFORMATION . VSS вызывает метод FillInLunInfo после метода IVssHardwareSnapshotProvider::LocateLuns или перед методом IVssHardwareSnapshotProvider::OnLunEmpty , чтобы получить VDS_LUN_INFORMATION структуру, связанную с теневой копией LUN. VSS сравнит VDS_LUN_INFORMATION структуру, полученную в методе IVssHardwareSnapshotProvider::GetTargetLuns , чтобы определить LUN теневой копии. Если структуры не совпадают, инициатор запроса получит VSS_S_SOME_SNAPSHOTS_NOT_IMPORTED, что указывает на несоответствие.
Синтаксис
HRESULT FillInLunInfo(
[in] VSS_PWSZ wszDeviceName,
[in, out] VDS_LUN_INFORMATION *pLunInfo,
[out] BOOL *pbIsSupported
);
Параметры
[in] wszDeviceName
Устройство, соответствующее теневой копии LUN.
[in, out] pLunInfo
Структура VDS_LUN_INFORMATION для теневой копии LUN.
[out] pbIsSupported
Поставщик должен вернуть значение TRUE в расположении, на которое указывает параметр pbIsSupported , если устройство поддерживается.
Возвращаемое значение
VSS игнорирует возвращаемое значение этого метода.
Windows Server 2003: VSS не игнорирует возвращаемое значение, которое может быть одним из следующих значений.
Возвращаемый код/значение | Описание |
---|---|
|
Операция успешно завершена. |
|
Нехватка памяти или других системных ресурсов. |
|
Одно из значений параметра недопустимо. |
|
Произошла непредвиденная ошибка поставщика. Поставщик должен сообщить о событии в журнале событий приложения, предоставляя пользователю сведения о том, как устранить проблему. |
Комментарии
VSS вызывает метод FillInLunInfo для каждой структуры VDS_LUN_INFORMATION , которую поставщик ранее инициализировал в своем методе GetTargetLuns . VSS также вызывает метод FillInLunInfo для каждого нового дискового устройства, которое поступает в систему во время импорта.
Поставщик может исправить любые упущения в VDS_LUN_INFORMATION структуре, полученной в параметре pLunInfo . Однако поставщик не должен изменять значение m_rgInterconnects члена этой структуры.
Элементы структуры VDS_LUN_INFORMATION соответствуют данным запроса SCSI и странице 80 жизненно важных данных о продукте (серийный номер устройства), за следующими исключениями:
- Элемент m_version должен иметь значение VER_VDS_LUN_INFORMATION.
- Элемент m_BusType игнорируется при сравнении во время импорта. Это значение зависит от стека хранилища PnP на соответствующем дисковом устройстве. Обычно это VDSBusTypeScsi.
- Элемент m_diskSignature игнорируется при сравнении во время импорта. Поставщик должен задать для этого элемента значение GUID_NULL.
Если метод FillInLunInfo вызывается для LUN, неизвестного поставщику, поставщик не должен возвращать ошибку. Вместо этого он должен возвращать значение FALSE в значении BOOL , на которое указывает параметр pbIsSupported , и возвращать успешное выполнение. Если поставщик распознает LUN, ему следует задать значение BOOL в значение TRUE.
Требования
Требование | Значение |
---|---|
Минимальная версия клиента | Ни одна версия не поддерживается |
Минимальная версия сервера | Windows Server 2003 [только классические приложения] |
Целевая платформа | Windows |
Header | vsprov.h |