PCLUSAPI_ADD_CLUSTER_RESOURCE_DEPENDENCY
コールバックシグネチャ
DWORD PCLUSAPI_ADD_CLUSTER_RESOURCE_DEPENDENCY(
HRESOURCE hResource,
HRESOURCE hDependsOn
);パラメーター
| フィールド | 型 | 説明 |
|---|---|---|
| hResource | HRESOURCE | 依存する側のリソースのハンドルです。 |
| hDependsOn | HRESOURCE | hResource で識別されるリソースが依存する先のリソースのハンドルです。 |
公式ドキュメント
戻り値
操作が成功した場合は、ERROR_SUCCESS (0) を返します。
操作が失敗した場合、 AddClusterResourceDependency は システム エラー コードのいずれかを返します。戻り値として次の値が考えられます。
| リターン コード/値 | 説明 |
|---|---|
|
リソースが自分自身に依存しています。 |
|
リソースの依存関係が既に存在します。 |
|
依存する側のリソースがクォーラムです。 |
|
これらのリソースが同じグループにありません。 |
|
少なくとも一方のリソースが削除対象としてマークされています。 |
|
依存する側のリソースが既にオンラインです。 |
解説(Remarks)
AddClusterResourceDependency 関数によって作成された依存関係は、 障害の発生後に、リソースがあるノードから別のノードへ移動される方法に影響します。また、リソースがオフラインにされ、再びオンラインにされる順序を決定します。
依存関係にあるリソースは、まとめて移動する必要があります。依存する側のリソースは、依存先のリソースよりも後にオンラインにする必要があります。
hResource と hDependsOn で識別される 2 つのリソースは、 同じグループに存在する必要があります。
hResource が既にオンラインである場合は、 AddClusterResourceDependency を呼び出さないでください。その呼び出しは ERROR_RESOURCE_ONLINE エラーで失敗します。なお、この動作は Windows Server 2008 で変更されています。AddClusterResourceDependency を呼び出して、リソースをオフラインにすることなくリソースの依存関係を変更できます。
リソース DLL から AddClusterResourceDependency を呼び出さないでください。詳細については、 Function Calls to Avoid in Resource DLLs を参照してください。
LPC ハンドルと RPC ハンドルを同じ関数呼び出しに渡さないでください。渡した場合、その呼び出しは RPC 例外を発生させ、 さらに破壊的な影響を及ぼす可能性があります。LPC ハンドルと RPC ハンドルの作成方法については、 Using Object Handles および OpenCluster を参照してください。
Microsoft 公式リファレンス: 英語 (en-us) · 日本語 (ja-jp) · 原文ソース (GitHub)