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
當dwFilterType設定為影響叢集資料庫的事件種類時,叢集資料庫函式會傳回有效的叢集資料庫索引鍵,可用來設定hObject。
[in] dwNotifyKey
當要求的事件發生時, 從 GetClusterNotify 傳回的通知金鑰。
傳回值
如果作業成功,函式會傳回 ERROR_SUCCESS。
如果作業失敗,函式會傳回 系統錯誤碼。
備註
RegisterClusterNotify 函式可讓已使用CreateClusterNotifyPort建立通知埠的應用程式,以註冊會影響節點、資源或群組的其他事件。
若要接收 叢集資料庫 變更的通知,必須在 dwFilterType 參數中設定一或多個適用于資料庫的旗標。 適用的旗標開頭為前置詞CLUSTER_CHANGE_REGISTRY。 透過登錄編輯器對叢集資料庫進行手動變更,RegEdit.exe 不會產生通知。
範例
請參閱 通知埠範例。
規格需求
最低支援的用戶端 | 都不支援 |
最低支援的伺服器 | Windows Server 2008 Enterprise、Windows Server 2008 Datacenter |
目標平台 | Windows |
標頭 | clusapi.h |
程式庫 | ClusAPI.lib |
Dll | ClusAPI.dll |