AddClusterResourceDependency 函数 (clusapi.h)

在两个资源之间创建依赖关系PCLUSAPI_ADD_CLUSTER_RESOURCE_DEPENDENCY类型定义指向此函数的指针。

语法

DWORD AddClusterResourceDependency(
  [in] HRESOURCE hResource,
  [in] HRESOURCE hDependsOn
);

参数

[in] hResource

依赖资源的句柄。

[in] hDependsOn

由 hResource 标识的资源应依赖的资源的句柄。

返回值

如果操作成功,则返回 ERROR_SUCCESS (0) 。

如果操作失败, AddClusterResourceDependency 将返回 系统错误代码之一。 以下是可能的返回值。

返回代码/值 说明
ERROR_CIRCULAR_DEPENDENCY
1059 (0x423)
资源依赖于自身。
ERROR_DEPENDENCY_ALREADY_EXISTS
5003 (0x138B)
资源依赖项已存在。
ERROR_DEPENDENCY_NOT_ALLOWED
5069 (0x13CD)
依赖资源是仲裁。
ERROR_INVALID_PARAMETER
87 (0x57)
资源不在同一组中。
ERROR_RESOURCE_NOT_AVAILABLE
5006 (0x138E)
至少有一个资源标记为要删除。
ERROR_RESOURCE_ONLINE
5019 (0x139B)
依赖资源已联机。

注解

AddClusterResourceDependency 函数创建的依赖关系会影响在发生故障后资源从一个节点移动到另一个节点的方式。 它确定资源脱机并重新联机的顺序。

依赖关系中的资源必须一起移动。 依赖资源必须在它所依赖的资源之后联机。

由 hResourcehDependsOn 标识的两个资源必须位于同一组中。

如果 hResource 已联机,请不要调用 AddClusterResourceDependency 调用失败并出现 ERROR_RESOURCE_ONLINE 错误。 请注意,此行为已在 Windows Server 2008 中更改。 可以调用 AddClusterResourceDependency 并修改资源依赖项,而无需使资源脱机。

不要从资源 DLL 调用 AddClusterResourceDependency 。 有关详细信息,请参阅 在资源 DLL 中对避免的函数调用

不要将 LPC 和 RPC 句柄传递给同一函数调用。 否则,调用将引发 RPC 异常,并可能产生额外的破坏性影响。 有关如何创建 LPC 和 RPC 句柄的信息,请参阅 使用对象句柄OpenCluster

要求

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

另请参阅

CanResourceBeDependent

OpenCluster

OpenClusterResource

RemoveClusterResourceDependency