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

PCLUSAPI_CLUSTER_ENUM

コールバック

シグネチャ

DWORD PCLUSAPI_CLUSTER_ENUM(
    HCLUSENUM hEnum,
    DWORD dwIndex,
    DWORD* lpdwType,
    LPWSTR lpszName,
    DWORD* lpcchName
);

パラメーター

フィールド型説明
hEnumHCLUSENUMClusterOpenEnum 関数が返したクラスター列挙ハンドルです。
dwIndexDWORD次に列挙するエントリを識別するためのインデックスです。このパラメーターは、ClusterEnum の最初の呼び出しでは 0 とし、以降の呼び出しでは 1 ずつ増やします。
lpdwTypeDWORD*

返されるオブジェクトの種類へのポインターです。呼び出しごとに、CLUSTER_ENUM 列挙型の次のいずれかの値が返されます。

CLUSTER_ENUM_NODE (1 (0x1))

クラスター内のノードを列挙します。

CLUSTER_ENUM_RESTYPE (2 (0x2))

クラスター内のリソースの種類を列挙します。

CLUSTER_ENUM_RESOURCE (4 (0x4))

クラスター内のリソースを列挙します。

CLUSTER_ENUM_GROUP (8 (0x8))

クラスター内のグループを列挙します。

CLUSTER_ENUM_NETWORK (16 (0x10))

クラスター内のネットワークを列挙します。

CLUSTER_ENUM_NETINTERFACE (32 (0x20))

クラスター内のネットワークインターフェイスを列挙します。

CLUSTER_ENUM_SHARED_VOLUME_RESOURCE (1073741824 (0x40000000))

クラスターが使用しているクラスター共有ボリュームを列挙します。

注意 他のほとんどの列挙ビットマスクとは異なり、この値は単独で使用する必要があります。OR 演算子で他のビットマスクと組み合わせないでください。
Windows Server 2008: CLUSTER_ENUM_SHARED_VOLUME_RESOURCE 値は、Windows Server 2008 R2 より前のバージョンではサポートされません。

CLUSTER_ENUM_INTERNAL_NETWORK (2147483648 (0x80000000))

クラスターが内部通信に使用するネットワークを列挙します。ネットワークは、SetClusterNetworkPriorityOrder 関数で設定された優先度の高い順に列挙されます。

注意 他のほとんどの列挙ビットマスクとは異なり、この値は単独で使用する必要があります。OR 演算子で他のビットマスクと組み合わせないでください。

CLUSTER_ENUM_ALL ((CLUSTER_ENUM_NODE | CLUSTER_ENUM_RESTYPE | CLUSTER_ENUM_RESOURCE | CLUSTER_ENUM_GROUP | CLUSTER_ENUM_NETWORK | CLUSTER_ENUM_NETINTERFACE))

すべてのクラスターオブジェクトを列挙します。

lpszNameLPWSTR返されたオブジェクトの名前を格納する、null 終端の Unicode 文字列へのポインターです。
lpcchNameDWORD*lpszName バッファーのサイズを文字数で表した値へのポインターです。入力時には、終端の NULL を含めてバッファーに格納できる最大文字数を指定します。出力時には、終端の NULL を除いた、返された名前の文字数が設定されます。

公式ドキュメント

クラスター内のクラスターオブジェクトを列挙し、呼び出しごとに 1 つのオブジェクトの名前を返します。PCLUSAPI_CLUSTER_ENUM 型は、この関数へのポインターを定義します。

戻り値

この関数は、次のいずれかの値を返します。

リターンコード/値 説明
ERROR_SUCCESS
0
操作は成功しました。
ERROR_NO_MORE_ITEMS
259 (0x103)
これ以上のデータはありません。要求された種類のオブジェクトがこれ以上返されない場合に、この値が返されます。
ERROR_MORE_DATA
234 (0xEA)
さらにデータがあります。lpszName が指すバッファーが結果を格納するのに十分な大きさでない場合に、この値が返されます。lpcchName パラメーターには、終端の NULL を除いた結果の文字数が返されます。

解説(Remarks)

ClusterEnum 関数は通常、1 つ以上の種類のクラスターオブジェクトの集合を順にたどるために使用します。たとえば、アプリケーションがクラスター内のノードをすべて列挙したい場合は、ClusterOpenEnum を呼び出して、ノードを処理できるクラスター列挙子を開きます。列挙するオブジェクトの種類としてノードを指定するために、dwType パラメーターには CLUSTER_ENUM_NODE を設定します。アプリケーションがノードに加えてグループも列挙する場合は、dwType パラメーターに CLUSTER_ENUM_NODE | CLUSTER_ENUM_GROUP を設定します。アプリケーションは、ClusterOpenEnum が返すハンドルを使って ClusterEnum を繰り返し呼び出し、各オブジェクトを取得します。lpdwType パラメーターは、取得されたオブジェクトの種類を指します。

lpcchName はバイト数ではなく文字数を表し、返されるサイズには終端の NULL が含まれないことに注意してください。バッファーのサイズ指定の詳細については、Data Size Conventions を参照してください。

例

オブジェクトの列挙 を参照してください。

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