Поделиться через


Функция ClusterResourceControl (clusapi.h)

Инициирует операцию, влияющую на ресурс. Выполняемая операция зависит от кода элемента управления , переданного параметру dwControlCode .

Синтаксис

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
);

Параметры

[in] hResource

Дескриптор для затронутого ресурса.

[in, optional] hHostNode

Необязательный дескриптор узла для выполнения операции. Если значение РАВНО NULL, то узел, которому принадлежит ресурс, определенный hResource , выполняет операцию.

[in] dwControlCode

Код элемента управления ресурсами, перечисляемый перечислением CLUSCTL_RESOURCE_CODES, указывающий выполняемую операцию. Синтаксис, связанный с кодом элемента управления, см. в разделе
Архитектура кода управления и следующие разделы:

[in, optional] lpInBuffer

Указатель на входной буфер, содержащий сведения, необходимые для операции, или значение NULL , если информация не требуется.

[in] cbInBufferSize

Выделенный размер (в байтах) входного буфера.

[out, optional] lpOutBuffer

Указатель на выходной буфер для получения данных, полученных в результате операции, или значение NULL , если данные не будут возвращены.

[in] cbOutBufferSize

Выделенный размер (в байтах) выходного буфера.

[out, optional] lpBytesReturned

Возвращает фактический размер (в байтах) данных, полученных в результате операции. Если эти сведения не требуются, передайте значение NULL для параметра lpBytesReturned.

Возвращаемое значение

Функция возвращает одно из следующих значений.

Возвращаемый код или значение Описание
ERROR_SUCCESS
0
Операция выполнена успешно. Если операция требовала выходного буфера, lpBytesReturned (если не ЗНАЧЕНИЕ NULL для входных данных) указывает на фактический размер данных, возвращаемых в буфере.
ERROR_MORE_DATA
234 (0xEA)
Выходной буфер, на который указывает lpOutBuffer , не был достаточно велик для хранения данных, полученных в результате операции. Параметр lpBytesReturned (если не NULL для входных данных) указывает на размер, необходимый для выходного буфера. Только операции, для которых требуется выходной буфер, возвращают ERROR_MORE_DATA. Если параметр lpOutBuffer имеет значение NULL , а параметр cbOutBufferSize равен нулю, можно вернуть ERROR_SUCCESS , а не ERROR_MORE_DATA.
ERROR_RESOURCE_PROPERTIES_STORED
5024 (0x13A0)
Применяется только к CLUSCTL_RESOURCE_SET_COMMON_PROPERTIES и CLUSCTL_RESOURCE_SET_PRIVATE_PROPERTIES. Указывает, что свойства успешно сохранены, но еще не применены к ресурсу. Новые свойства вступают в силу после того, как ресурс перейдет в автономный режим и снова перейдет в режим "в сети".
ERROR_HOST_NODE_NOT_RESOURCE_OWNER
5015 (0x1397)
Узел, указанный параметром hNode , не является узлом, которому принадлежит ресурс, указанный в hResource.
Код системной ошибки
Операция не была успешной. Если для операции требуется выходной буфер, значение, заданное параметром lpBytesReturned (если для входных данных не задано значение NULL ), является ненадежным.

Комментарии

Когда ClusterResourceControl возвращает ERROR_MORE_DATA, задайте для параметра cbOutBufferSize число байтов, на которые указывает lpBytesReturned, и вызовите функцию еще раз.

Не передайте маркеры LPC и RPC в один вызов функции. В противном случае вызов вызовет исключение RPC и может иметь дополнительные разрушительные последствия. Сведения о создании дескрипторов LPC и RPC см. в разделах LPC и RPC Handles и OpenCluster.

Функция ClusterResourceControl является одной из функций кода элемента управления. Дополнительные сведения о кодах элементов управления и функциях кода элементов управления см. в разделе Использование кодов элементов управления.

Требования

Требование Значение
Минимальная версия клиента Ни одна версия не поддерживается
Минимальная версия сервера Windows Server 2008 Корпоративная, Windows Server 2008 Datacenter
Целевая платформа Windows
Header clusapi.h
Библиотека ClusAPI.lib
DLL ClusAPI.dll

См. также раздел

OpenCluster

Коды элементов управления ресурсами