IHolder::TrackResource-Methode (comsvcs.h)
Verfolgt die Ressource nach.
Syntax
HRESULT TrackResource(
[in] const RESID __MIDL__IHolder0003
);
Parameter
[in] __MIDL__IHolder0003
Der Handle der zu verfolgenden Ressource. Der Resource Dispenser hat diese Ressource bereits erstellt, bevor TrackResource aufgerufen wird.
Rückgabewert
Diese Methode kann die folgenden Werte zurückgeben.
Rückgabecode | BESCHREIBUNG |
---|---|
|
Die Methode wurde erfolgreich abgeschlossen. |
|
ResId ist kein gültiges Ressourcenhandle. |
|
Fehler bei der Methode. Die Ressource wurde nicht nachverfolgt. Die wahrscheinliche Ursache ist, dass die Transaktion des Aufrufers abgebrochen wird. |
Hinweise
Einige Ressourcen werden nicht im Bestand gehalten. sie werden immer nach Bedarf hergestellt. Der Holder wird nur als Mechanismus verwendet, um die am Ende der Lebensdauer eines Objekts übrig gebliebenen Ressourcen automatisch freizugeben.
TrackResource teilt dem Holder mit, dass eine Ressource nachverfolgt werden soll, bis sie durch Aufrufen von IHolder::UntrackResource freigegeben wird, oder bis das Objekt, das TrackResource genannt wird, freigegeben wird. Zu diesem Zeitpunkt gibt der Dispenser-Manager die Ressource automatisch frei.
Wenn TrackResource von einem Transaktionsobjekt aufgerufen wird, wird die IDispenserDriver::EnlistResource-Methode des Resource Dispensers zurück aufgerufen. Die EnlistResource-Methode kann die Ressource in die Transaktion aufnehmen oder S_FALSE zurückgeben, was angibt, dass die Ressource nicht transaktionsfähig ist und nicht eingetragen wurde.
Diese Ressource wird schließlich zerstört, nachdem beides zutrifft:
- Der Resource Dispenser ruft IHolder::UntrackResource auf (höchstwahrscheinlich auf Anforderung der Komponente), oder die Lebensdauer des Objekts endet.
- Die Transaktion, in der die Ressource eingetragen wurde (falls vorhanden), wird abgeschlossen.
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 |