Dela via


Serverkörningen misslyckades när MTS COM-komponent anropas från ASP

Den här artikeln hjälper dig att lösa problemet där serverkörningen misslyckas när du anropar en Komponentobjektmodell för Microsoft Transaction Server (MTS) (COM) från Active Server Pages (ASP)

Ursprunglig produktversion: Internet Information Services
Ursprungligt KB-nummer: 241057

Symptom

När du anropar en COM-komponent i ett MTS-paket från ASP kan följande fel inträffa tillfälligt:

Serverobjektfelet "ASP 0177 : 80080005"
Server.CreateObject misslyckades
/xxxx.asp, rad xx
Serverkörningen misslyckades

Det här felmeddelandet är kopplat till följande liknande händelseloggpost:

EventID: 4134
Källa: Transaktionsserver
Typ: Fel
Kategori: Chef
Det gick inte att skapa från objektkontext: CoGetClassObject (ProgId: xxxx.xxxx) (CLSID: {B57CF3F7-66D3-496A-9D3B-55AE65A952FB}) (Gränssnitt: IClassFactory) (IID: {00000001-0000-0000-C00000000000046}) (Intern information om Microsoft Transaction Server: Fil: d:\viper\src\runtime\context\ccontext.cpp, Linje: 1285)
Data (ord):
0000: 80080005

Eller så kan följande fel inträffa när komponenten skapas med hjälp av CreateObject metoden i stället Server.CreateObject för från ASP:

Microsoft VBScript-körningsfelet "800a01ad"
ActiveX-komponenten kan inte skapa objekt: "xxxx.xxxx"
/ron/InvPerfStress.asp, rad 14

Orsak

Detta inträffar när MTS-serverpaketets identitet har angetts till Interactive User. Den interaktiva användaren är den användare som för närvarande är inloggad på servern (det vill: den dator som är värd för MTS-paketet). När den här användaren loggar ut kan komponenterna i MTS-serverpaketet inte skapas och köras, och ett fel returneras.

Steg för att återskapa beteende

  1. Skapa ett nytt MTS-serverpaket och acceptera standardidentiteten för interaktiv användare.

  2. Lägg till COM-komponenten i det här paketet.

  3. Skapa din ASP-sida och spara den i en virtuell katalog.

  4. När du är inloggad på servern begär du ASP-sidan från en webbläsare på en annan dator.

  5. Logga ut från servern

  6. Begär ASP-sidan igen från webbläsaren på en annan dator (eller uppdatera den sida som begärdes i steg 4).

  7. Följande fel visas i webbläsaren om komponenten skapas med hjälp av Server.CreateObject:

    Serverobjektfelet "ASP 0177 : 80080005"
    Server.CreateObject misslyckades
    /xxxx.asp, rad xx
    Serverkörningen misslyckades

  8. Logga in på servern och öppna Internet Service Manager för att ändra identiteten för MTS-serverpaketet till en specifik användare.

  9. Logga ut från servern igen.

  10. Begär ASP-sidan igen från webbläsaren på en annan dator (eller uppdatera den sida som begärdes i steg 4).

  11. Sidan fungerar som förväntat.

Åtgärd

Ange paketidentiteten till en specifik användare.

Status

Detta beteende är av design.