Compartir a través de


Método IVssHardwareSnapshotProvider::AreLunsSupported (vsprov.h)

El método AreLunsSupported determina si el proveedor de hardware admite la creación de instantáneas para todos los LUN que contribuyen al volumen. VSS llama al método AreLunsSupported para cada volumen que se agrega al conjunto de instantáneas. Antes de llamar a este método, VSS determina los LUN que contribuyen al volumen.

Para un volumen específico, cada LUN solo puede contribuir una vez. Un LUN específico puede contribuir a varios volúmenes.

Nota Los proveedores de hardware solo se admiten en sistemas operativos Windows Server.
 

Sintaxis

HRESULT AreLunsSupported(
  [in]      LONG                lLunCount,
  [in]      LONG                lContext,
  [in]      VSS_PWSZ            *rgwszDevices,
  [in, out] VDS_LUN_INFORMATION *pLunInformation,
  [out]     BOOL                *pbIsSupported
);

Parámetros

[in] lLunCount

Recuento de LUN que contribuyen a este volumen de instantáneas.

[in] lContext

Contexto de instantánea para el conjunto de instantáneas actual como se enumera mediante una máscara de bits de marcas de la enumeración _VSS_VOLUME_SNAPSHOT_ATTRIBUTES . Si se establece la marca VSS_VOLSNAP_ATTR_TRANSPORTABLE , se puede transportar el conjunto de instantáneas.

[in] rgwszDevices

Lista de dispositivos correspondientes a los LUN que se van a copiar.

[in, out] pLunInformation

Matriz de estructuras de VDS_LUN_INFORMATION lLunCount, una para cada LUN que contribuye a este volumen de instantáneas.

[out] pbIsSupported

Puntero a un valor BOOL . Si se admiten todos los dispositivos para la instantánea, el proveedor debe almacenar un valor TRUE en la ubicación a la que apunta pbIsSupported.

Valor devuelto

Este método puede devolver uno de estos valores.

Código o valor devuelto Descripción
S_OK
0x00000000L
La operación se completó correctamente.
E_OUTOFMEMORY
0x8007000EL
Memoria insuficiente u otros recursos del sistema.
E_INVALIDARG
0x80070057L
Uno de los valores de parámetro no es válido.
VSS_E_PROVIDER_VETO
0x80042306L
Error inesperado del proveedor. El proveedor debe notificar un evento en el registro de eventos de la aplicación que proporciona al usuario información sobre cómo resolver el problema.

Comentarios

Si el subsistema de hardware admite las instrucciones SCSI Inquiry Data and Vital Product Data page 80 (device serial number) and page 83 (device identity), el proveedor no debe tener que modificar las estructuras de la matriz pLunInformation .

En cualquier caso, el método AreLunsSupported no debe modificar el valor del miembro m_rgInterconnects de ninguna estructura de VDS_LUN_INFORMATION en la matriz pLunInformation .

Si el proveedor admite la creación de instantáneas de hardware para todos los LUN de la matriz pLunInformation , debe devolver TRUE en el valor BOOL al que apunta el parámetro pbIsSupported . Si el proveedor no admite instantáneas de hardware para uno o varios LUN, debe establecer este valor BOOL en FALSE.

El proveedor nunca debe aceptar crear instantáneas si no puede, incluso si el problema es solo temporal. Si una condición transitoria, como los recursos bajos, hace imposible que el proveedor cree una instantánea con uno o más LUN cuando se llama a AreLunsSupported , el proveedor debe establecer el valor BOOL en FALSE.

Requisitos

Requisito Value
Cliente mínimo compatible No se admite ninguno
Servidor mínimo compatible Windows Server 2003 [solo aplicaciones de escritorio]
Plataforma de destino Windows
Encabezado vsprov.h

Consulte también

IVssHardwareSnapshotProvider

VDS_LUN_INFORMATION

_VSS_VOLUME_SNAPSHOT_ATTRIBUTES