Compartir a través de


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

El método GetTargetLuns solicita al proveedor de hardware que inicialice las estructuras de VDS_LUN_INFORMATION para los LUN de instantánea recién creados. Se llama al método GetTargetLuns después del método IVssProviderCreateSnapshotSet::P ostCommitSnapshots . La identificación de la información de cada LUN recién creada se devuelve a VSS a través de estructuras VDS_LUN_INFORMATION .

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

Sintaxis

HRESULT GetTargetLuns(
  [in]      LONG                lLunCount,
  [in]      VSS_PWSZ            *rgDeviceNames,
  [in]      VDS_LUN_INFORMATION *rgSourceLuns,
  [in, out] VDS_LUN_INFORMATION *rgDestinationLuns
);

Parámetros

[in] lLunCount

Recuento de LUN que contribuyen al volumen original.

[in] rgDeviceNames

Puntero a una matriz de punteros lLunCount a cadenas. Cada cadena contiene el nombre de un LUN original que se va a copiar en la sombra.

[in] rgSourceLuns

Puntero a una matriz de estructuras de VDS_LUN_INFORMATION lLunCount, una para cada LUN que contribuye al volumen original.

[in, out] rgDestinationLuns

Puntero a una matriz de estructuras de VDS_LUN_INFORMATION lLunCount, una para cada LUN de instantánea nueva creada durante el procesamiento de instantáneas. Debe haber una correspondencia uno a uno entre los elementos de las matrices rgSourceLuns y rgDestinationLuns .

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

En el parámetro rgDestinationLuns , VSS proporciona una estructura de VDS_LUN_INFORMATION vacía para cada LUN de instantánea recién creada. Los LUN de instantáneas no aparecen ni son visibles para el sistema. El proveedor debe inicializar los miembros de la estructura de VDS_LUN_INFORMATION con los datos de consulta SCSI adecuados y la página 80 (número de serie del dispositivo) y la página 83 (identidad del dispositivo). La estructura debe contener valores de miembro correctos para que Windows pueda ubicar los LUN de instantáneas desde el equipo original o cualquier otro equipo conectado a la SAN.

Los miembros de la estructura VDS_LUN_INFORMATION corresponden a la información de la página 80, con las siguientes excepciones:

  • El miembro m_version debe establecerse en VER_VDS_LUN_INFORMATION.
  • El miembro m_BusType se omite en comparaciones durante la importación. Este valor depende de la pila de almacenamiento PnP en el dispositivo de disco correspondiente. Normalmente, se trata de VDSBusTypeScsi.
  • El miembro m_diskSignature se omite en comparaciones durante la importación. El proveedor debe establecer este miembro en GUID_NULL.
Los miembros de la estructura de VDS_STORAGE_DEVICE_ID_DESCRIPTOR (en el miembro m_deviceIdDescriptor de la estructura VDS_LUN_INFORMATION ) corresponden a la información de la página 83. En esta estructura, cada estructura VDS_STORAGE_IDENTIFIER corresponde a la estructura STORAGE_IDENTIFIER de un identificador de dispositivo (es decir, un identificador de almacenamiento con un tipo de asociación de cero). Para obtener más información sobre la estructura de STORAGE_IDENTIFIER, consulta la documentación del Kit de controladores de Windows (WDK).

Las estructuras de VDS_LUN_INFORMATION devueltas aquí deben ser las mismas que las que se proporcionan en el método IVssHardwareSnapshotProvider::FillInLunInfo durante la importación para que VSS pueda usar esta información para identificar los LUN de instantánea recién llegados en la importación. Estas mismas estructuras se pasarán al proveedor en el método IVssHardwareSnapshotProvider::LocateLuns .

Requisitos

   
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