PRESOURCE_CONTROL_ROUTINE コールバック関数 (resapi.h)
リソースに適用される操作を実行 します。 PRESOURCE_CONTROL_ROUTINE型は、この関数へのポインターを定義します。
構文
PRESOURCE_CONTROL_ROUTINE PresourceControlRoutine;
DWORD PresourceControlRoutine(
[in] RESID Resource,
[in] DWORD ControlCode,
[in, optional] PVOID InBuffer,
[in] DWORD InBufferSize,
[out, optional] PVOID OutBuffer,
[in] DWORD OutBufferSize,
[out] LPDWORD BytesReturned
)
{...}
パラメーター
[in] Resource
影響を受けるリソースのリソース識別子。
[in] ControlCode
実行する操作を表す制御コード。 ControlCode パラメーターの有効な値の一覧については、「リソースの種類の制御コード」を参照してください。
[in, optional] InBuffer
操作で使用されるデータを含むバッファーへのポインター。 データが必要ない場合は、InBuffer に NULL を指定できます。
[in] InBufferSize
InBuffer が指すバッファーのサイズ (バイト単位)。
[out, optional] OutBuffer
操作の結果として得られるデータを含むバッファーへのポインター。 OutBuffer は、操作がデータを返す必要がない場合は NULL にすることができます 。
[in] OutBufferSize
OutBuffer が指す使用可能な領域のサイズ (バイト単位)。
[out] BytesReturned
操作に起因するデータの実際のサイズ (バイト単位)。
戻り値
リターン コード/値 | Description |
---|---|
|
ControlCode に関連付けられている操作が正常に完了しました。 |
|
リソース DLL は、リソース モニターに対して、DLL によって提供される処理 (存在する場合) に加えて、ControlCode の既定の処理 (存在する場合) を実行するよう要求しました。 |
|
OutBuffer の割り当てられたサイズが小さすぎて、要求されたデータを保持できなかった。 BytesReturned は 、必要なサイズを示します。 文字列のバイト サイズを計算するときは、常に終端 の NULL を 含めます。 |
|
リソースの新しいプロパティ値がクラスター データベースに設定されているが、プロパティがまだ有効になっていないことを示します。 新しいプロパティ値は、リソースがオフラインになってオンラインにされた後に適用されます。 |
操作が失敗しました。 |
注釈
一部のコントロール コードはリソース DLL で処理する必要があり、他のコードはリソース モニターに残す必要があります。 ResourceControl エントリ ポイント関数の効果的な実装戦略については、「ResourceControl の実装」を参照してください。
例
「リソース DLL の例」を参照してください。
要件
要件 | 値 |
---|---|
サポートされている最小のクライアント | サポートなし |
サポートされている最小のサーバー | Windows Server 2008 Enterprise、Windows Server 2008 Datacenter |
対象プラットフォーム | Windows |
ヘッダー | resapi.h |