Avatar billede tgl Nybegynder
12. januar 2006 - 15:47 Der er 14 kommentarer og
1 løsning

Browser fryser ved brug af FilesystemObject

Har denne kode på en asp-side hvor der skal slettes en fil, men når jeg forsøger at afvikle koden på min IIS 5.0 sker der intet.

Hvad er der galt med min  kode???

-----------------------------------------------------------
Dim filnavn
filnavn = Request.Querystring("filnavn")

Dim fso, Filepath, fileObject
Set fso = Server.CreateObject("Scripting.FileSystemObject")
Filepath = "d:\Inetpub\wwwroot\testmiljo\filer\"
Set filObject = fso.GetFile(Filepath&filnavn)        

On error resume next
If (err.number = 0) Then

If filObject.FileExists(Filepath&filnavn) Then   
filObject.DeleteFile(Filepath&filnavn)
End if

End if
   
Set filObject = Nothing
Set fso = Nothing
Avatar billede Slettet bruger
12. januar 2006 - 15:57 #1
Hej

I mine øjne ser dit ovenstående script rigtigt ud! Men for at lokalisere problemet lidt så prøv lige at lave en test med dette her script som med sikkerhed virker:
<%
dim fs
Set fs=Server.CreateObject("Scripting.FileSystemObject")
fs.CreateTextFile("c:\test.txt",True)
if fs.FileExists("c:\test.txt") then
  fs.DeleteFile("c:\test.txt")
end if
set fs=nothing
%>
- Bare med en fil som gerne må slettes...

Jeg mener. Det er ikke sikkert at det er på serveren fejlen ligger... Det kunne også godt være browseren eller lignende...

\Dan
Avatar billede Slettet bruger
12. januar 2006 - 16:00 #2
ups... Jeg overså da lige noget i dit script...
Skal din linie hvor du tjekker om filen eksisterer inden du sletter den ikke indeholde "true"?
Sådan her:
If filObject.FileExists(Filepath&filnavn) = True Then 

\Dan
Avatar billede tgl Nybegynder
12. januar 2006 - 16:17 #3
Jeg mener at True er underforstået når intet andet er nævnt, men jeg afprøver dine forslag.

Bliver nød til at løbe, men er tilbage i aften med svar.
Avatar billede tgl Nybegynder
12. januar 2006 - 21:24 #4
Hm, har nu tjekket med dit eksempel, men resultat er det samme.

Browserne, Firefox og IE, står og venter på at scriptet bliver færdigt.

Men det sker bare ikke...
Avatar billede Slettet bruger
12. januar 2006 - 22:20 #5
hmm... lyder underligt... Jeg kunne godt tilbøjelig til at tro det er serveren og ikke scriptet der er et problem med...

- Men jeg synes det er underligt den ikke bare kommer med en fejlmeddelelse så...
Prøv lige at fjerne dit tjek med om filen eksisterer, og se om den så kommer med en fejlmeddelelse om at filen ikke eksisterer...

- Og hvordan kan din querystring "filnavn" for eksempel se ud? Der må jo ikke være to skråstreger i træk...

Hænger browseren også bare hvis du prøver med nedenstående?
<%
dim fs
Set fs=Server.CreateObject("Scripting.FileSystemObject")
fs.CreateTextFile("c:\test.txt",True)
if fs.FileExists("c:\test.txt") then
  fs.DeleteFile("c:\test.txt")
Response.Write "Filen blev stettet!"
end if
set fs=nothing
%>

\Dan
Avatar billede tgl Nybegynder
12. januar 2006 - 22:55 #6
Øjeblik, tjekker lige dit forslag...
Avatar billede tgl Nybegynder
12. januar 2006 - 23:03 #7
Har nu ændret i koden :
-------------------------
Dim fso, Filepath
et fso = CreateObject("Scripting.FileSystemObject")
Filepath = Server.MapPath("../uploadfiler/"&filnavn&"")

On error resume next
If (err.number = 0) Then
fso.DeleteFile Filepath,true
else
response.write "Fejl : " & err.description       
End if
   
Set fso = Nothing
----------------------------------------------

Har afprøvet scriptet på mit webhotel og det virker som del skal!

Så problemet må være på min egen IIS 5.1.
Avatar billede tgl Nybegynder
12. januar 2006 - 23:05 #8
Nogen forslag på en mulig løsning?
Avatar billede Slettet bruger
12. januar 2006 - 23:11 #9
Tjae... Det kan måske være mappen der er skrivebeskyttet. Og du skal også give IIS-kontoen skrive-rettigheder til mapperne i root´en... Derudover skal du også "overordnet" give IIS tilladelse til at "skrive" til noget i al almindelighed...

\Dan
Avatar billede tgl Nybegynder
12. januar 2006 - 23:21 #10
Der er givet alle de rettigheder som kan gives.

Men mappen hvor filerne skal slettes fra viser at den er skrivebeskyttet.
Ser lige nærmere på det...
Avatar billede tgl Nybegynder
12. januar 2006 - 23:30 #11
Nå, jeg lukker for i aften - vender tilbage i morgen.
Avatar billede a1a1 Novice
13. januar 2006 - 03:13 #12
prøv evt og check at asp.net processen har adgang til "objectet", eller der er andet der fejler, med dette program:
http://www.sysinternals.com/Utilities/Filemon.html
Avatar billede tgl Nybegynder
14. januar 2006 - 17:48 #13
Har nu fundet løsningen :
1) deaktiverrede active scripting i Norton Antivirus
2) genstartede computeren
3) ..og nu virker det!

Takker for de kommentarer som er indløbet og lukker spørgsmålet.
Avatar billede tgl Nybegynder
14. januar 2006 - 17:48 #14
et svar...
Avatar billede tgl Nybegynder
14. januar 2006 - 17:49 #15
hovsa, et nyt svar...
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