IDispenserDriver::RateResource メソッド (comsvcs.h)
候補リソースがどの程度一致するかを評価します。
構文
HRESULT RateResource(
[in] const RESTYPID ResTypId,
[in] const RESID ResId,
[in] const BOOL fRequiresTransactionEnlistment,
[out] RESOURCERATING *pRating
);
パラメーター
[in] ResTypId
ディスペンサー マネージャーが一致させるリソースの種類。
[in] ResId
ディスペンサー マネージャーが検討している候補リソース。
[in] fRequiresTransactionEnlistment
TRUE の場合、候補リソース (ResId) が選択されている場合は、トランザクション参加が必要です。 参加が高価な場合、 RateResource は、適切なトランザクションに既に参加しているリソースよりも低いリソースを評価する可能性があります。
[out] pRating
この候補のディスペンサーの評価。 このパラメーターには、次の値のいずれかを指定できます。
値 | 意味 |
---|---|
|
候補リソースは、この要求では使用できません。 リソースが ResTypId 型に変更されていないか、変更できません。 |
|
候補は不適切ですが、使用できます。 ディスペンサーマネージャーは引き続き候補者を提案します。 |
|
候補は、1 と評価された候補者よりも優れています。 ディスペンサーマネージャーは引き続き候補者を提案します。 |
|
候補は完璧です。 ディスペンサーマネージャーは候補者の提案を停止します。 |
戻り値
メソッドが成功した場合、戻り値はS_OK。 それ以外の場合は、E_FAIL。
注釈
fRequiresTransactionEnlistment が FALSE の場合、オブジェクトはこのトランザクションでこのリソースを割り当て、オブジェクトはリソースを使用して解放しました (オブジェクトの有効期間の終了時に明示的または暗黙的に)。 同じトランザクション内の 2 番目のオブジェクトが同様のリソースを要求し、最初のオブジェクトが使用したリソースが考慮されます。 このリソースは、正しいトランザクションに既に参加しているため、適切な候補です。
特定の種類のリソースをトランザクションごとに 1 回だけ使用できる場合、トランザクションで既に 1 回使用されているリソースは 、fRequiresTransactionEnlistment の FALSE で識別でき、*pRating=0 を返すことでそれ以降の使用を拒否できます。
要件
要件 | 値 |
---|---|
サポートされている最小のクライアント | Windows 2000 Professional [デスクトップ アプリのみ] |
サポートされている最小のサーバー | Windows 2000 Server [デスクトップ アプリのみ] |
対象プラットフォーム | Windows |
ヘッダー | comsvcs.h |