Funktionreferenz


FileSetAttrib

Beschreibung anzeigen in

Setzt die Attribute einer oder mehrerer Dateien/Verzeichnisse.

FileSetAttrib ( "file pattern", "+-RASHNOT" [, recurse = 0] )

Parameter

file pattern Der Pfad der Datei(en), die verändert werden sollen, z. B. C:\*.au3 oder C:\Dir (* und ? Platzhalter werden akzeptiert - siehe Bemerkungen)
+-RASHNOT Attribut(e), die gesetzt oder entfernt werden sollen, z.B. "+A", "+RA-SH"
recurse [optional]
    $FT_NONRECURSIVE (0) - keine Rekursion (Standard)
    $FT_RECURSIVE (1) - Verzeichnisse rekursiv durchsuchen.

Die Konstanten sind in FileConstants.au3 definiert.

Rückgabewert

Erfolg: 1.
Fehler: 0 wenn irgendwelche Fehler aufgetreten sind.

Bemerkungen

Siehe FileFindFirstFile() für eine Auseinanderstzung über Platzhalter(wildcards).

Die file pattern darf keine Leerzeichen enthalten!
Die Attribute, die mit der Funktion verändert werden können, sind + oder -:
    "R" = Schreibgeschützt (READONLY)
    "A" = Archiv (ARCHIVE)
    "S" = System (SYSTEM)
    "H" = Versteckt (HIDDEN)
    "N" = Normal (NORMAL)
    "O" = Offline (OFFLINE)
    "T" = Temporär (TEMPORARY)

(Es ist zu beachten, dass das Attribut "komprimiertes Verzeichnis" nicht gesetzt werden kann.)

Verwandte Funktionen

FileGetAttrib, FileGetTime, FileSetTime

Beispiel

#include <FileConstants.au3>
#include <MsgBoxConstants.au3>

If MsgBox(($MB_YESNO + $MB_SYSTEMMODAL), "", "Bitte beachten: Dies ist ein Beispiel und sollte unter normalen Umständen nicht laufen. " & @CRLF & @CRLF & "Wollen Sie das Beispiel starten?") = $IDYES Then
    ; Kennzeichnet alle .au3 Dateien im aktuellen Verzeichnis als nur-lesend und System
    If Not FileSetAttrib(@ScriptDir & "\*.au3", "+RS") Then
        MsgBox($MB_SYSTEMMODAL, "Fehler", "Die Attribute konnten nicht gesetzt werden.")
    EndIf

    ; Kennzeichnet alle .bmp Dateien in @HomeDrive und Unterverzeichnissen als schreibbar und macht sie archivierbar
    If Not FileSetAttrib(@HomeDrive & "\*.bmp", "-R+A", $FT_RECURSIVE) Then
        MsgBox($MB_SYSTEMMODAL, "Fehler", "Die Attribute konnten nicht gesetzt werden.")
    EndIf

EndIf