Compartilhar via


Método IVdsLunMpio::GetLoadBalancePolicy (vdshwprv.h)

[A partir do Windows 8 e do Windows Server 2012, a interface COM do Serviço de Disco Virtual é substituída pela API de Gerenciamento de Armazenamento do Windows.]

Retorna a política de balanceamento de carga atual no LUN.

Sintaxe

HRESULT GetLoadBalancePolicy(
  [out] VDS_LOADBALANCE_POLICY_ENUM *pPolicy,
  [out] VDS_PATH_POLICY             **ppPaths,
  [out] LONG                        *plNumberOfPaths
);

Parâmetros

[out] pPolicy

Um ponteiro para uma variável que recebe um valor de enumeração VDS_LOADBALANCE_POLICY_ENUM que especifica a política de balanceamento de carga.

[out] ppPaths

Um ponteiro para a matriz de estruturas VDS_PATH_POLICY passadas pelo chamador. Os chamadores devem liberar essa matriz usando a função CoTaskMemFree .

[out] plNumberOfPaths

Um ponteiro para uma variável que recebe o número de estruturas de informações de política específicas do caminho retornadas no parâmetro ppPaths .

Valor de retorno

Esse método pode retornar valores HRESULT padrão, como E_INVALIDARG ou E_OUTOFMEMORY, e valores retornados específicos do VDS. Ele também pode retornar códigos de erro do sistema convertidos usando a macro HRESULT_FROM_WIN32 . Os erros podem se originar do próprio VDS ou do provedor de VDS subjacente que está sendo usado. Os valores retornados possíveis incluem o seguinte.

Código/valor de retorno Description
S_OK
A política de balanceamento de carga foi retornada com êxito. Se o LUN não tiver caminhos, a matriz estará vazia, o valor apontado pelo parâmetro plNumberOfPaths será definido como 0 e o valor apontado pelo parâmetro ppPaths será definido como NULL.
VDS_E_PROVIDER_CACHE_CORRUPT
0x8004241FL
O cache do provedor está corrompido. Isso indica um problema de software ou comunicação dentro de um provedor que armazena em cache informações sobre os dispositivos anexados. O chamador pode usar o método IVdsHwProvider::Reenumerate seguido pelo método IVdsHwProvider::Refresh para restaurar o cache.
VDS_E_OBJECT_DELETED
0x8004240BL
O objeto LUN não está mais presente.
VDS_E_OBJECT_STATUS_FAILED
0x80042431L
O LUN está em um estado com falha e não consegue executar a operação solicitada.
VDS_E_ANOTHER_CALL_IN_PROGRESS
0x80042404L
Outra operação está em andamento. Essa operação não pode continuar até que as operações anteriores sejam concluídas.

Observações

O número de caminhos retornados por esse método corresponderá ao número de caminhos retornados pelo método IVdsLunMpio::GetPathInfo .

Requirements

Requirement Value
Cliente mínimo suportado Windows Vista [somente aplicativos da área de trabalho]
Servidor mínimo compatível Windows Server 2003 R2 [somente aplicativos da área de trabalho]
da Plataforma de Destino Windows
Header vdshwprv.h

Consulte também

IVdsLunMpio

IVdsLunMpio::GetLoadBalancePolicy

VDS_LOADBALANCE_POLICY_ENUM

VDS_PATH_POLICY