Zum Inhalt springen

Eindeutige ID einer Datei ermitteln


Empfohlene Beiträge

Geschrieben

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

Geschrieben

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

Geschrieben

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?

Geschrieben

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 ;)

Geschrieben

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.

Geschrieben

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

Geschrieben

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

Geschrieben

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??

Geschrieben

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

Geschrieben

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

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.

Gast
Auf dieses Thema antworten...

×   Du hast formatierten Text eingefügt.   Formatierung wiederherstellen

  Nur 75 Emojis sind erlaubt.

×   Dein Link wurde automatisch eingebettet.   Einbetten rückgängig machen und als Link darstellen

×   Dein vorheriger Inhalt wurde wiederhergestellt.   Editor leeren

×   Du kannst Bilder nicht direkt einfügen. Lade Bilder hoch oder lade sie von einer URL.

Fachinformatiker.de, 2024 by SE Internet Services

fidelogo_small.png

Schicke uns eine Nachricht!

Fachinformatiker.de ist die größte IT-Community
rund um Ausbildung, Job, Weiterbildung für IT-Fachkräfte.

Fachinformatiker.de App

Download on the App Store
Get it on Google Play

Kontakt

Hier werben?
Oder sende eine E-Mail an

Social media u. feeds

Jobboard für Fachinformatiker und IT-Fachkräfte

×
×
  • Neu erstellen...