Win32 API 日本語リファレンス
ホーム › Networking.Clustering › PCLUSAPI_CREATE_CLUSTER_NOTIFY_PORT

PCLUSAPI_CREATE_CLUSTER_NOTIFY_PORT

コールバック

シグネチャ

HCHANGE PCLUSAPI_CREATE_CLUSTER_NOTIFY_PORT(
    HCHANGE hChange,
    HCLUSTER hCluster,
    DWORD dwFilter,
    UINT_PTR dwNotifyKey
);

パラメーター

フィールド型説明
hChangeHCHANGE通知ポートのハンドル、または新しいハンドルを作成する必要があることを示す INVALID_HANDLE_VALUE を指定します。hChange が既存のハンドルである場合、dwFilter で指定されたイベントがその通知ポートに追加されます。
hClusterHCLUSTERhChange で識別される通知ポートに関連付けるクラスターのハンドル、または通知ポートをクラスターに関連付けないことを示す INVALID_HANDLE_VALUE を指定します。hChange に INVALID_HANDLE_VALUE が設定されていない場合、hCluster に INVALID_HANDLE_VALUE を設定することはできません。
dwFilterDWORD

通知をキューに格納する原因となるイベントを指定する、CLUSTER_CHANGE 列挙体のフラグのビットマスクです。次のフラグのうち 1 つ以上を OR 演算子で組み合わせて設定できます。また、値 CLUSTER_CHANGE_ALL を指定することで、すべてのフラグを指定することもできます。

CLUSTER_CHANGE_CLUSTER_PROPERTY (0x40000000)

クラスターのプロパティが変更されたときに、キューが通知を受け取ります。

CLUSTER_CHANGE_CLUSTER_RECONNECT (0x00080000)

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)

グループの状態が変化したときに、キューが通知を受け取ります。グループの状態として取り得る値の一覧については、GetClusterGroupState を参照してください。

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 サービスが最初にインストールされるときだけです。

CLUSTER_CHANGE_NODE_DELETED (0x00000002)

ノードがクラスターから完全に削除されたときに、キューが通知を受け取ります。ノードは、EvictClusterNode 関数を呼び出すことで、既存のクラスターから完全に削除できます。

CLUSTER_CHANGE_NODE_PROPERTY (0x00000008)

ノードのプロパティが変更されたときに、キューが通知を受け取ります。

CLUSTER_CHANGE_NODE_STATE (0x00000001)

ノードの状態が変化したときに、キューが通知を受け取ります。ノードの状態として取り得る値の一覧については、GetClusterNodeState を参照してください。

CLUSTER_CHANGE_QUORUM_STATE (0x10000000)

この通知は将来の使用のために予約されています。

CLUSTER_CHANGE_REGISTRY_ATTRIBUTES (0x00000020)

クラスターデータベースのキーの属性が変更されたときに、キューが通知を受け取ります。現在定義されているクラスターデータベースキーの属性はセキュリティ記述子のみであり、ClusterRegSetKeySecurity で変更できます。

CLUSTER_CHANGE_REGISTRY_NAME (0x00000010)

クラスターデータベースのキーの名前が変更されたときに、キューが通知を受け取ります。

CLUSTER_CHANGE_REGISTRY_SUBTREE (0x00000080)

他の CLUSTER_CHANGE_REGISTRY イベントが、クラスターデータベース全体に適用されることを示します。このフラグを指定しない場合、これらのイベントは指定されたキーにのみ適用されます。

CLUSTER_CHANGE_REGISTRY_VALUE (0x00000040)

指定されたクラスターデータベースキーの値が変更または削除されたときに、キューが通知を受け取ります。クラスターデータベースの値は、ClusterRegSetValue 関数で変更でき、ClusterRegDeleteValue 関数で削除できます。

CLUSTER_CHANGE_RESOURCE_ADDED (0x00000400)

新しいリソースがクラスター内に作成されたときに、キューが通知を受け取ります。

CLUSTER_CHANGE_RESOURCE_DELETED (0x00000200)

リソースが削除されたときに、キューが通知を受け取ります。

CLUSTER_CHANGE_RESOURCE_PROPERTY (0x00000800)

リソースのプロパティ、依存関係、または可能な所有者ノードが変更されたときに、キューが通知を受け取ります。

CLUSTER_CHANGE_RESOURCE_STATE (0x00000100)

リソースの状態が変化したときに、キューが通知を受け取ります。リソースの状態として取り得る値の一覧については、GetClusterResourceState を参照してください。

CLUSTER_CHANGE_RESOURCE_TYPE_ADDED (0x00020000)

新しいリソースの種類がクラスター内に作成されたときに、キューが通知を受け取ります。

CLUSTER_CHANGE_RESOURCE_TYPE_DELETED (0x00010000)

既存のリソースの種類が削除されたときに、キューが通知を受け取ります。

CLUSTER_CHANGE_RESOURCE_TYPE_PROPERTY (0x00040000)

リソースの種類のプロパティが変更されたときに、キューが通知を受け取ります。

dwNotifyKeyUINT_PTR通知ポートからの通知の取得に関連付けられる、ユーザー指定の値です。dwFilter で指定されたいずれかの種類のイベントが発生すると、この dwNotifyKey が GetClusterNotify から返されます。

公式ドキュメント

通知ポートを作成または変更します。通知ポートについては、クラスターイベントの受信を参照してください。PCLUSAPI_CREATE_CLUSTER_NOTIFY_PORT 型は、この関数へのポインターを定義します。

戻り値

操作が成功した場合、関数は通知ポートのハンドルを返します。

操作が失敗した場合、関数は NULL を返します。エラーの詳細については、GetLastError を呼び出してください。

解説(Remarks)

CreateClusterNotifyPort、GetClusterNotify、およびRegisterClusterNotify の各関数の使用方法の詳細については、クラスターイベントの受信を参照してください。

例

通知ポートの例を参照してください。

出典・ライセンス: 上記「公式ドキュメント」の内容は Microsoft の Win32 API ドキュメント(MicrosoftDocs/sdk-api)を日本語に翻訳・改変したものです。© Microsoft Corporation. CC BY 4.0 で提供。
Microsoft 公式リファレンス: 英語 (en-us) · 日本語 (ja-jp) · 原文ソース (GitHub)