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) )
枚举群集使用的群集共享卷。
CLUSTER_ENUM_INTERNAL_NETWORK (2147483648 (0x80000000) )
枚举群集用于内部通信的网络。 网络按 SetClusterNetworkPriorityOrder 函数建立的最高优先级到最低优先级的顺序进行枚举。
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。
返回值
函数返回以下值之一。
返回代码/值 | 说明 |
---|---|
|
操作已成功完成。 |
|
没有更多可用数据。 如果没有更多要返回的请求类型的对象,则返回此值。 |
|
更多数据可用。 如果 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 |