Condividi tramite


Metodo IDispenserDriver::RateResource (comsvcs.h)

Valuta la corrispondenza di una risorsa candidato.

Sintassi

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

Parametri

[in] ResTypId

Tipo di risorsa che il manager di Dispenser sta cercando di corrispondere.

[in] ResId

Risorsa candidata che viene considerata dal Manager Del Distributore.

[in] fRequiresTransactionEnlistment

Se TRUE, la risorsa candidato (ResId), se scelta, richiede l'inserimento delle transazioni. Se l'inserimento è costoso, RateResource potrebbe valutare tale risorsa inferiore a una risorsa già elencata nella transazione corretta.

[out] pRating

La classificazione del distributore di questo candidato. Questo parametro può avere uno dei valori seguenti.

Valore Significato
0
La risorsa candidato non è utilizzabile per questa richiesta. La risorsa non è o non può essere modificata in modo da essere di tipo ResTypId.
1
Il candidato è un male adatto, ma utilizzabile. Il Manager di Distributore continuerà a suggerire i candidati.
2
Il candidato è migliore dei candidati classificati come 1. Il Manager di Distributore continuerà a suggerire i candidati.
100
Il candidato è una soluzione perfetta. Il responsabile del distributore smetterà di suggerire i candidati.

Valore restituito

Se il metodo ha esito positivo, il valore restituito è S_OK. In caso contrario, è E_FAIL.

Commenti

Se fRequiresTransactionEnlistment è FALSE, un oggetto è stato dispensato questa risorsa in questa transazione, l'oggetto usato e liberato la risorsa (in modo esplicito o implicito alla fine della durata dell'oggetto). Un secondo oggetto nella stessa transazione richiede una risorsa simile e la risorsa utilizzata dal primo oggetto viene considerata. Questa risorsa è un buon candidato perché è già elencata nella transazione corretta.

Se un particolare tipo di risorsa può essere usato una sola volta per transazione, una risorsa che è già stata usata una volta nella transazione può essere identificata da un fRequiresTransactionEnlistment di FALSE e può essere rifiutata per un ulteriore uso restituendo *pRating=0.

Requisiti

Requisito Valore
Client minimo supportato Windows 2000 Professional [solo app desktop]
Server minimo supportato Windows 2000 Server [solo app desktop]
Piattaforma di destinazione Windows
Intestazione comsvcs.h

Vedi anche

IDispenserDriver