Compartilhar via


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

O método AreLunsSupported determina se o provedor de hardware dá suporte à criação de cópia de sombra para todos os LUNs que contribuem para o volume. O VSS chama o método AreLunsSupported para cada volume adicionado ao conjunto de cópias de sombra. Antes de chamar esse método, o VSS determina os LUNs que contribuem para o volume.

Para um volume específico, cada LUN pode contribuir apenas uma vez. Um LUN específico pode contribuir para vários volumes.

Nota Os provedores de hardware só têm suporte em sistemas operacionais Windows Server.
 

Sintaxe

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

Contagem de LUNs que contribuem para esse volume de cópia de sombra.

[in] lContext

Contexto de cópia de sombra para o conjunto de cópias de sombra atual como enumerado por uma máscara de bits de sinalizadores da enumeração _VSS_VOLUME_SNAPSHOT_ATTRIBUTES . Se o sinalizador VSS_VOLSNAP_ATTR_TRANSPORTABLE estiver definido, o conjunto de cópias de sombra será transportável.

[in] rgwszDevices

Lista de dispositivos correspondentes aos LUNs a serem copiados por sombra.

[in, out] pLunInformation

Matriz de estruturas de VDS_LUN_INFORMATIONlLunCount, uma para cada LUN que contribui para esse volume de cópia de sombra.

[out] pbIsSupported

Ponteiro para um valor BOOL . Se todos os dispositivos tiverem suporte para cópia de sombra, o provedor deverá armazenar um valor TRUE no local apontado por pbIsSupported.

Retornar valor

Esse método pode retornar um desses valores.

Valor/código retornado Descrição
S_OK
0x000000000L
A operação foi concluída com êxito.
E_OUTOFMEMORY
0x8007000EL
Sem memória ou outros recursos do sistema.
E_INVALIDARG
0x80070057L
Um dos valores de parâmetro não é válido.
VSS_E_PROVIDER_VETO
0x80042306L
Ocorreu um erro inesperado do provedor. O provedor deve relatar um evento no log de eventos do aplicativo fornecendo ao usuário informações sobre como resolve o problema.

Comentários

Se o subsistema de hardware der suporte às diretrizes scsi inquiry data e vital product data page 80 (número de série do dispositivo) e página 83 (identidade do dispositivo), o provedor não deve precisar modificar as estruturas na matriz pLunInformation .

De qualquer forma, o método AreLunsSupported não deve modificar o valor do membro m_rgInterconnects de qualquer estrutura VDS_LUN_INFORMATION na matriz pLunInformation .

Se o provedor der suporte à criação de cópia de sombra de hardware para todos os LUNs na matriz pLunInformation , ele deverá retornar TRUE no valor BOOL para o qual o parâmetro pbIsSupported aponta. Se o provedor não der suporte a cópias de sombra de hardware para um ou mais LUNs, ele deverá definir esse valor BOOL como FALSE.

O provedor nunca deve concordar em criar cópias de sombra se não puder, mesmo que o problema seja apenas temporário. Se uma condição transitória, como recursos baixos, torna impossível para o provedor criar uma cópia de sombra usando um ou mais LUNs quando AreLunsSupported for chamado, o provedor deverá definir o valor BOOL como FALSE.

Requisitos

Requisito Valor
Cliente mínimo com suporte Nenhum compatível
Servidor mínimo com suporte Windows Server 2003 [somente aplicativos da área de trabalho]
Plataforma de Destino Windows
Cabeçalho vsprov.h

Confira também

IVssHardwareSnapshotProvider

VDS_LUN_INFORMATION

_VSS_VOLUME_SNAPSHOT_ATTRIBUTES