Skip to content

File Properties Editor

Properties for file compression and security can be edited via the File Manager. To edit their properties, select one or more files, then click Properties (or press Ctrl+P). The following window will appear:

file properties

If the selected file is a PHP script, you will see two tabs: Properties and Security. For other file types, only the Properties tab is available.

The name and type of the selected file or "Multiple files" will be displayed if several files are selected. Hovering over the file name will show the full path to the file in a tooltip.

Folder Properties

You can also set properties for an entire folder: select a folder in the "Folder Tree" and click Properties. The "Folder" window will appear:

folder properties

For folders, you can apply property values to all files and subfolders within. For example, excluding a folder will automatically exclude all contained files and subfolders.

Warning

Folder properties override individual file properties: if a folder is set to be kept external, individual file settings within that folder cannot be altered. In such cases, ExeOutput will disable the corresponding checkbox.

File Properties

Compilation Properties

  • Exclude the selected file(s): If enabled, ExeOutput for PHP will exclude the file from the compilation, making it completely unavailable. Excluded files are marked with a red cross in the File Manager.

  • Do not compress the selected file: If this option is enabled, ExeOutput for PHP will compile the file but not compress it. The file is stored uncompressed in the application's data folder. This option is beneficial for including files that are already compressed.

  • Unpack the file(s) to virtual memory at startup: This option unpacks the file to virtual storage (the virtual subfolder named "Data" within the folder where the EXE is located) when the application starts. The file is unpacked to memory, not to the hard disk, and can be accessed by PHP as if it were a regular file on the disk. This is akin to the internal exo_unpackvirtualfile PHP function. This setting helps prevent end users from substituting PHP files with altered versions in the "Data" subfolder.

Keep file external and copy it to the "Data" subfolder

To avoid the unpacking process, large files or folders with many files can be kept outside the application .EXE file. These files are then loaded directly from the "Data" subfolder, which significantly reduces loading times.

If this option is enabled, ExeOutput for PHP will automatically copy the external files to the designated location in the "Data" subfolder.

Important

Existing external files in the destination folder will be overwritten by ExeOutput for PHP if the source files are more recent than their copies in the destination folder.

Warning

External files must be deployed alongside the application .exe file. Installers generated by ExeOutput for PHP can include external files in the "Data" subfolder.

Encode external PHP files for enhanced security

You can encrypt external PHP files to ensure that their contents are accessible only to the application and invisible to end users.

The downside is that encryption extends the compilation time for each build of your application.

Note

This encryption feature is specific to PHP files; non-PHP files are not affected.

Learn more about external files

Security

This tab offers two security features specific to PHP.

Protection Marks

You can mark selected PHP files for additional protections, such as internal encoding. These protections must be enabled in the PHP settings ribbon to take effect.

Encode php file with internal protection: This option encrypts the PHP file's content at compilation, ensuring it remains encrypted in memory even at runtime. This is beneficial for protecting your PHP source code from being exposed during a memory dump.

Tip

The "Do not cache php source file in memory" option is incompatible with the "Unpack the file(s) to virtual memory at startup" setting.