Avatar billede lifeweb Nybegynder
28. maj 2006 - 15:04 Der er 4 kommentarer

Tjekke om objekt eksisterer

Hej

Jeg vil gerne bruge minimum ressourcer på min server... Derfor har jeg lavet et script jeg kalder dbslut.asp som har til formål at stoppe samtlige objekter.

I nedenstående tilfælde er det et recordset og en connection til en database.

dbslut.asp:
<%
if isObject(rs) then
  if rs.State > 0 then
    rs.Close
  end if
  Set rs = Nothing
end if
if isObject(base) then
  if base.State > 0 then
    base.Close
  end if
  Set base = Nothing
end if
%>

Inkluderer jeg dbslut.asp mere end een gang får jeg flg fejl:
Microsoft VBScript runtime  error '800a01a8'

Object required

/dev/news_wysiwygtest/dbslut.asp, line 4

Jeg er dovent anlagt, hvorfor jeg gerne vil kunne inkludere scriptet flere gange uden at få en fejl - how do i do?
Avatar billede cpufan Juniormester
28. maj 2006 - 15:14 #1
eftersom du har lukket adgangen til db-trækket, kan den ikke finde dit result-set
Avatar billede cpufan Juniormester
28. maj 2006 - 15:14 #2
så skal du teste på om der et et result-set
Avatar billede cpufan Juniormester
28. maj 2006 - 15:15 #3
if rs not null then ....
Avatar billede softspot Forsker
28. maj 2006 - 15:20 #4
Kan du ikke bare lave (PFTUII!!!) en global variabel som angiver om du har lukket og slukket og så checke på den inden du udfører koden (kræver at du ikke benytter Option Explicit på nogle af dine sider). Nogenlunde således:

<%
if not page_deinitialized then
  if isObject(rs) then
    if rs.State > 0 then
      rs.Close
    end if
    Set rs = Nothing
  end if
  if isObject(base) then
    if base.State > 0 then
      base.Close
    end if
    Set base = Nothing
  end if
  page_deinitialized = true
end if
%>

NB: Vigtigt at du IKKE dim'er denne variabel (også derfor du ikke må benytte Option Explicit).
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester