Components All New MacOS Windows Linux iOS
Examples Mac & Win Server Client Guides Statistic FMM Blog Deprecated Old


Sets the read only flag for a file or folder.

Component Version macOS Windows Linux Server iOS SDK
Files 12.5 ❌ No ✅ Yes ❌ No ✅ Yes, on Windows ❌ No
MBS( "Files.SetReadOnly"; Path; Value )   More


Parameter Description Example
Path The native path to the file or folder to be checked. "C:\Users\Christian\Desktop\test.txt"
Value The new state.
Pass 1 to make file read only or 0 to clear flag and allow it to tbe read only.


Returns OK or error.


Sets the read only flag for a file or folder.
See also Files.SetPosixPermissions for macOS and Linux.

This function requires a native path. Use Path.FileMakerPathToNativePath to convert a FileMaker path to a native path if required. If you like to have the user choose the path, you can use FileDialog functions.
For Server be aware that server has limited permissions and may not be able to access all files on a computer.


Set file to be read only:

Set Variable [ $r; Value: MBS( "Files.setReadOnly"; "C:\Users\Christian\Desktop\test.txt"; 1) ]

Clear flag if set:

Set Variable [ $path ; Value: "C:\Users\Christian\Desktop\test.txt" ]
# check if file is marked read only
Set Variable [ $isReadOnly ; Value: MBS( "Files.IsReadOnly"; $path) ]
If [ $isReadOnly = 1 ]
    # remove read only flag
    Set Variable [ $r ; Value: MBS( "Files.SetReadOnly"; $path; 0) ]
End If

See also

Release notes

Blog Entries

This function is free to use.

Created 11st September 2022, last changed 13th May 2023

Files.SetPosixPermissions - Files.SetSystemImmutable