Função ClusterEnum (clusapi.h)
Enumera os objetos de cluster em um cluster, retornando o nome de um objeto com cada chamada. O tipo PCLUSAPI_CLUSTER_ENUM define um ponteiro para essa função.
Sintaxe
DWORD ClusterEnum(
[in] HCLUSENUM hEnum,
[in] DWORD dwIndex,
[out] LPDWORD lpdwType,
[out] LPWSTR lpszName,
[in, out] LPDWORD lpcchName
);
Parâmetros
[in] hEnum
Um identificador de enumeração de cluster retornado pela função ClusterOpenEnum .
[in] dwIndex
O índice usado para identificar a próxima entrada a ser enumerada. Esse parâmetro deve ser zero para a primeira chamada para ClusterEnum e, em seguida, incrementado para chamadas subsequentes.
[out] lpdwType
Um ponteiro para o tipo de objeto retornado. Um dos valores a seguir da enumeração CLUSTER_ENUM é retornado com cada chamada.
CLUSTER_ENUM_NODE (1 (0x1))
Enumera os nós no cluster.
CLUSTER_ENUM_RESTYPE (2 (0x2))
Enumera os tipos de recursos no cluster.
CLUSTER_ENUM_RESOURCE (4 (0x4))
Enumera os recursos no cluster.
CLUSTER_ENUM_GROUP (8 (0x8))
Enumera os grupos no cluster.
CLUSTER_ENUM_NETWORK (16 (0x10))
Enumera as redes no cluster.
CLUSTER_ENUM_NETINTERFACE (32 (0x20))
Enumera os adaptadores de rede no cluster.
CLUSTER_ENUM_SHARED_VOLUME_RESOURCE (1073741824 (0x40000000))
Enumera os volumes compartilhados do cluster usados pelo cluster.
CLUSTER_ENUM_INTERNAL_NETWORK (2147483648 (0x80000000))
Enumera as redes usadas pelo cluster para comunicação interna. As redes são enumeradas em ordem de prioridade mais alta a mais baixa, conforme estabelecido pela função SetClusterNetworkPriorityOrder .
CLUSTER_ENUM_ALL ((CLUSTER_ENUM_NODE | CLUSTER_ENUM_RESTYPE | CLUSTER_ENUM_RESOURCE | CLUSTER_ENUM_GROUP | CLUSTER_ENUM_NETWORK | CLUSTER_ENUM_NETINTERFACE))
Enumera todos os objetos de cluster.
[out] lpszName
Um ponteiro para uma cadeia de caracteres Unicode terminada em nulo que contém o nome do objeto retornado.
[in, out] lpcchName
Um ponteiro para o tamanho do buffer lpszName como uma contagem de caracteres. Na entrada, especifique o número máximo de caracteres que o buffer pode conter, incluindo o NULL de terminação. Na saída, especifica o número de caracteres no nome resultante, excluindo o NULL de terminação.
Valor retornado
A função retorna um dos valores a seguir.
Valor/código retornado | Descrição |
---|---|
|
A operação foi concluída com sucesso. |
|
Não existem mais dados disponíveis. Esse valor será retornado se não houver mais objetos do tipo solicitado a serem retornados. |
|
Mais dados disponíveis. Esse valor será retornado se o buffer apontado por lpszName não for grande o suficiente para manter o resultado. O parâmetro lpcchName retorna o número de caracteres no resultado, excluindo o NULL de terminação. |
Comentários
A função ClusterEnum normalmente é usada para iterar por meio de uma coleção de objetos de cluster de um ou mais tipos. Se, por exemplo, um aplicativo quiser enumerar todos os nós em um cluster, ele chamará ClusterOpenEnum para abrir um enumerador de cluster que pode processar nós. O parâmetro dwType é definido como CLUSTER_ENUM_NODE para especificar nós como o tipo de objeto a ser enumerado. Se o aplicativo enumerar grupos além de nós, o parâmetro dwType será definido CLUSTER_ENUM_NODE | CLUSTER_ENUM_GROUP
como . Com o identificador retornado por ClusterOpenEnum , o aplicativo chama ClusterEnum repetidamente para recuperar cada um dos objetos.
O parâmetro lpdwType aponta para o tipo de objeto recuperado.
Observe que lpcchName refere-se a uma contagem de caracteres e não a uma contagem de bytes e que o tamanho retornado não inclui o NULL de terminação na contagem. Para obter mais informações sobre o dimensionamento de buffers, consulte Convenções de tamanho de dados.
Exemplos
Consulte Enumerando objetos.
Requisitos
Cliente mínimo com suporte | Nenhum compatível |
Servidor mínimo com suporte | Windows Server 2008 Enterprise, Windows Server 2008 Datacenter |
Plataforma de Destino | Windows |
Cabeçalho | clusapi.h |
Biblioteca | ClusAPI.lib |
DLL | ClusAPI.dll |