ClusterResourceControl 関数 (clusapi.h)

リソースに影響を与える操作を開始 します。 実行される操作は、dwControlCode パラメーターに渡されるコントロール コードによって異なります。

構文

DWORD ClusterResourceControl(
  [in]            HRESOURCE hResource,
  [in, optional]  HNODE     hHostNode,
  [in]            DWORD     dwControlCode,
  [in, optional]  LPVOID    lpInBuffer,
  [in]            DWORD     cbInBufferSize,
  [out, optional] LPVOID    lpOutBuffer,
  [in]            DWORD     cbOutBufferSize,
  [out, optional] LPDWORD   lpBytesReturned
);

パラメーター

[in] hResource

影響を受けるリソースへのハンドル。

[in, optional] hHostNode

操作を実行するノードへの省略可能なハンドル。 NULL の場合、hResource によって識別されるリソースを所有するノードが操作を実行します。

[in] dwControlCode

実行する操作を指定する、CLUSCTL_RESOURCE_CODES列挙によって列挙されたリソース制御コード。 コントロール コードに関連付けられている構文については、次を参照してください。
コード アーキテクチャ と次のトピックを制御します。

[in, optional] lpInBuffer

操作に必要な情報を含む入力バッファーへのポインター。情報が必要ない場合は NULL

[in] cbInBufferSize

入力バッファーの割り当てられたサイズ (バイト単位)。

[out, optional] lpOutBuffer

操作の結果として得られるデータを受け取る出力バッファーへのポインター。データが返されない場合は NULL

[in] cbOutBufferSize

出力バッファーの割り当てられたサイズ (バイト単位)。

[out, optional] lpBytesReturned

操作に起因するデータの実際のサイズ (バイト単位) を返します。 この情報が必要ない場合は、lpBytesReturnedNULL を渡します。

戻り値

関数は、次のいずれかの値を返します。

リターン コード/値 Description
ERROR_SUCCESS
0
操作に成功しました。 操作で出力バッファーが必要な場合、 lpBytesReturned (入力時に NULL でない場合) は、バッファーで返されるデータの実際のサイズを指します。
ERROR_MORE_DATA
234 (0xEA)
lpOutBuffer が指す出力バッファーが、操作の結果のデータを保持するのに十分な大きさではなかった。 lpBytesReturned パラメーター (入力時に NULL でない場合) は、出力バッファーに必要なサイズを指します。 出力バッファーを必要とする操作のみが ERROR_MORE_DATAを返します。 lpOutBuffer パラメーターが NULL、cbOutBufferSize パラメーターが 0 の場合は、ERROR_MORE_DATAではなく、ERROR_SUCCESSが返される可能性があります。
ERROR_RESOURCE_PROPERTIES_STORED
5024 (0x13A0)
CLUSCTL_RESOURCE_SET_COMMON_PROPERTIESCLUSCTL_RESOURCE_SET_PRIVATE_PROPERTIESにのみ適用されます。 プロパティが正常に格納されたが、リソースにまだ適用されていないことを示します。 新しいプロパティは、リソースをオフラインにして再びオンラインにした後に有効になります。
ERROR_HOST_NODE_NOT_RESOURCE_OWNER
5015 (0x1397)
hNode パラメーターで指定されたノードは、hResource で指定されたリソースを所有するノードではありません。
システム エラー コード
操作が成功しなかった。 操作で出力バッファーが必要な場合、 lpBytesReturned で指定された値 (入力時に NULL でない場合) は信頼できません。

注釈

ClusterResourceControl がERROR_MORE_DATAを返す場合は、cbOutBufferSizelpBytesReturned が指すバイト数に設定し、関数をもう一度呼び出します。

LPC ハンドルと RPC ハンドルを同じ関数呼び出しに渡さないでください。 それ以外の場合、呼び出しは RPC 例外を発生させ、追加の破壊的影響を及ぼす可能性があります。 LPC ハンドルと RPC ハンドルの作成方法については、「LPC ハンドルと RPC ハンドル」および「OpenCluster」を参照してください。

ClusterResourceControl 関数は、制御コード関数の 1 つです。 コントロール コードとコントロール コード関数の詳細については、「コントロール コードの 使用」を参照してください。

要件

要件
サポートされている最小のクライアント サポートなし
サポートされている最小のサーバー Windows Server 2008 Enterprise、Windows Server 2008 Datacenter
対象プラットフォーム Windows
ヘッダー clusapi.h
Library ClusAPI.lib
[DLL] ClusAPI.dll

こちらもご覧ください

OpenCluster

リソース制御コード