Habi Geschrieben 31. Juli 2002 Geschrieben 31. Juli 2002 Hallo, ich habe folgendes Problem. Kann ich irgendwie eine eindeutige Nummer (oder sonst was) erzeugen/ermitteln, die mir eine Datei eindeutig identifiziert? Mein Problem ist, dass ich einen bestimmten Bereich auf der Platte überwachen möchte. Wichtig ist mir, dass ich auch z.B. nach dem Verschieben einer Datei von einem Verzeichnis A in B diese trotzdem über die ID identifizieren kann. Ideal wäre daher auch, wenn sich die ID nicht durch Änderungen/Umbennenen ändern würde. Der Name allein reicht mir leider nicht aus. Hat jemand eine Idee?? Timo Zitieren
nic_power Geschrieben 31. Juli 2002 Geschrieben 31. Juli 2002 Ja, Du kannst eine Hashfunktion (beispielsweise MD5) ueber den Dateiinhalt laufen lassen. Quellcodes sollten sich im Netz mit hilfe von Google zuhauf finden lassen. Nic Zitieren
Habi Geschrieben 31. Juli 2002 Autor Geschrieben 31. Juli 2002 Wäre ganz schön aufwendig und ausserdem abhängig vom Inhalt. D.h. änderungen im Inhalt = anderer Hashwert = Datei kann nicht mehr nachverfolgt werden.... Timo Zitieren
Klotzkopp Geschrieben 31. Juli 2002 Geschrieben 31. Juli 2002 Du willst eine Datei wiedererkennen, obwohl sich der Name, die Position im Dateisystem und der Inhalt geändert haben können? Da bleibt m.M.n nichts übrig, anhand dessen Du die Datei noch eindeutig identifizieren könntest. Wie wärs mit einem selbstgestrickten Dateisystem? Zitieren
Habi Geschrieben 31. Juli 2002 Autor Geschrieben 31. Juli 2002 Eben drum... Windows muss das doch intern auch machen. Und die Frage ist, kommt man an diese Info ran?! Timo Zitieren
Klotzkopp Geschrieben 31. Juli 2002 Geschrieben 31. Juli 2002 Wie kommst Du darauf, dass Windows das macht? Zitieren
Habi Geschrieben 31. Juli 2002 Autor Geschrieben 31. Juli 2002 Also, wenn ich meine Profs richtig verstanden hatte (damals), dann funktionieren "normale" Dateisysteme so. Unter Unix ist es ja ähnlich. Ob man Windows zu den "normalen" Systemen zählen sollte, das kann ich nicht sagen Zitieren
Klotzkopp Geschrieben 31. Juli 2002 Geschrieben 31. Juli 2002 Mit GetFileInformationByHandle bekommt man Zugriff auf eine BY_HANDLE_FILE_INFORMATION-Struktur. Inwieweit die Struktur gefüllt werden kann, hängt vom Dateisystem ab. Diese Struktur hat mit nFileIndexLow und nFileIndexHigh einen 64Bit-Wert, der die Datei eindeutig identifiziert. Ich kann aber nicht sagen, ob dieser Wert sich nicht ändert, wenn man die Datei umbenennt/ändert/verschiebt. Käme auf einen Versuch an. Zitieren
nic_power Geschrieben 31. Juli 2002 Geschrieben 31. Juli 2002 Ich würde mal vermuten, dass sich der Wert ändern, sobald man die Datei "anfasst" (also verschiebt oder kopiert). Laut http://msdn.microsoft.com/library/default.asp?url=/library/en-us/fileio/fileref_18j6.asp kann man diese beiden Eintraege verwenden, um zu ermitteln ob eine Anwendung ein und dieselbe Datei mehrmals geöffnet hat. Wenn die Dateien aber an unterschiedlichen Stellen im Filesystem liegen sind sie in diesem Sinne nicht mehr identisch. Nic Zitieren
Habi Geschrieben 31. Juli 2002 Autor Geschrieben 31. Juli 2002 Fast... ich habs gerade mal getestet. Die Nummer für eine Datei ermittelt. Datei umbenannt, verschoben = Nummer bleibt immer gleich. Allerdings verändert sie sich, wenn man die Datei verändert. Schade, schade... Timo Zitieren
Habi Geschrieben 31. Juli 2002 Autor Geschrieben 31. Juli 2002 Bin gerade am überlegen eine Datei anhand des Erstellungsdatums zu identifizieren. Laut Doku. sind das die Millisekunden seit 19xx. Mit einer Auflösung von 10 Millisekunden. Da sollten sich Dateien nicht die selbe Erzeugungszeiten haben :confused: Was haltet ihr davon, spricht da was dagegen?? Zitieren
nic_power Geschrieben 31. Juli 2002 Geschrieben 31. Juli 2002 Mich würde mal interessieren, wofür genau Du diese Eigenschaft benötigst. Üblicherweise ist es ja von Interesse, wenn die Datei (inhaltlich) manipuliert wurde. Du scheinst aber nach einer Möglichkeit zu suchen, eine Datei die irgendwann mal erstellt wurde (unabhängig von Veränderungen) wieder identifizieren zu können. Nic Zitieren
Habi Geschrieben 1. August 2002 Autor Geschrieben 1. August 2002 Genau, ich hab das Problem, das ich zu einer Datei zusatzinformationen in einer/mehreren extra Datei(en) ablegen möchte, die ich immer der entsprechenden Datei zuordner können möchte. Allerdings kann es eben vorkommen, das die datei verschoben, umbenannt usw. wird. Der Inhalt interessiert mich quasi überhaupt nicht... Timo Zitieren
Empfohlene Beiträge
Dein Kommentar
Du kannst jetzt schreiben und Dich später registrieren. Wenn Du ein Konto hast, melde Dich jetzt an, um unter Deinem Benutzernamen zu schreiben.