Функция 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, указывающий выполняемую операцию. Синтаксис, связанный с кодом элемента управления, см. в разделе
Архитектура кода управления и следующие разделы:
- CLUSCTL_RESOURCE_UNKNOWN
- CLUSCTL_RESOURCE_GET_CHARACTERISTICS
- CLUSCTL_RESOURCE_GET_FLAGS
- CLUSCTL_RESOURCE_GET_CLASS_INFO
- CLUSCTL_RESOURCE_GET_REQUIRED_DEPENDENCIES
- CLUSCTL_RESOURCE_GET_NAME
- CLUSCTL_RESOURCE_GET_ID
- CLUSCTL_RESOURCE_GET_RESOURCE_TYPE
- CLUSCTL_RESOURCE_ENUM_COMMON_PROPERTIES
- CLUSCTL_RESOURCE_GET_RO_COMMON_PROPERTIES
- CLUSCTL_RESOURCE_GET_COMMON_PROPERTIES
- CLUSCTL_RESOURCE_SET_COMMON_PROPERTIES
- CLUSCTL_RESOURCE_VALIDATE_COMMON_PROPERTIES
- CLUSCTL_RESOURCE_GET_COMMON_PROPERTY_FMTS
- CLUSCTL_RESOURCE_ENUM_PRIVATE_PROPERTIES
- CLUSCTL_RESOURCE_GET_RO_PRIVATE_PROPERTIES
- CLUSCTL_RESOURCE_GET_PRIVATE_PROPERTIES
- CLUSCTL_RESOURCE_SET_PRIVATE_PROPERTIES
- CLUSCTL_RESOURCE_VALIDATE_PRIVATE_PROPERTIES
- CLUSCTL_RESOURCE_GET_PRIVATE_PROPERTY_FMTS
- CLUSCTL_RESOURCE_ADD_REGISTRY_CHECKPOINT
- CLUSCTL_RESOURCE_DELETE_REGISTRY_CHECKPOINT
- CLUSCTL_RESOURCE_GET_REGISTRY_CHECKPOINTS
- CLUSCTL_RESOURCE_ADD_CRYPTO_CHECKPOINT
- CLUSCTL_RESOURCE_DELETE_CRYPTO_CHECKPOINT
- CLUSCTL_RESOURCE_GET_CRYPTO_CHECKPOINTS
- CLUSCTL_RESOURCE_GET_LOADBAL_PROCESS_LIST
- CLUSCTL_RESOURCE_GET_NETWORK_NAME
- CLUSCTL_RESOURCE_NETNAME_GET_VIRTUAL_SERVER_TOKEN
- CLUSCTL_RESOURCE_NETNAME_SET_PWD_INFO
- CLUSCTL_RESOURCE_NETNAME_DELETE_CO
- CLUSCTL_RESOURCE_NETNAME_VALIDATE_VCO
- CLUSCTL_RESOURCE_NETNAME_RESET_VCO
- CLUSCTL_RESOURCE_NETNAME_REGISTER_DNS_RECORDS
- CLUSCTL_RESOURCE_GET_DNS_NAME
- CLUSCTL_RESOURCE_STORAGE_GET_DISK_INFO
- CLUSCTL_RESOURCE_STORAGE_IS_PATH_VALID
- CLUSCTL_RESOURCE_QUERY_DELETE
- CLUSCTL_RESOURCE_UPGRADE_DLL
- CLUSCTL_RESOURCE_IPADDRESS_RENEW_LEASE
- CLUSCTL_RESOURCE_IPADDRESS_RELEASE_LEASE
- CLUSCTL_RESOURCE_ADD_REGISTRY_CHECKPOINT_64BIT
- CLUSCTL_RESOURCE_ADD_REGISTRY_CHECKPOINT_32BIT
- CLUSCTL_RESOURCE_QUERY_MAINTENANCE_MODE
- CLUSCTL_RESOURCE_SET_MAINTENANCE_MODE
- CLUSCTL_RESOURCE_STORAGE_SET_DRIVELETTER
- CLUSCTL_RESOURCE_STORAGE_GET_DISK_INFO_EX
- CLUSCTL_RESOURCE_FILESERVER_SHARE_ADD
- CLUSCTL_RESOURCE_FILESERVER_SHARE_DEL
- CLUSCTL_RESOURCE_FILESERVER_SHARE_MODIFY
- CLUSCTL_RESOURCE_FILESERVER_SHARE_REPORT
- CLUSCTL_RESOURCE_STORAGE_GET_MOUNTPOINTS
- CLUSCTL_RESOURCE_STORAGE_CLUSTER_DISK
- CLUSCTL_RESOURCE_STORAGE_GET_DIRTY
- CLUSCTL_RESOURCE_SET_CSV_MAINTENANCE_MODE
- CLUSCTL_RESOURCE_ENABLE_SHARED_VOLUME_DIRECTIO
- CLUSCTL_RESOURCE_DISABLE_SHARED_VOLUME_DIRECTIO
- CLUSCTL_RESOURCE_SET_SHARED_VOLUME_BACKUP_MODE
- CLUSCTL_RESOURCE_DELETE
- CLUSCTL_RESOURCE_INSTALL_NODE
- CLUSCTL_RESOURCE_EVICT_NODE
- CLUSCTL_RESOURCE_ADD_DEPENDENCY
- CLUSCTL_RESOURCE_REMOVE_DEPENDENCY
- CLUSCTL_RESOURCE_ADD_OWNER
- CLUSCTL_RESOURCE_REMOVE_OWNER
- CLUSCTL_RESOURCE_SET_NAME
- CLUSCTL_RESOURCE_CLUSTER_NAME_CHANGED
- CLUSCTL_RESOURCE_CLUSTER_VERSION_CHANGED
- CLUSCTL_RESOURCE_FORCE_QUORUM
- CLUSCTL_RESOURCE_INITIALIZE
- CLUSCTL_RESOURCE_STATE_CHANGE_REASON
- CLUSCTL_RESOURCE_PROVIDER_STATE_CHANGE
- CLUSCTL_RESOURCE_LEAVING_GROUP
- CLUSCTL_RESOURCE_JOINING_GROUP
- CLUSCTL_RESOURCE_FSWITNESS_GET_EPOCH_INFO
- CLUSCTL_RESOURCE_FSWITNESS_SET_EPOCH_INFO
- CLUSCTL_RESOURCE_FSWITNESS_RELEASE_LOCK
- CLUSCTL_RESOURCE_NETNAME_CREDS_UPDATED
[in, optional] lpInBuffer
Указатель на входной буфер, содержащий сведения, необходимые для операции, или значение NULL , если информация не требуется.
[in] cbInBufferSize
Выделенный размер (в байтах) входного буфера.
[out, optional] lpOutBuffer
Указатель на выходной буфер для получения данных, полученных в результате операции, или значение NULL , если данные не будут возвращены.
[in] cbOutBufferSize
Выделенный размер (в байтах) выходного буфера.
[out, optional] lpBytesReturned
Возвращает фактический размер (в байтах) данных, полученных в результате операции. Если эти сведения не требуются, передайте значение NULL для параметра lpBytesReturned.
Возвращаемое значение
Функция возвращает одно из следующих значений.
Возвращаемый код или значение | Описание |
---|---|
|
Операция выполнена успешно. Если операция требовала выходного буфера, lpBytesReturned (если не ЗНАЧЕНИЕ NULL для входных данных) указывает на фактический размер данных, возвращаемых в буфере. |
|
Выходной буфер, на который указывает lpOutBuffer , не был достаточно велик для хранения данных, полученных в результате операции. Параметр lpBytesReturned (если не NULL для входных данных) указывает на размер, необходимый для выходного буфера. Только операции, для которых требуется выходной буфер, возвращают ERROR_MORE_DATA. Если параметр lpOutBuffer имеет значение NULL , а параметр cbOutBufferSize равен нулю, можно вернуть ERROR_SUCCESS , а не ERROR_MORE_DATA. |
|
Применяется только к CLUSCTL_RESOURCE_SET_COMMON_PROPERTIES и CLUSCTL_RESOURCE_SET_PRIVATE_PROPERTIES. Указывает, что свойства успешно сохранены, но еще не применены к ресурсу. Новые свойства вступают в силу после того, как ресурс перейдет в автономный режим и снова перейдет в режим "в сети". |
|
Узел, указанный параметром 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 |