Topics   All   MacOS (Only)   Windows (Only)   Linux (Only, Not)   iOS (Only, Not)  
Components   Crossplatform Mac & Win   Server   Client   Old   Deprecated   Guides   Examples   Videos
New in version: 11.1   11.2   11.3   11.4   11.5   12.0   12.1   12.2   12.3   12.4    Statistic    FMM    Blog  


Compresses a few files into a zip archive.

Component Version macOS Windows Linux Server iOS SDK
Compression 6.0 ✅ Yes ✅ Yes ✅ Yes ✅ Yes ✅ Yes


This function was deprecated. Use Archive.Compress instead.

MBS( "ZipFile.CompressFiles"; SourceFolder; ZipFilePath; FileList; Overwrite; CompressionLevel )   More


Parameter Description Example
SourceFolder The native file path to the source folder for files to compress. "/Users/cs/Desktop/test"
ZipFilePath The native file path to the zip archive. "/Users/cs/Desktop/"
FileList The list of relative file names to compress.
Please only ASCII file names.
Overwrite Whether to overwrite the zip archive.
Pass 0 to not overwrite an existing file.
Pass 1 to overwrite.
Pass 2 to apend to a zip file.
CompressionLevel The compress level from 0 (no compression) to 9 (max compression).
Default is 9.


Returns OK or error.


Compresses a few files into a zip archive.
This is a simple function to compress a couple of files.
It does not preserve file permissions on Mac/Linux or other metadata.

And it may not work with non ASCII characters. We use UTF-8 on Mac/Linux/iOS, but there is no guarantee that this will work.

If you need more control over files being added, compression or error checking, please use example projects coming with plugin which use our other zip functions. Or use the shell functions and the zip command line tool.

Deprecated. Please use Archive.Compress for new projects.

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.


Compresses some image files:

# first get list of file names in folder:
Set Variable [$list; Value:MBS( "Files.List"; "/Users/cs/Pictures/TestFiles")]
# now compress them:
Set Variable [$r; Value:MBS( "ZipFile.CompressFiles"; "/Users/cs/Pictures/TestFiles"; "/Users/cs/Desktop/"; $list; 0; 9 )]

Compress some images on Windows:

MBS( "ZipFile.CompressFiles"; "C:\Users\Administrator\Documents"; "C:\Users\Administrator\Desktop\"; "MBSLogo100.png¶test.png¶other.jpg"; 0; 9 )

Zip a file on Mac:

MBS( "ZipFile.CompressFiles"; "/Users/cs/Desktop"; "/Users/cs/Desktop/"; "Kontakte.fmp12"; 1; 9 )

See also

Blog Entries

Created 16th January 2016, last changed 12nd June 2020

ZipFile.Close - ZipFile.CreateFile

Feedback: Report problem or ask question.

Start Chat