08. juni 2004 - 19:28Der er
6 kommentarer og 1 løsning
FSO tempfiles og multiple sessions
Kan man ikke komme til at oprette den samme fil flere gange hvis man benytter FSO (File System Object) til at lave et tilfældigt navn (som her i eksemplet) ?
Set fso = CreateObject("Scripting.FileSystemObject") tempname = fso.GetTempName Response.Write tempname Set fso = Nothing ' Output: ' radC2AAC.tmp
...ikke hvis man sidder og tester foran sin egen computer, men snarere hvis man har en travl server med flere session's kørende på én gang...?
Jeg tænker, at man på en eller anden vis kan bruge sessionID * klokkeslæt til at lave et *garanteret* tilfældigt navn.
hmm.. Altså du kan jo bare lave en test for om filen findes inden du opretter den, og gør den ikke det, så opretter du, ellers vælger du et nyt navn..:?
Altså i stilen af: <% Set fso = CreateObject("Scripting.FileSystemObject") tempname = fso.GetTempName do while fso.fileExists(tempname) tempname = fso.GetTempName loop set f = fso.createTextFile(tempname) Response.Write tempname Set fso = Nothing %>
Er ikke helt sikker på løkken, men tror den virker.
Men det er selvfølgelig overflødigt hvis getTempName virkelig virker :-). Det jeg har haft lidt svært ved, er nemlig at finde noget ordentlig info om emnet (tæt på at købe en tyk bog om emnet!)
Det tror jeg faktisk. Jo mere jeg læser om FSO, jo flere eksempler finder jeg på at det bliver brugt. Og ingen har nævnt at det skulle være et problem med overlappende tilfældige navne -
såeeehh...jeg tror godt jeg tør binde an med at bruge det!
Jeg har i mellemtiden prøvet noget skægt: jeg satte serveren til at oprette tilfældige filnavne indtil den stødte på en fil med samme navn. Det skete, efter at den havde oprettet adskillige tusinde filer (så min "paranoia" var begrundet!). I praksis betyder det dog ikke så meget da jeg sletter disse .tmp filer når de ikke skal bruges mere...
Synes godt om
Ny brugerNybegynder
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.