Функция RegisterClusterNotify (clusapi.h)
Добавляет тип события в список событий, хранящихся для порта уведомлений. Тип PCLUSAPI_REGISTER_CLUSTER_NOTIFY определяет указатель на эту функцию.
Синтаксис
DWORD RegisterClusterNotify(
[in] HCHANGE hChange,
[in] DWORD dwFilterType,
[in] HANDLE hObject,
[in] DWORD_PTR dwNotifyKey
);
Параметры
[in] hChange
Обработка порта уведомлений, созданного с помощью функции CreateClusterNotifyPort .
[in] dwFilterType
Битовая маска флагов, описывающая событие, добавляемое в набор событий, отслеживаемых портом уведомлений. Дополнительные сведения об этих типах событий см. в разделе CreateClusterNotifyPort. Для параметра dwFilterType можно задать один из следующих флагов.
CLUSTER_CHANGE_CLUSTER_PROPERTY (0x40000000)
Очередь получает уведомление при изменении списка внутренних сетей кластера с приоритетами.
CLUSTER_CHANGE_CLUSTER_RECONNECT
Очередь получает уведомление, когда подключение к кластеру, определенному hCluster , будет восстановлено после краткого отключения. Некоторые события, созданные непосредственно до или после этого события, могут быть потеряны. Чтобы получить точные сведения о состоянии, необходимо закрыть все открытые подключения и повторно подключиться.
CLUSTER_CHANGE_CLUSTER_STATE (0x20000000)
Очередь получает уведомление, когда кластер становится недоступным. Это означает, что все попытки взаимодействия с кластером завершаются ошибкой. Это уведомление зарезервировано для использования в будущем.
CLUSTER_CHANGE_GROUP_ADDED (0x00004000)
Очередь получает уведомление при создании новой группы в кластере.
CLUSTER_CHANGE_GROUP_DELETED (0x00002000)
Очередь получает уведомление при удалении существующей группы .
CLUSTER_CHANGE_GROUP_PROPERTY (0x00008000)
Очередь получает уведомление при изменении свойств существующей группы.
CLUSTER_CHANGE_GROUP_STATE (0x00001000)
Очередь получает уведомление при изменении состояния группы.
CLUSTER_CHANGE_HANDLE_CLOSE (0x80000000)
Очередь получает уведомление при закрытии дескриптора объекта кластера .
CLUSTER_CHANGE_NETINTERFACE_ADDED (0x04000000)
Очередь получает уведомление при добавлении нового сетевого интерфейса в узел кластера.
CLUSTER_CHANGE_NETINTERFACE_DELETED (0x02000000)
Очередь получает уведомление, когда сетевой интерфейс окончательно удаляется из узла кластера.
CLUSTER_CHANGE_NETINTERFACE_PROPERTY (0x08000000)
Очередь получает уведомление при изменении свойств существующего сетевого интерфейса.
CLUSTER_CHANGE_NETINTERFACE_STATE (0x01000000)
Очередь получает уведомление при изменении состояния сетевого интерфейса. Список возможных значений состояния сетевого интерфейса см. в разделе GetClusterNetInterfaceState.
CLUSTER_CHANGE_NETWORK_ADDED (0x00400000)
Очередь получает уведомление при добавлении новой сети в среду кластера.
CLUSTER_CHANGE_NETWORK_DELETED (0x00200000)
Очередь получает уведомление, когда сеть окончательно удаляется из среды кластера.
CLUSTER_CHANGE_NETWORK_PROPERTY (0x00800000)
Очередь получает уведомление при изменении свойств существующей сети.
CLUSTER_CHANGE_NETWORK_STATE (0x00100000)
Очередь получает уведомление при изменении состояния сети. Список возможных значений состояния сети см. в разделе GetClusterNetworkState.
CLUSTER_CHANGE_NODE_ADDED (0x00000004)
Очередь получает уведомление при добавлении нового узла в кластер. Узел можно добавить только в том случае, если служба кластеров изначально установлена на узле.
CLUSTER_CHANGE_NODE_DELETED (0x00000002)
Очередь получает уведомление при окончательном удалении узла из кластера. Узел можно окончательно удалить из существующего кластера с помощью вызова функции EvictClusterNode .
CLUSTER_CHANGE_NODE_PROPERTY (0x00000008)
Это уведомление зарезервировано для использования в будущем.
CLUSTER_CHANGE_NODE_STATE (0x00000001)
Очередь получает уведомление при изменении состояния узла.
CLUSTER_CHANGE_QUORUM_STATE (0x10000000)
Очередь получает уведомление при изменении состояния ресурса кворума .
CLUSTER_CHANGE_REGISTRY_ATTRIBUTES (0x00000020)
Очередь получает уведомление при изменении атрибутов ключа базы данных кластера .
CLUSTER_CHANGE_REGISTRY_NAME (0x00000010)
Очередь получает уведомление при изменении имени в базе данных кластера.
CLUSTER_CHANGE_REGISTRY_SUBTREE (0x00000080)
Указывает, что другие события CLUSTER_CHANGE_REGISTRY применяются к корню базы данных кластера и ко всем подразделам. Если CLUSTER_CHANGE_REGISTRY_SUBTREE не указан, уведомления применяются только к корневому каталогу.
CLUSTER_CHANGE_REGISTRY_VALUE (0x00000040)
Очередь получает уведомление при изменении или удалении значения указанного ключа базы данных кластера.
CLUSTER_CHANGE_RESOURCE_ADDED (0x00000400)
Очередь получает уведомление при создании нового ресурса в кластере.
CLUSTER_CHANGE_RESOURCE_DELETED (0x00000200)
Очередь получает уведомление при удалении ресурса .
CLUSTER_CHANGE_RESOURCE_PROPERTY (0x00000800)
Указывает, что при изменении свойств ресурса должно выдаваться уведомление.
CLUSTER_CHANGE_RESOURCE_STATE (0x00000100)
Очередь получает уведомление при изменении состояния ресурса.
CLUSTER_CHANGE_RESOURCE_TYPE_ADDED (0x00020000)
Очередь получает уведомление при создании нового типа ресурса в кластере.
CLUSTER_CHANGE_RESOURCE_TYPE_DELETED (0x00010000)
Очередь получает уведомление при удалении существующего типа ресурса.
CLUSTER_CHANGE_RESOURCE_TYPE_PROPERTY (0x00040000)
Очередь получает уведомление при изменении свойств типа ресурса.
[in] hObject
Дескриптор объекта отказоустойчивого кластера , затронутого событием, указанным в параметре dwFilterType . Тип дескриптора зависит от значения dwFilterType , как описано в следующем списке.
CLUSTER_CHANGE_CLUSTER_PROPERTY
HCLUSTER
CLUSTER_CHANGE_CLUSTER_STATE
HCLUSTER
CLUSTER_CHANGE_GROUP_DELETED
HGROUP
CLUSTER_CHANGE_GROUP_PROPERTY
HGROUP
CLUSTER_CHANGE_GROUP_STATE
HGROUP
CLUSTER_CHANGE_HANDLE_CLOSE
HCLUSTER, если флаг используется сам по себе; В противном случае дескриптор, связанный с флагом, с которым CLUSTER_CHANGE_HANDLE_CLOSE объединяется, становится типом дескриптора.
Например, если значение параметра dwFilterType равно CLUSTER_CHANGE_GROUP_PROPERTY | CLUSTER_CHANGE_HANDLE_CLOSE, то тип дескриптора для параметра hObject становится HGROUP, так как флаг CLUSTER_CHANGE_GROUP_PROPERTY связан с типом дескриптора HGROUP .
CLUSTER_CHANGE_NODE_DELETED
HNODE
CLUSTER_CHANGE_NODE_PROPERTY
HNODE
CLUSTER_CHANGE_NODE_STATE
HNODE
CLUSTER_CHANGE_REGISTRY_ATTRIBUTES
HKEY
CLUSTER_CHANGE_REGISTRY_NAME
HKEY
CLUSTER_CHANGE_REGISTRY_SUBTREE
HKEY
CLUSTER_CHANGE_REGISTRY_VALUE
HKEY
CLUSTER_CHANGE_RESOURCE_DELETED
HRESOURCE
CLUSTER_CHANGE_RESOURCE_PROPERTY
HRESOURCE
CLUSTER_CHANGE_RESOURCE_STATE
HRESOURCE
Функции кластерной базы данных возвращают допустимый ключ базы данных кластера, который можно использовать для задания hObject , если dwFilterType имеет тип события, влияющий на базу данных кластера.
[in] dwNotifyKey
Ключ уведомления возвращается из GetClusterNotify при возникновении запрошенного события.
Возвращаемое значение
Если операция выполнена успешно, функция возвращает ERROR_SUCCESS.
Если операция завершается сбоем, функция возвращает код системной ошибки.
Комментарии
Функция RegisterClusterNotify позволяет приложению , которое уже создало порт уведомлений с помощью CreateClusterNotifyPort , зарегистрироваться для получения дополнительного события, влияющего на узел, ресурс или группу.
Чтобы получать уведомления об изменениях базы данных кластера , необходимо задать один или несколько флагов, применимых к базе данных, в параметре dwFilterType . Применимые флаги начинаются с CLUSTER_CHANGE_REGISTRY префикса. Внесение изменений в базу данных кластера вручную с помощью редактора реестра RegEdit.exe не создает уведомлений.
Примеры
Требования
Минимальная версия клиента | Ни одна версия не поддерживается |
Минимальная версия сервера | Windows Server 2008 Корпоративная, Windows Server 2008 Datacenter |
Целевая платформа | Windows |
Header | clusapi.h |
Библиотека | ClusAPI.lib |
DLL | ClusAPI.dll |
См. также раздел
Обратная связь
https://aka.ms/ContentUserFeedback.
Ожидается в ближайшее время: в течение 2024 года мы постепенно откажемся от GitHub Issues как механизма обратной связи для контента и заменим его новой системой обратной связи. Дополнительные сведения см. в разделеОтправить и просмотреть отзыв по