getClusterResourceState 函数 (clusapi.h)

返回 资源的当前状态。 PCLUSAPI_GET_CLUSTER_RESOURCE_STATE类型定义指向此函数的指针。

语法

CLUSTER_RESOURCE_STATE GetClusterResourceState(
  [in]                HRESOURCE hResource,
  [out, optional]     LPWSTR    lpszNodeName,
  [in, out, optional] LPDWORD   lpcchNodeName,
  [out, optional]     LPWSTR    lpszGroupName,
  [in, out, optional] LPDWORD   lpcchGroupName
);

参数

[in] hResource

指定应为其返回状态信息的资源的句柄。

[out, optional] lpszNodeName

指向缓冲区的指针,该缓冲区以 NULL 结尾的 Unicode 字符串的形式接收指定资源的当前所有者节点的名称。 如果不需要节点名称,则传递 NULL

[in, out, optional] lpcchNodeName

指向以字符计数表示的 lpszNodeName 缓冲区大小的指针。 除非 lpszNodeName 也为 NULL,否则此指针不能为 NULL。 在输入时,指定缓冲区可以容纳的最大字符数,包括终止 NULL。 在输出时,指定结果名称中的字符数,不包括终止 NULL

[out, optional] lpszGroupName

指向接收包含指定资源的 名称的缓冲区的指针。 该名称作为 以 NULL 结尾的 Unicode 字符串返回。 如果组名称不是必需的,则传递 NULL

[in, out, optional] lpcchGroupName

指向 lpszGroupName 缓冲区大小(以字符计数表示)的指针。 除非 lpszNodeName 也为 NULL,否则此指针不能为 NULL。 在输入时,指定缓冲区可以容纳的最大字符数,包括终止 NULL。 在输出时,指定结果名称中的字符数,不包括终止 NULL

返回值

GetClusterResourceState 返回从 CLUSTER_RESOURCE_STATE 枚举中枚举的资源的当前状态,该枚举可由以下值之一表示。

返回代码/值 说明
ClusterResourceInitializing
1
资源正在执行初始化。
ClusterResourceOnline
2
资源正常运行并正常运行。
ClusterResourceOffline
3
资源不可操作。 如果资源报告的状态为 ClusterResourceOffline (3) 或 ClusterResourceCannotComeOnlineOnThisNode (127) ,则会返回此值。
ClusterResourceFailed
4
资源失败。 如果资源报告的状态为 ClusterResourceFailed (4) 或 ClusterResourceCannotComeOnlineOnAnyNode (126) ,则会返回此值。
ClusterResourcePending
128
资源正在联机或脱机。
ClusterResourceOnlinePending
129
资源正在联机。
ClusterResourceOfflinePending
130
资源正在脱机。
ClusterResourceStateUnknown
-1
操作未成功。 有关错误的详细信息,请调用函数 GetLastError

注解

不要从任何资源 DLL 入口点函数调用 GetClusterResourceState 。 可以从工作线程安全地调用 GetClusterResourceState。 有关详细信息,请参阅 资源 DLL 中对避免的函数调用

示例

有关示例,请参阅 获取对象状态

要求

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

另请参阅

CLUSTER_RESOURCE_STATE

Offline

OfflineClusterResource

联机

OnlineClusterResource

OpenClusterResource