Avatar billede eksperten1 Nybegynder
12. februar 2003 - 10:20 Der er 3 kommentarer og
1 løsning

Overvåg filer med vent

Jeg har lavet et VBscript som aktiveres hvert minut. Scriptet laver thumbnails og kopierer filerne samt logger det i en sql server. Problemet er at scriptet gerne påbegynder arbejdet på en fil selvom den ikke er skrevet færdig under kopieringen til maskinen. (brugerne kan sende filer via FTP).

Hvordan kan jeg sikre mig at en fil ikke er ved at blive skrevet, jeg har forsøgt mig med file.modificationdate skal være ældre end 5 minutter, men det spiller ikke helt. Dertil kommer det at filerne nødig skulle ligge stille i 5 minutter.

Idéer, tanker, eksempler modtages med tak.

vh-Mark
Avatar billede bcdan Nybegynder
12. februar 2003 - 20:39 #1
Du kan prøve med -

While (not File.Exists(filename))
End While
While (Filelen(filename)=0)
End While

Hvis den eksisterer - ja, så venter den på at filstørrelsen bliver større end 0
M.v.h.
bcdan
Avatar billede eksperten1 Nybegynder
12. februar 2003 - 20:51 #2
Problemet er jo netop at den tager fat i filerne før end de er færdigskrevne, det er for jeg skal teste på at de ikke længere bliver skrevet til, men der er (vist) desværre ikke et flag jeg kan teste på.

Med dit eksempel vil den påbegynde arbejdet idet den opdager der er en fil med indhold, men hvad nu hvis det kun er 25% af indholdet der er der endnu ?

Tak for forsøget
Avatar billede nazaq Nybegynder
13. februar 2003 - 20:54 #3
Du kan jo teste filens størrelse med korte intervaller. Så snart filen ikke bliver større må den jo være færdig skrevet.

En anden mulighed er også at prøve på at åbne filen for at skrive til den. Hvis du kan det så er filen færdig skrevet ellers vil du få en fejl.

/NaZaq
Avatar billede eksperten1 Nybegynder
13. februar 2003 - 22:40 #4
Ja den første ting med at teste for om den bliver større har jeg tænkt på, men dit sidste forslag er nok det allerbedste, hvis den kan åbnes er filen vel skrevet færdigt... logik for burhøns.

Tak for idéen
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