Share via


IDispenserDriver::RateResource-Methode (comsvcs.h)

Bewertet, wie gut eine Kandidatenressource übereinstimmt.

Syntax

HRESULT RateResource(
  [in]  const RESTYPID ResTypId,
  [in]  const RESID    ResId,
  [in]  const BOOL     fRequiresTransactionEnlistment,
  [out] RESOURCERATING *pRating
);

Parameter

[in] ResTypId

Der Typ der Ressource, die der Dispenser-Manager abgleichen möchte.

[in] ResId

Die Kandidatenressource, die der Dispenser-Manager in Betracht zieht.

[in] fRequiresTransactionEnlistment

Wenn TRUE, erfordert die Kandidatenressource (ResId), falls ausgewählt, eine Transaktionseintragung. Wenn die Registrierung teuer ist, bewertet RateResource möglicherweise eine solche Ressource, die niedriger ist als eine Ressource, die bereits in der richtigen Transaktion eingetragen ist.

[out] pRating

Die Bewertung dieses Kandidaten durch den Dispenser. Dieser Parameter kann einen der folgenden Werte annehmen.

Wert Bedeutung
0
Die Kandidatenressource kann für diese Anforderung nicht verwendet werden. Die Ressource ist nicht oder kann nicht in den Typ ResTypId geändert werden.
1
Der Kandidat ist nicht geeignet, aber verwendbar. Der Dispenser Manager schlägt weiterhin Kandidaten vor.
2
Der Kandidat ist besser als Kandidaten, die als 1 bewertet werden. Der Dispenser Manager schlägt weiterhin Kandidaten vor.
100
Der Kandidat passt perfekt. Der Dispenser-Manager schlägt keine Kandidaten mehr vor.

Rückgabewert

Wenn die Methode erfolgreich ist, wird der Rückgabewert S_OK. Andernfalls ist es E_FAIL.

Hinweise

Wenn fRequiresTransactionEnlistmentauf FALSE festgelegt ist, wurde in dieser Transaktion ein Objekt diese Ressource ausgegeben, das Objekt verwendet und dann die Ressource freigegeben (explizit oder implizit am Ende der Objektlebensdauer). Ein zweites Objekt in derselben Transaktion fragt nach einer ähnlichen Ressource, und die Ressource, die das erste Verwendete Objekt verwendet, wird berücksichtigt. Diese Ressource ist ein guter Kandidat, da sie bereits in der richtigen Transaktion eingetragen ist.

Wenn ein bestimmter Ressourcentyp nur einmal pro Transaktion verwendet werden kann, kann eine Ressource, die bereits einmal in der Transaktion verwendet wurde, durch eine fRequiresTransactionEnlistment von FALSE identifiziert und zur weiteren Verwendung abgelehnt werden, indem *pRating=0 zurückgegeben wird.

Anforderungen

Anforderung Wert
Unterstützte Mindestversion (Client) Windows 2000 Professional [nur Desktop-Apps]
Unterstützte Mindestversion (Server) Windows 2000 Server [nur Desktop-Apps]
Zielplattform Windows
Kopfzeile comsvcs.h

Weitere Informationen

IDispenserDriver