Compartilhar via


Função ClusterResourceControl (clusapi.h)

Inicia uma operação que afeta um recurso. A operação executada depende do código de controle passado para o parâmetro dwControlCode .

Sintaxe

DWORD ClusterResourceControl(
  [in]            HRESOURCE hResource,
  [in, optional]  HNODE     hHostNode,
  [in]            DWORD     dwControlCode,
  [in, optional]  LPVOID    lpInBuffer,
  [in]            DWORD     cbInBufferSize,
  [out, optional] LPVOID    lpOutBuffer,
  [in]            DWORD     cbOutBufferSize,
  [out, optional] LPDWORD   lpBytesReturned
);

Parâmetros

[in] hResource

Manipule para o recurso a ser afetado.

[in, optional] hHostNode

Identificador opcional para o nó para executar a operação. Se NULL, o nó que possui o recurso identificado por hResource executará a operação.

[in] dwControlCode

Um código de controle de recurso, enumerado pela enumeração CLUSCTL_RESOURCE_CODES , especificando a operação a ser executada. Para obter a sintaxe associada a um código de controle, consulte
Arquitetura de código de controle e os seguintes tópicos:

[in, optional] lpInBuffer

Ponteiro para um buffer de entrada que contém informações necessárias para a operação ou NULL se nenhuma informação for necessária.

[in] cbInBufferSize

O tamanho alocado (em bytes) do buffer de entrada.

[out, optional] lpOutBuffer

Ponteiro para um buffer de saída para receber os dados resultantes da operação ou NULL se nenhum dado for retornado.

[in] cbOutBufferSize

O tamanho alocado (em bytes) do buffer de saída.

[out, optional] lpBytesReturned

Retorna o tamanho real (em bytes) dos dados resultantes da operação. Se essas informações não forem necessárias, passe NULL para lpBytesReturned.

Retornar valor

A função retorna um dos valores a seguir.

Valor/código retornado Descrição
ERROR_SUCCESS
0
A operação foi bem-sucedida. Se a operação exigir um buffer de saída, lpBytesReturned (se não NULL na entrada) apontará para o tamanho real dos dados retornados no buffer.
ERROR_MORE_DATA
234 (0xEA)
O buffer de saída apontado por lpOutBuffer não era grande o suficiente para manter os dados resultantes da operação. O parâmetro lpBytesReturned (se não for NULL na entrada) aponta para o tamanho necessário para o buffer de saída. Somente as operações que exigem um buffer de saída retornam ERROR_MORE_DATA. Se o parâmetro lpOutBuffer for NULL e o parâmetro cbOutBufferSize for zero, ERROR_SUCCESS poderá ser retornado, não ERROR_MORE_DATA.
ERROR_RESOURCE_PROPERTIES_STORED
5024 (0x13A0)
Aplica-se somente a CLUSCTL_RESOURCE_SET_COMMON_PROPERTIES e CLUSCTL_RESOURCE_SET_PRIVATE_PROPERTIES. Indica que as propriedades foram armazenadas com êxito, mas ainda não foram aplicadas ao recurso. As novas propriedades entrarão em vigor depois que o recurso for colocado offline e colocado online novamente.
ERROR_HOST_NODE_NOT_RESOURCE_OWNER
5015 (0x1397)
O nó especificado pelo parâmetro hNode não é o nó que possui o recurso especificado por hResource.
Código de erro do sistema
A operação não foi bem-sucedida. Se a operação exigir um buffer de saída, o valor especificado por lpBytesReturned (se não NULL na entrada) não será confiável.

Comentários

Quando ClusterResourceControl retornar ERROR_MORE_DATA, defina cbOutBufferSize como o número de bytes apontados por lpBytesReturned e chame a função novamente.

Não passe identificadores LPC e RPC para a mesma chamada de função. Caso contrário, a chamada gerará uma exceção RPC e poderá ter efeitos destrutivos adicionais. Para obter informações sobre como os identificadores LPC e RPC são criados, consulte Identificadores LPC e RPC e OpenCluster.

A função ClusterResourceControl é uma das funções de código de controle. Para obter mais informações sobre códigos de controle e funções de código de controle, consulte Usando códigos de controle.

Requisitos

Requisito Valor
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

Confira também

OpenCluster

Códigos de controle de recursos