Fehler bei der Serverausführung beim Aufrufen der MTS-COM-Komponente von ASP

Dieser Artikel hilft Ihnen, das Problem zu beheben, bei dem die Serverausführung fehlschlägt, wenn Sie eine COM-Komponente (Component Object Model) von Microsoft Transaction Server (MTS) von Active Server Pages (ASP) aufrufen.

Ursprüngliche Produktversion:   Internetinformationsdienste
Ursprüngliche KB-Nummer:   241057

Problembeschreibung

Wenn Sie eine COM-Komponente eines MTS-Pakets von ASP aufrufen, kann der folgende Fehler zeitweise auftreten:

Serverobjektfehler 'ASP 0177 : 80080005'
Server.CreateObject fehlgeschlagen
/xxxx.asp, zeile xx
Serverausführung fehlgeschlagen

Diese Fehlermeldung ist mit dem folgenden ähnlichen Ereignisprotokolleintrag verbunden:

EventID: 4134
Quelle: Transaction Server
Typ: Fehler
Kategorie: Executive
Fehler beim Erstellen aus dem Objektkontext: CoGetClassObject (ProgId: xxxx.xxxx) (CLSID: {B57CF3F7-66D3-496A-9D3B-55AE65A952FB}) (Schnittstelle: IClassFactory) (IID: {000000001-0000-0000-C000-000000000046}) (Microsoft Transaction Server Internals Information: File: d:\viper\src\runtime\context\ccontext.cpp, Zeile: 1285)
Daten (Wörter):
0000: 80080005

Oder der folgende Fehler kann auftreten, wenn die Komponente mithilfe der Methode anstelle von ASP erstellt CreateObject Server.CreateObject wird:

Microsoft VBScript-Laufzeitfehler '800a01ad'
ActiveX Komponente kann kein Objekt erstellen: 'xxxx.xxxx'
/modal/InvPerfStress.asp, Zeile 14

Ursache

Dies geschieht, wenn die Identität des MTS-Serverpakets auf festgelegt Interactive User wurde. Der interaktive Benutzer ist der Benutzer, der derzeit beim Server angemeldet ist (d. a. der Computer, auf dem das MTS-Paket gehostet wird). Wenn sich dieser Benutzer abmeldet, können die Komponenten im MTS-Serverpaket nicht erstellt und ausgeführt werden, und es wird ein Fehler zurückgegeben.

Schritte zum Reproduzieren des Verhaltens

  1. Erstellen Sie ein neues MTS-Serverpaket, und akzeptieren Sie die standardmäßige interaktive Benutzeridentität.

  2. Fügen Sie die COM-Komponente zu diesem Paket hinzu.

  3. Erstellen Sie Ihre ASP-Seite, und speichern Sie sie in einem virtuellen Verzeichnis.

  4. Während Sie beim Server angemeldet sind, fordern Sie die ASP-Seite von einem Browser auf einem anderen Computer an.

  5. Abmelden vom Server

  6. Fordern Sie die ASP-Seite erneut vom Browser auf einem anderen Computer an (oder aktualisieren Sie die in Schritt 4 angeforderte Seite).

  7. Der folgende Fehler wird in Ihrem Browser angezeigt, wenn die Komponente mit folgendem Code erstellt Server.CreateObject wird:

    Serverobjektfehler 'ASP 0177 : 80080005'
    Server.CreateObject fehlgeschlagen
    /xxxx.asp, zeile xx
    Serverausführung fehlgeschlagen

  8. Melden Sie sich beim Server an, und öffnen Sie den Internet Service Manager, um die Identität des MTS-Serverpakets auf einen bestimmten Benutzer zu ändern.

  9. Melden Sie sich erneut vom Server ab.

  10. Fordern Sie die ASP-Seite erneut vom Browser auf einem anderen Computer an (oder aktualisieren Sie die in Schritt 4 angeforderte Seite).

  11. Die Seite funktioniert wie erwartet.

Lösung

Legen Sie die Paketidentität auf einen bestimmten Benutzer fest.

Status

Es handelt sich hierbei um ein beabsichtigtes Verhalten.