Dateiattribute bei allen Dateien in Verzeichniss ändern



  • Hallo zusammen

    Ich möchte bei allen Dateien in einem Verzeichniss, sowie allen Unterverzeichnissen die Dateiattribute auf "normal" setzen.

    Gibt es eine andere Möglichkeit ausser mit SetFileAttributes() jede Datei einzeln anzufassen?

    Ich denke an so eine Funktion wo ich einen Pfad angebe und "sage" ändere alle enthaltenen Dateien sowie alle Dateien in allen Unterverzeichnissen.

    Es gäbe die unschöne Variante dies über eine Batchdatei mit dem Befehl attrib zu machen, was ich jedoch eigentlich nicht möchte.

    MfG Stephan



  • Dies ist quasi das klassische Beispiel für eine Rekursion. Am besten schreibst du dir eine Funktton "SetFolderAttributes", der du den Pfad übergibst. In dieser suchst du mit FindFirstFile und FindNextFile nach Dateien und auch Verzeichnissen. Bei einer Datei setzt du die Attribute, bei einem Verzeichnus rufst du SetFolderAttributes rekursiv mit dem vollständigen neuen Verzeichnisnamen wieder auf.



  • Hallo zusammen

    @AxelB
    So hab ich mir dies im Prinzip vorgestellt, jedoch habe ich gehofft, daß es schon eine fertige Funktion dafür gibt.

    Dann muß ich es eben per Hand am Arm machen.

    MfG Stephan



  • Stephan schrieb:

    Es gäbe die unschöne Variante dies über eine Batchdatei mit dem Befehl attrib zu machen, was ich jedoch eigentlich nicht möchte.

    Es gäbe auch noch die (genauso unschöne) Variante, attrib direkt per system()-Aufruf (oder CreateProcess()) anzustarten 😉


Anmelden zum Antworten