Функция ClusterNodeControl (clusapi.h)
Инициирует операцию, влияющую на узел. Выполняемая операция зависит от кода элемента управления , переданного параметру dwControlCode .
Синтаксис
DWORD ClusterNodeControl(
[in] HNODE hNode,
[in, optional] HNODE hHostNode,
[in] DWORD dwControlCode,
[in, optional] LPVOID lpInBuffer,
[in] DWORD nInBufferSize,
[out, optional] LPVOID lpOutBuffer,
[in] DWORD nOutBufferSize,
[out, optional] LPDWORD lpBytesReturned
);
Параметры
[in] hNode
Дескриптор для затронутого узла.
[in, optional] hHostNode
Если значение не равно NULL, обработайте узел, который выполнит операцию, а не узел, указанный в hNode. Если значение РАВНО NULL, операция выполняется узлом, обрабатывающим вызов.
[in] dwControlCode
Код элемента управления узла, указывающий операцию, которую необходимо выполнить. Синтаксис, связанный с кодом элемента управления, см. в разделе
Архитектура кода управления и следующие разделы:
- CLUSCTL_NODE_ENUM_COMMON_PROPERTIES
- CLUSCTL_NODE_ENUM_PRIVATE_PROPERTIES
- CLUSCTL_NODE_GET_CHARACTERISTICS
- CLUSCTL_NODE_GET_COMMON_PROPERTIES
- CLUSCTL_NODE_GET_COMMON_PROPERTY_FMTS
- CLUSCTL_NODE_GET_FLAGS
- CLUSCTL_NODE_GET_ID
- CLUSCTL_NODE_GET_NAME
- CLUSCTL_NODE_GET_PRIVATE_PROPERTIES
- CLUSCTL_NODE_GET_PRIVATE_PROPERTY_FMTS
- CLUSCTL_NODE_GET_RO_COMMON_PROPERTIES
- CLUSCTL_NODE_GET_RO_PRIVATE_PROPERTIES
- CLUSCTL_NODE_SET_COMMON_PROPERTIES
- CLUSCTL_NODE_SET_PRIVATE_PROPERTIES
- CLUSCTL_NODE_UNKNOWN
- CLUSCTL_NODE_VALIDATE_COMMON_PROPERTIES
- CLUSCTL_NODE_VALIDATE_PRIVATE_PROPERTIES
[in, optional] lpInBuffer
Указатель на входной буфер, содержащий сведения, необходимые для операции, или значение NULL , если информация не требуется.
[in] nInBufferSize
Выделенный размер (в байтах) входного буфера.
[out, optional] lpOutBuffer
Указатель на выходной буфер для получения данных, полученных в результате операции, или значение NULL , если данные не будут возвращены.
[in] nOutBufferSize
Выделенный размер (в байтах) выходного буфера.
[out, optional] lpBytesReturned
Возвращает фактический размер (в байтах) данных, полученных в результате операции. Если эти сведения не требуются, передайте значение NULL для lpBytesReturned.
Возвращаемое значение
Функция возвращает одно из следующих значений.
Код возврата | Описание |
---|---|
|
Операция выполнена успешно. Если операция требовала выходного буфера, lpBytesReturned (если не ЗНАЧЕНИЕ NULL для входных данных) указывает на фактический размер данных, возвращаемых в буфере. |
|
Выходной буфер, на который указывает lpOutBuffer , не был достаточно велик для хранения данных, полученных в результате операции. Параметр lpBytesReturned (если не NULL для входных данных) указывает на размер, необходимый для выходного буфера. Только операции, для которых требуется выходной буфер, возвращают ERROR_MORE_DATA. Если параметр lpOutBuffer имеет значение NULL , а параметр nOutBufferSize равен нулю, можно вернуть ERROR_SUCCESS , а не ERROR_MORE_DATA. |
Операция не была успешной. Если для операции требуется выходной буфер, значение, заданное параметром lpBytesReturned (если для входных данных не задано значение NULL ), является ненадежным. |
Комментарии
Если ClusterNodeControl возвращает ERROR_MORE_DATA, задайте nOutBufferSize число байтов, на которые указывает lpBytesReturned , и вызовите функцию еще раз.
Не передайте маркеры LPC и RPC в один вызов функции. В противном случае вызов вызовет исключение RPC и может иметь дополнительные разрушительные последствия. Сведения о создании дескрипторов LPC и RPC см. в разделах LPC и RPC Handles и OpenCluster.
ClusterNodeControl является одной из функций кода элемента управления. Дополнительные сведения о кодах элементов управления и функциях кода элементов управления см. в разделе Использование кодов элементов управления.
Требования
Требование | Значение |
---|---|
Минимальная версия клиента | Ни одна версия не поддерживается |
Минимальная версия сервера | Windows Server 2008 Корпоративная, Windows Server 2008 Datacenter |
Целевая платформа | Windows |
Header | clusapi.h |
Библиотека | ClusAPI.lib |
DLL | ClusAPI.dll |