Ordner vergleichen



  • Hi,

    gibt es eine Möglichkeit, ganze Ordner (und natürlich deren Inhalt) auf Gleichheit zu überprüfen?
    Ist für ein Backup gedacht, dass nach dem Kopieren schaut, ob alles geklappt hat, sollte also präzise arbeiten.



  • Ja klar !

    Du musst alle Dateien der Ordner einzelnd auf Unterschied überprüfen :
    Guck mal nach den Funktionen FindFirstFile / FindNextFile (rekursiv aufrufen !). Wenn beide Ordner gleich sind, dann sind auch jeweils die WIN_32_FIND_DATA (?) structs die von FindFile zurückgegeben werden gleich.



  • Jo, aber ich dachte da eher an was, womit ich alles automatisch abgleichen kann; vielleicht auch aus der STL oder so, denn ich weiß ja nicht, wie viele Unterordner es gibt und das könnte dann doch recht aufwändig werden...



  • Original erstellt von Luy:
    Jo, aber ich dachte da eher an was, womit ich alles automatisch abgleichen kann; vielleicht auch aus der STL oder so, denn ich weiß ja nicht, wie viele Unterordner es gibt und das könnte dann doch recht aufwändig werden...

    Mmh, ich glaube in der STL gibts da nix zu.
    Der Trick mit findfile :

    • Du startest in START (bei beginnt : C:)
      --Dann alle Dateien suchen und vergleichen (immer noch in START/C:\)
    • Alle Verzeichnisse in START/C: suchen
    • Ins erste Verzeichnis wechseln und zum ersten Punkt springen.

    Müsste eigentlich so klappen, wenn nicht kann ich dir noch was alten Code von mir zuschicken 🙂



  • Original erstellt von Luy:
    ..., denn ich weiß ja nicht, wie viele Unterordner es gibt und das könnte dann doch recht aufwändig werden...

    Das WIRD aufwendig.



  • Es gibt ein sogenanntes Archivbit. Das ist gesetzt, wenn die Datei verändert oder erzeugt wird.
    Ein Backupprogramm sollte dieses Flag zurücksetzen. Dann geht das Entscheiden was gesichert werden soll nämlich viel schneller.



  • Naja, vielen Dank mal für die Antworten, ich muss dann wohl in sauren Apfel beißen:(


Anmelden zum Antworten