clusterEnum 函数 (clusapi.h)

枚举群集中的群集对象,并在每次调用时返回一个对象的名称。 PCLUSAPI_CLUSTER_ENUM类型定义指向此函数的指针。

语法

DWORD ClusterEnum(
  [in]      HCLUSENUM hEnum,
  [in]      DWORD     dwIndex,
  [out]     LPDWORD   lpdwType,
  [out]     LPWSTR    lpszName,
  [in, out] LPDWORD   lpcchName
);

参数

[in] hEnum

ClusterOpenEnum 函数返回的群集枚举句柄。

[in] dwIndex

用于标识要枚举的下一个条目的索引。 首次调用 ClusterEnum 时,此参数应为零,然后针对后续调用递增。

[out] lpdwType

指向返回的对象类型的指针。 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: 在 Windows Server 2008 R2 之前不支持 CLUSTER_ENUM_SHARED_VOLUME_RESOURCE 值。

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) )

枚举所有 群集对象

[out] lpszName

指向以 null 结尾的 Unicode 字符串的指针,该字符串包含返回的对象的名称。

[in, out] lpcchName

指向以字符计数形式表示的 lpszName 缓冲区大小的指针。 在输入时,指定缓冲区可以容纳的最大字符数,包括终止 NULL。 在输出时,指定结果名称中的字符数,不包括终止 NULL。

返回值

函数返回以下值之一。

返回代码/值 说明
ERROR_SUCCESS
0
操作已成功完成。
ERROR_NO_MORE_ITEMS
259 (0x103)
没有更多可用数据。 如果没有更多要返回的请求类型的对象,则返回此值。
ERROR_MORE_DATA
234 (0xEA)
更多数据可用。 如果 lpszName 指向的缓冲区不够大,无法保存结果,则返回此值。 lpcchName 参数返回结果中的字符数,不包括终止 NULL。

备注

ClusterEnum 函数通常用于循环访问一个或多个类型的群集对象的集合。 例如,如果应用程序想要枚举群集中的所有 节点 ,它会调用 ClusterOpenEnum 来打开可以处理节点的群集枚举器。 dwType 参数设置为 CLUSTER_ENUM_NODE 以将节点指定为要枚举的对象类型。 如果应用程序枚举除节点之外的 ,则 dwType 参数设置为 CLUSTER_ENUM_NODE | CLUSTER_ENUM_GROUP。 使用 ClusterOpenEnum 返回的句柄,应用程序重复调用 ClusterEnum 以检索每个对象。 lpdwType 参数指向检索到的对象的类型。

请注意, lpcchName 指的是字符计数而不是字节计数,并且返回的大小不包括计数中的终止 NULL 。 有关调整缓冲区大小的详细信息,请参阅 数据大小约定

示例

请参阅 枚举对象

要求

   
最低受支持的客户端 无受支持的版本
最低受支持的服务器 Windows Server 2008 Enterprise、Windows Server 2008 Datacenter
目标平台 Windows
标头 clusapi.h
Library ClusAPI.lib
DLL ClusAPI.dll

另请参阅

ClusterCloseEnum

ClusterOpenEnum

SetClusterNetworkPriorityOrder