ExeOutput for PHP
  • Discover
    Homepage
    Our Latest News and Articles

    Keep up-to-date with the latest developments, insightful articles.

    Why a PHP Compiler?

    Reasons for using our PHP compiler ExeOutput for PHP.

    Screenshots

    Get a visual tour of our software through various screenshots.

    Video and Screencasts

    Access a range of video content, from detailed tutorials to product demos.

  • Feature Tour
    All-in-one PHP to EXE Compiler
    Use PHP power to create Windows apps
    Full HTML5, JavaScript and CSS3 Support
    Make GUI And Console Apps with PHP
  • Downloads
    Get ExeOutput for PHP

    Download the installer of our PHP to EXE compiler

    PHP App Examples

    Download sample apps made with ExeOutput for PHP

    WordPress Desktop App

    Download the stand-alone WordPress app sample

  • Buy Now
  • Learn
    Documentation

    Full online documentation of ExeOutput for PHP

    PHP App Samples

    Example projects made with ExeOutput for PHP for various cases

    ChangeLog

    Version history and releases of ExeOutput for PHP

    Privacy Policy

    See our Privacy Policy for ExeOutput for PHP

    About Us

    More information about G.D.G. Software

  • Support
    Contact Us

    Contact our staff or open a support ticket

    Newsletter

    Stay Updated: subscribe to our newsletter

    Frequently Asked Questions

    Find your answer directly in our FAQ

    Support Center

    Get direct support for ExeOutput for PHP

    Affiliate Program

    Join our affiliate program to promote ExeOutput and earn money

    Community Forum

    Visit our support forum and ask your questions

Try For Free
My Account

Getting Started

11
  • Welcome to ExeOutput for PHP
  • Getting Started
  • Starting a New Project
  • Advice for Getting Started with PHP Applications
  • How to Compile Your Project
  • How Compiled PHP GUI Applications Work
  • How Compiled PHP Console Applications (CLI) Work
  • Using PHP Frameworks
  • Visual C++ Redistributable Requirement
  • Application Command Line Switches
  • PHP Samples

Working With PHP

12
  • Working with PHP
  • Choose a PHP Version
  • Accessing Files in Compiled PHP Applications
  • Saving Files with PHP in Desktop Applications
  • Solving PHP Errors
  • Using the Save As Dialog Box in PHP Applications
  • Selecting Local Files with PHP (File Upload Replacement)
  • Built-In ExeOutput for PHP Functions
  • About PHP Sessions and Cookies
  • Global Variables
  • Using the cURL Extension
  • Using exec(), system() in Applications

Databases

4
  • Using Databases in Applications
  • MySQL and MariaDB Support
  • Using a Portable MySQL (MariaDB) Server
  • How to Check MySQL Server Connection

JavaScript And Browser

14
  • JavaScript and the Chromium Browser
  • Developer Tools in ExeOutput Applications
  • The exeoutput JavaScript Object API
  • JavaScript window extension
  • Special Protocols for Links
  • HTML5 and CSS3 Support
  • Using HTML5 Video and Audio
  • Print, Kiosk Printing, and PDF
  • Opening New Windows
  • JavaScript window extension
  • Using Flash Objects (SWF) in Compiled Applications
  • Adding Custom Headers to Requests
  • How to Configure Proxy for Your App
  • HTTP Basic Authentication

File Manager

4
  • File Manager
  • File Properties Editor
  • About External Files
  • Internal Code Editor

Application Settings

9
  • Choosing and Configuring the Rendering Engine
  • Chromium Embedded Framework (CEF) Settings
  • WebView2 Rendering Engine Settings
  • Main Window Settings
  • UI Skin Properties
  • Application Components
  • Language and Localization
  • Startup and Exit Messages
  • Application Settings – Dialog Boxes

PHP Settings

7
  • PHP Settings – Main Settings
  • PHP Settings – PHP Extensions
  • PHP.ini Settings
  • PHP Settings – String Protection
  • PHP Settings – PHP Debugging
  • PHP Settings – External HTTP Server
  • Redirection and Routing

User Interface

13
  • User Interface Components
  • User Interface Editor
  • UI Control Actions
  • How to Modify Controls at Runtime
  • Status Bar Properties
  • Printer Properties
  • Tray Icon Properties
  • Context Menu Properties
  • Creating a Ribbon for Your Application
  • Toolbars in Your PHP Application
  • Menu Bar in your PHP application
  • Adding an Image or Logo to the UI
  • Using Timers and Cron Jobs in Your Application

Security

4
  • Security – Global Protection
  • Security – PHP Protection
  • Security – Code Signing (Digital Signatures)
  • Security – Licensing

Application Output

5
  • Application Output Settings
  • Output – Deployment Options
  • Application Loading Screens
  • Output – EXE Icon and Version Information
  • Output – Creating Installers or Zip Archives

Scripting with HEScript

9
  • Introduction to Scripting with HEScript
  • The HEScript Editor
  • Adding HEScript Code to Your Application
  • Script Templates
  • Running and Calling HEScript Procedures/Functions
  • HEScript Function Reference
  • How to Run an Executable Program
  • How to Prompt a User for Their Name Once and Store It
  • How to Call DLL Functions

Additional Information

6
  • Environment Options
  • Technical Notes Regarding Applications
  • Cloning a Project
  • Command Line Options
  • Contact Information
  • About this documentation
View Categories
  • Home
  • ExeOutput for PHP Help
  • Security
  • Security – Global Protection

Security – Global Protection

5 min read

To view your compiled PHP website, users must launch the .exe file. It is not possible to unpack a compiled application with a file archiver (like WinZip or 7-Zip). Ensure you back up your source files, because they cannot be extracted from a compiled application.

Applications built with ExeOutput for PHP feature several security options that you can configure on this page.

See also additional security options and recommendations for PHP files.

Global Password #

To restrict access to your application, you can password-protect it. Users will be prompted for the password before the application starts. If an incorrect password is entered, an error message is displayed (defined by the SInvalidPassword resource string), and the application closes immediately.

You can also customize the application’s behavior for incorrect password entries using the UserMain.OnInvalidPasswordAtStartup HEScript boolean event. The application invokes this event if the user provides an incorrect password. If you set the event’s result to True, the application will not exit.

function OnInvalidPasswordAtStartup: Boolean;
begin
  Result := True;
end;

To create a set of unique passwords for distribution to different customers, you can use wildcard characters. For example, you can set a global password like 123-4**-A**, where any character can be substituted for the wildcard placeholders.

Allowed Wildcard Characters #

  • #: Any digit (0-9).
  • _: Any single letter (a-z, A-Z).
  • *: Any character.

ExeOutput for PHP includes a password generator that creates lists of random passwords based on a provided mask.

password generator

Choose the number of passwords to create and click Generate.

Set a Global Expiration Date #

If you want your application to expire after a specific date, select the desired expiration date. After that date, the application will display an error message (defined by the SPublicationExpired resource string) and close immediately. Changing the system clock will not affect the expiration state.

When testing on your own computer, you can remove the expiration state by clicking Clear expiration info. This function only works if the application has already expired.

Finally, you can customize the application’s behavior when the expiration date is reached using the UserMain.OnExpiredPublication HEScript boolean event. The application invokes this event, and if you set its result to True, the application will not exit.

function OnExpiredPublication: Boolean;
begin
  Result := True;
end;

Check Application Size at Startup #

If an application is not downloaded successfully from the internet, it may result in a truncated file. Running an incomplete application may be unsafe. To prevent issues from truncated downloads or modified file sizes, you can enable this option. When enabled, it forces the application to verify its size at startup. If the size does not match the size at build time, an error message is displayed.

Note that this option is superseded by digital signatures. If you have a code signing certificate, it is better to sign your application digitally.

Disable Print Screen #

The Print Screen key allows Windows users to capture the entire screen to a bitmap (a screenshot). This screenshot is saved to the clipboard, and users can then paste it into any image editor or word processor. To disable this functionality, turn on the Disable Print Screen option. Pressing the key will no longer take screenshots while the application is running.

Notes:

  • However, this function does not stop dedicated screen capture tools.
  • Some programs (like screen capture tools) may also try to override the Print Screen hotkey, which could cause conflicts.

Disable Printing Feature in Entire Application #

This option disables printing functionality across the entire application. When this option is enabled, users will be unable to print any content, including HTML pages and PDF documents. This ensures that no part of the application’s content can be printed.

Note

This option does not disable the Print button on any toolbars or ribbons. You must remove any Print buttons manually; otherwise, clicking them will do nothing.

User Action Restrictions #

To enhance the security of your application, ExeOutput for PHP disables certain user actions by default:

  • View Source (Ctrl+U): The keyboard shortcut Ctrl+U, which normally allows users to view the HTML source code of a page, is disabled to protect your code.
  • Drag and Drop to Popups: Dragging external files and dropping them into pop-up windows is disabled.

Allow Only One Instance of the Application #

Enable this option to ensure that only one instance of your application can run at a time. If a user tries to run a second instance, it will immediately exit, and the original instance will be brought into focus.

Moreover, command-line arguments are passed directly to the running instance. This feature is useful for help files, as it lets you change the current topic, for instance, without having to close and restart the application.

Do Not Hide Virtual Files in Dialog Boxes #

By default, ExeOutput for PHP sets the “hidden” attribute for all virtual files in the Data subfolder (see Accessing Source Files from PHP). Thus, these files will not appear in the “Open” or “Save As” dialog boxes invoked when, for instance, a user chooses a file to upload.

If you want these files to appear for any reason, enable the Do not hide virtual files in open/save dialog boxes option. However, please note that virtual files can be copied to physical folders from these dialog boxes (though you can still encrypt your PHP source files).

Note: You can also try the option to Use an absolute path for the virtual “Data” subfolder.

HTTP Authentication #

For applications that require user registration and login, ExeOutput for PHP provides support for HTTP Basic Authentication. This allows you to protect specific pages or your entire application with a username and password.

What are your Feelings

  • Happy
  • Normal
  • Sad

Share This Article :

  • Facebook
  • X
  • LinkedIn
  • Pinterest
Security – PHP Protection

Leave a Reply Cancel reply

Your email address will not be published. Required fields are marked *

Table of Contents
  • Global Password
    • Allowed Wildcard Characters
  • Set a Global Expiration Date
  • Check Application Size at Startup
  • Disable Print Screen
  • Disable Printing Feature in Entire Application
  • User Action Restrictions
  • Allow Only One Instance of the Application
  • Do Not Hide Virtual Files in Dialog Boxes
  • HTTP Authentication
ExeOutput for PHP to EXE compiler

PHP to EXE App Compiler
© G.D.G. Software 2025

X-twitter Youtube
Software
  • Home
  • Feature Tour
  • Screenshots
  • Video and Screencasts
  • Home
  • Feature Tour
  • Screenshots
  • Video and Screencasts
Get
  • Download
  • Buy Now
  • PHP App Samples
  • My Account
  • Download
  • Buy Now
  • PHP App Samples
  • My Account
Connect
  • Latest News
  • Newsletter
  • Forum
  • Affiliate Program
  • Support Center
  • Latest News
  • Newsletter
  • Forum
  • Affiliate Program
  • Support Center
QUESTIONS?
  • Contact Us
  • FAQ
  • Documentation
  • Privacy Policy
  • About Us
  • Contact Us
  • FAQ
  • Documentation
  • Privacy Policy
  • About Us
Manage Consent
To provide the best experiences, we use technologies like cookies to store and/or access device information. Consenting to these technologies will allow us to process data such as browsing behavior or unique IDs on this site. Not consenting or withdrawing consent, may adversely affect certain features and functions.
Functional Always active
The technical storage or access is strictly necessary for the legitimate purpose of enabling the use of a specific service explicitly requested by the subscriber or user, or for the sole purpose of carrying out the transmission of a communication over an electronic communications network.
Preferences
The technical storage or access is necessary for the legitimate purpose of storing preferences that are not requested by the subscriber or user.
Statistics
The technical storage or access that is used exclusively for statistical purposes. The technical storage or access that is used exclusively for anonymous statistical purposes. Without a subpoena, voluntary compliance on the part of your Internet Service Provider, or additional records from a third party, information stored or retrieved for this purpose alone cannot usually be used to identify you.
Marketing
The technical storage or access is required to create user profiles to send advertising, or to track the user on a website or across several websites for similar marketing purposes.
  • Manage options
  • Manage services
  • Manage {vendor_count} vendors
  • Read more about these purposes
View preferences
  • {title}
  • {title}
  • {title}