---
title: "Åtgärden är inte tillåten när objektet är stängt."
type: "forum-thread"
url: "https://www.webforum.nu/amne/asp/128429-åtgärden-är-inte-tillåten-när-objektet-är-stängt"
topic: "ASP"
topic_url: "https://www.webforum.nu/amne/asp"
author: "_Axtelius_"
published: "2005-05-18T14:52:46.000Z"
updated: "2005-05-20T18:49:43.000Z"
replies: 11
views: 1128
page: 1
pages: 1
language: "sv-SE"
site: "webForum — webforum.nu"
rights: "Upphovsrätten till varje inlägg tillhör dess författare."
attribution: "Citera som: webForum, https://www.webforum.nu/amne/asp/128429-åtgärden-är-inte-tillåten-när-objektet-är-stängt"
---

# Åtgärden är inte tillåten när objektet är stängt.

## #1 — _Axtelius_, 2005-05-18T14:52Z

Jag får dett meddelande i mitt adminsystem:
ADODB.Connection fel '800a0e78'

Åtgärden är inte tillåten när objektet är stängt.

/pf/admin1.asp, rad 211

kod: <http://www.aspsidan.se/code/default.asp?c=4143&error=211>
säkert inte bäst kodat men det funkar.

MVH Simon

Permalänk: https://www.webforum.nu/p/128429

## #2 — Guffa, 2005-05-18T15:48Z

Jag har sett betydligt värre... ;)

Jag ser inget fel i koden där. På rad 230 ska du däremot få det felet.

Såg även lite brister på vägen:

72: Recordsetet stängs inte om det är tomt.
178: Recordsetet stängs aldrig.
223: Recordsetet stängs aldrig.
230: Du stänger ett recordset som inte öppnats.
250: Du stänger databaskopplingen på fel ställe.
254: Här ska du stänga databaskopplingen.
257: Du ska inte använda Response.End för att avsluta koden normalt. Den avslutas när filen är slut.

Jag kan ha fel på någon punkt. Koden är inte så bra indenterad, så det är svårt att följa den.

Permalänk: https://www.webforum.nu/p/1613945

## #3 — Jesper T, 2005-05-18T15:53Z

indenterad = 

```
If 1 = 1 then
       Response.write "Puhh, skönt."
Else
       Response.write "Du är inte på jorden"
End if
```

Permalänk: https://www.webforum.nu/p/1613946

## #4 — _Axtelius_, 2005-05-18T16:10Z

Har åtgärdat de fel som du beskrev(tror jag), får detta felmeddelande nu:
ADODB.Connection fel '800a0e78'

Åtgärden är inte tillåten när objektet är stängt.

/pf/admin1.asp, rad 213

kod: <http://www.aspsidan.se/code/default.asp?c=4143&error=213>
Får samma fel om jag tar bort Set RecSet ...

Permalänk: https://www.webforum.nu/p/1613955

## #5 — Guffa, 2005-05-18T17:00Z

Jag ser absolut inget fel i koden som öppnar recordsetet.

Eftersom du inte använder recordsetet till att uppdatera databasen, och bara ska läsa det från början till slut, så kan du ju öppna det på det resurssnålaste sättet:

```
strRedPf = "Select * from pf order by datum DESC"
Set RecSetPf = objCon.Execute(strRedPf)
```

Testa om det blir bättre, annars får du börja felsöka. Kolla att databaskopplingen är öppnad när den där koden körs, och liknande.

Permalänk: https://www.webforum.nu/p/1613984

## #6 — _Axtelius_, 2005-05-19T12:57Z

Jag får detta då jag skriver ut objCon.
Provider=Microsoft.Jet.OLEDB.4.0;Password="";User ID=Admin;Data Source=C:\\WINDOWS\\Skrivbord\\Aw\\pf\\stat\\statdb.mdb;Mode=Share Deny None;Extended Properties="";Jet OLEDB:System database="";Jet OLEDB:Registry Path="";Jet OLEDB:Database Password="";Jet OLEDB:Engine Type=4;Jet OLEDB:Database Locking Mode=0;Jet OLEDB:Global Partial Bulk Ops=2;Jet OLEDB:Global Bulk Transactions=1;Jet OLEDB:New Database Password="";Jet OLEDB:Create System Database=False;Jet OLEDB:Encrypt Database=False;Jet OLEDB:Don't Copy Locale on Compact=False;Jet OLEDB:Compact Without Replica Repair=False;Jet OLEDB:SFP=False 

och detta då jag skriver ut strRedPf:

Select \* from pf order by datum DESC 

kan det var nåt fel med den förstnämda ?

Permalänk: https://www.webforum.nu/p/1614430

## #7 — Guffa, 2005-05-19T14:45Z

Den första ser helt rätt ut. Standardegenskapen för Connection är ConnectionString, så när du tar värdet av objektet så får du uppkopplingssträngen.

Det borde dock räcka med detta i uppkopplingssträngen:

Provider=Microsoft.Jet.OLEDB.4.0;Data Source=C:\\WINDOWS\\Skrivbord\\Aw\\pf\\stat\\statdb.mdb

Har du testat med Execute?

Permalänk: https://www.webforum.nu/p/1614476

## #8 — _Axtelius_, 2005-05-19T18:06Z

Går det inte att bara skriva 
Provider=Microsoft.Jet.OLEDB.4.0;Data Source=stat/statdb.mdb ??

Permalänk: https://www.webforum.nu/p/1614581

## #9 — Guffa, 2005-05-19T18:08Z

Nej. Då kommer den att leta efter filen utifrån där asp.dll ligger, alltså någonting som c:\\windows\\system32\\stat\\statdb.mdb.

Permalänk: https://www.webforum.nu/p/1614583

## #10 — @nders, 2005-05-19T18:12Z

Det verkar som att du missade Guffas fråga också.

> **Guffa skrev:**
>
> Har du testat med Execute?

Permalänk: https://www.webforum.nu/p/1614590

## #11 — emission, 2005-05-20T17:43Z

Set RecSetPf = Server.CreateObject("ADODB.Connection")

ska vara 

Set RecSetPf = Server.CreateObject("ADODB.Recordset")

Permalänk: https://www.webforum.nu/p/1614967

## #12 — Guffa, 2005-05-20T18:49Z

Såklart det ska vara. Tänk att jag missade det.

Det besvarar ju min fråga också. Ifall han hade testat med Execute istället så hade det ju fungerat.

Permalänk: https://www.webforum.nu/p/1614983

---

Tråden på webben: https://www.webforum.nu/amne/asp/128429-åtgärden-är-inte-tillåten-när-objektet-är-stängt
