Método IDispenserDriver::RateResource (comsvcs.h)

Evalúa qué tan bien coincide un recurso candidato.

Sintaxis

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

Parámetros

[in] ResTypId

El tipo de recurso que el Administrador de dispensadores busca buscar coincidencias.

[in] ResId

Recurso candidato que está considerando el Administrador de dispensadores.

[in] fRequiresTransactionEnlistment

Si es TRUE, el recurso candidato (ResId), si se elige, requiere la inscripción de transacciones. Si la inscripción es costosa, RateResource podría calificar este tipo de recurso menor que un recurso que ya está inscrito en la transacción correcta.

[out] pRating

La clasificación del dispensador de este candidato. Este parámetro puede ser uno de los valores siguientes.

Valor Significado
0
El recurso candidato no se puede usar para esta solicitud. El recurso no es o no se puede cambiar para que sea de tipo ResTypId.
1
El candidato es un mal ajuste, pero utilizable. El Administrador del Dispensador seguirá sugiriendo candidatos.
2
El candidato es mejor que los candidatos clasificados como 1. El Administrador del Dispensador seguirá sugiriendo candidatos.
100
El candidato es un ajuste perfecto. El Administrador del Dispensador dejará de sugerir candidatos.

Valor devuelto

Si el método se realiza correctamente, el valor devuelto es S_OK. De lo contrario, es E_FAIL.

Comentarios

Si fRequiresTransactionEnlistment es FALSE, un objeto se ha dispensado este recurso en esta transacción, el objeto utilizado y, a continuación, libera el recurso (explícita o implícitamente al final de la duración del objeto). Un segundo objeto de la misma transacción solicita un recurso similar y el recurso que se usa el primer objeto se considera. Este recurso es un buen candidato porque ya está inscrito en la transacción correcta.

Si un tipo determinado de recurso solo se puede usar una vez por transacción, un recurso que ya se ha usado una vez en la transacción se puede identificar mediante fRequiresTransactionEnlistment de FALSE y se puede rechazar para su uso posterior devolviendo *pRating=0.

Requisitos

Requisito Value
Cliente mínimo compatible Windows 2000 Professional [solo aplicaciones de escritorio]
Servidor mínimo compatible Windows 2000 Server [solo aplicaciones de escritorio]
Plataforma de destino Windows
Encabezado comsvcs.h

Consulte también

IDispenserDriver