Sets the attributes of one or more files/directories.
FileSetAttrib ( "file pattern", "+-RASHNOT" [, recurse = 0] )
file pattern | The path of the file(s) to set, e.g. C:\*.au3, C:\Dir. (* and ? wildcards accepted - See Remarks) |
+-RASHNOT | Attribute(s) to set/clear. e.g. "+A", "+RA-SH" |
recurse | [optional] $FT_NONRECURSIVE (0) - no recursion (Default) $FT_RECURSIVE (1) - directories are recursed into. Constants are defined in FileConstants.au3. |
Success: | 1. |
Failure: | 0 if encountered any errors. |
See FileFindFirstFile() for a discussion about wildcards.
The file pattern cannot contain spaces!
The attributes that can be modified with the function are + or -:
"R" = READONLY
"A" = ARCHIVE
"S" = SYSTEM
"H" = HIDDEN
"N" = NORMAL
"O" = OFFLINE
"T" = TEMPORARY
(Note that you cannot set the compressed/directory attributes with this function.)
FileGetAttrib, FileGetTime, FileSetTime
#include <FileConstants.au3>
#include <MsgBoxConstants.au3>
If MsgBox(($MB_YESNO + $MB_SYSTEMMODAL), "", "Note: This is an example and shouldn't be run under normal circumstances. " & @CRLF & @CRLF & "Do you wish to run the example?") = $IDYES Then
; Mark all .au3 files in current directory as read-only and system.
If Not FileSetAttrib(@ScriptDir & "\*.au3", "+RS") Then
MsgBox($MB_SYSTEMMODAL, "Error", "Problem setting attributes.")
EndIf
; Mark all .bmp files in @HomeDrive and sub-directories writable and archived.
If Not FileSetAttrib(@HomeDrive & "\*.bmp", "-R+A", $FT_RECURSIVE) Then
MsgBox($MB_SYSTEMMODAL, "Error", "Problem setting attributes.")
EndIf
EndIf