Aktivieren von Auto-Done für eine Methode
Sie können die Auto-Done-Funktion für jede Methode aktivieren, die von einer Komponente verfügbar gemacht wird, für die die COM+ JIT-Aktivierung aktiviert ist. Wenn die JIT-Aktivierung deaktiviert ist, ist auto-done nicht verfügbar.
Sie sollten auto-done nur für eine Methode aktivieren, die bewusst so geschrieben wurde, dass sie diese Funktion nutzt, da diese Funktion möglicherweise das erwartete Verhalten der Methode ändern kann.
Wenn Sie auto-done aktivieren, ändern Sie das Standardverhalten der JIT-Aktivierung und der automatischen Transaktionen für diese Methode. Sie können dieses Feature verwenden, da dadurch die Notwendigkeit entfällt, Konsistenz und Fertigkeit explizit zu deklarieren. Dies kann stattdessen einfach durch die Rückgabe eines HRESULT erfolgen, wenn die automatische Ausführung aktiviert ist. Wenn Sie auto-done aktivieren, weisen Sie COM+ im Wesentlichen an, Folgendes zu tun:
- Legen Sie das done-Bit standardmäßig auf True im Kontext fest, in dem das Objekt ausgeführt wird, wenn diese Methode aufgerufen wird.
- Überprüfen Sie das von der Methode zurückgegebene HRESULT. Wenn es SUCCESS oder FAILURE anzeigt, legen Sie das concistency-Bit entsprechend fest. Dies kann zu einem automatischen Aufruf von IObjectContext::SetComplete oder IObjectContext::SetAbort führen, je nachdem, was die Methode intern ausführt.
So aktivieren Sie die auto-done-Funktion für eine Methode
Klicken Sie im Detailbereich des Verwaltungstools „Komponentendienste“ mit der rechten Maustaste auf die Methode, die Sie konfigurieren möchten, und klicken Sie dann auf Eigenschaften.
Klicken Sie im Dialogfeld „Methodeneigenschaften“ auf die Registerkarte Allgemein.
Aktivieren Sie zum Aktivieren von auto-done das Kontrollkästchen Dieses Objekt automatisch deaktivieren, wenn diese Methode zurückgegeben wird. Wenn das Kontrollkästchen nicht verfügbar ist, müssen Sie zuerst die JIT-Aktivierung für die Komponente aktivieren. (Siehe Aktivieren der JIT-Aktivierung für eine Komponente für detaillierte Anweisungen.)
Klicken Sie auf OK.