Druckversion dieses Themas

-cablemodem.ch - Forum (http://www.cablemodem.ch/cgi-bin/ikonboard/ikonboard.cgi)
--PC Probleme (http://www.cablemodem.ch/cgi-bin/ikonboard/forums.cgi?forum=9)
---Checken, ob File komplett geschrieben wurde (http://www.cablemodem.ch/cgi-bin/ikonboard/forums.cgi?forum=9&topic=338)


-- Veröffentlicht durch PatPowerMan am 8:30 pm am Mai 11, 2004

Ich sollte auf einem File-Server wissen, wann jeweils eine bestimmte (immer gleichnamige) Datei komplett bereit zur Weiterverarbeitung ist.

Wie kann ich in VB.NET oder in einer Kommando-Zeile feststelllen, ob nicht noch irgendein Kopiervorgang läuft?
Gibt es ein bestimmtes Merkmal, dass eine Datei auf einem NTFS als "komplett, fertig, no more in use" kennzeichnet?

Danke für Eure Ideen im voraus!


-- Veröffentlicht durch Krueger am 4:24 pm am Mai 12, 2004

wächst die Datei bis zum Schluss?
dann könntest du ne Schlaufe machen, aus der er rausgeht, sobald die datei nicht mehr grösser wird.

ansonsten hab ich keinen plan


-- Veröffentlicht durch PatPowerMan am 8:40 pm am Mai 12, 2004

Die Datei kann mehrere MB gross werden - wie definierst Du "nicht mehr grösser werden"?

Wie lange wartest Du, bis die Annahme, dass die Datei komplett ist - weil keine Grössenveränderung mehr stattfindet - erfüllt wird?


-- Veröffentlicht durch Rene am 10:13 pm am Mai 17, 2004

Check den Lock-Status. Normalerweise hat eine Datei die gerade erzeugt, geschrieben ist einen "RDONLY" Lock drauf.

Nein, keine Ahnung wie *genau*, Du hast mir nicht gesagt welche Programmiersprachen zur Auswahl stehen. :)

In Pseudocode:

while lock($file) = LOCK_EXCLUSIVE or LOCK_READONLY
{   sleep 10s  }
echo "fertig!"

Details der verschiedenen Lock-Zustände je nach Dateisystem und Plattform unterschiedlich (aber grundsätzlich sicherlich da sofern es sich nicht um DOS handelt)


-- Veröffentlicht durch PatPowerMan am 11:11 pm am Mai 17, 2004

Es mal wieder so ein ULTRA-Wurgel von einer externen Bude. Die hat es tatsächlich fertiggebracht auf einem Windows2000-Server eine Kornshell für Windows zu installieren *kotz*. Leider habe ich keinen blassen Schimmer, was für Attribute diese Kornshell beim schreiben hinterlässt.

Hab's schon mit Exklusiv-Öffnen versucht. Das Ergebnis ist aber reiner Zufall, mal gehts, mal nicht...

Als Programmiersprachen stünden VB, W2K-Kommandozeile und eben diese vi-würgel-ksh zur Verfügung (sogar ne crontab führen sie...)


-- Veröffentlicht durch Rene am 4:18 pm am Mai 22, 2004

Check mal ob da zufälligerweise ein komplettes Cygwin installiert ist (komplette Unix Umgebung unter Windows) falls ja hat es dort alles dabei um das Problem zu lösen.

VB kann ich leider nicht, aber auch dort sollte es APIs geben um den Lock-status eines Files herauszufinden und entsprechend reagieren zu können.


cablemodem.ch - Forum powered by Ikonboard
http://www.ikonboard.com
© 2000 Ikonboard.com