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
  • Application Settings
  • WebView2 Rendering Engine Settings

WebView2 Rendering Engine Settings

5 min read

WebView2 Rendering Engine #

Your app made with ExeOutput for PHP can utilize the Microsoft Edge WebView2 control to display application content. WebView2 is powered by the same Chromium engine as the Microsoft Edge browser, ensuring your application supports modern web standards and technologies.

Overview #

Using WebView2 offers several advantages:

  • Modern & Evergreen: Your application will benefit from an up-to-date version of Chromium with regular platform updates and security patches. This ensures compatibility with the latest HTML5, CSS3, and JavaScript features.
  • Enhanced Performance: WebView2 provides robust performance and speed for complex web applications.
  • Access to Native Features: It allows for deep integration between your web code and the native capabilities of the Windows operating system.

👉 To use WebView2, your end-users must have the WebView2 runtime installed. If it is missing, your application will not start and will display an error message.

  • The WebView2 runtime is included by default on Windows 11 and recent versions of Windows 10.
  • On Windows 7, the runtime is automatically installed if Microsoft Edge is installed and Windows Update runs regularly.
  • On older versions of Windows (such as Windows 8.1), the runtime will likely need to be installed manually using the evergreen installer.

The official evergreen installer, MicrosoftEdgeWebview2Setup.exe, is available in the Redist sub-directory of your ExeOutput for PHP installation. You should bundle this installer with your application’s own setup program to ensure a smooth user experience.

Note

For more details on distributing the WebView2 runtime, please refer to the official Microsoft documentation: Distribute the WebView2 Runtime

WebView2 and Cookie Storage #

When using the WebView2 engine, ExeOutput for PHP sets the application’s internal domain to https://heserver.example/. This is different from the https://heserver/ domain used by the CEF engine.

This change is necessary due to the stricter security policies of the underlying Microsoft Edge browser. Modern browsers, including Edge, are increasingly limiting cookie functionality for non-standard domains. Using a domain that resembles a real-world domain, like .example, ensures that cookies, sessions, and other local storage mechanisms function correctly and reliably within your application.

If you were to use a simple hostname like heserver with WebView2, you might encounter issues with session persistence and cookie-based authentication. The .example TLD is reserved for documentation and testing purposes, making it a safe and appropriate choice for this internal application domain.

WebView2 Properties #

You can configure how the WebView2 engine behaves in your ExeOutput application using the following settings.

AdditionalChromiumArgs #

Add custom Chromium command-line switches.
Example to disable GPU-accelerated video:

--disable-accelerated-video

Separate multiple switches with spaces.

AllowExternalDrop #

If enabled, allows users to drag items from outside (e.g., Windows Explorer) into the WebView.

Note

If DisableDragDrop is enabled, it overrides this and blocks drag/drop entirely.

AllowPDFSaveAs #

Controls whether the Save As command is available in the built-in PDF viewer.

AreDefaultContextMenusEnabled #

Enables the default WebView2 context menus (right-click menus). Disable to remove them and rely on your own context menu.

AutoOpenExtensions #

Allows compiled files to open in their native applications when users click links to them.

Note

  • Provide a semicolon-separated list of file extensions (e.g., .docx;.xlsx).
  • Files are temporarily extracted to disk, which may allow copying—review security implications.
  • Ignored for PDF when the built-in PDF Viewer is enabled

AutofillEnabled #

Enables or disables form autofill.

Warning

There is no support for storing passwords securely.

Custom404Error #

Uses the custom 404 page defined in Dialog Boxes for missing pages.

  • If True: a 200 OK status is returned and your custom page is shown.
  • If False: a standard 404 Not Found is returned and the browser’s default error page appears.

CustomUserAgent #

Sets a custom User-Agent string.

DefLocale #

Specifies the Chromium locale (language).
Locales are in CEFRuntime\locales. Example:

fr

DeveloperTools #

Enables or disables Chromium DevTools. Users can access them from the internal browser’s context menu.

DisableDragDrop #

Blocks all drag-and-drop operations in the WebView (both internal and external).
Use to prevent accidental extraction/leaks of embedded resources.

DisableFindText #

Disables the Find Text command.

DisableImgDragDrop #

Prevents dragging images out of the WebView (which otherwise saves the image to a folder and can leak compiled resources).

DisableLocalCache #

Prevents the engine from writing cache and temporary files to disk.
By default (when not disabled), a subfolder inside the User Data directory is used. See Deployment options.

ForbidDownloadMimeType #

Blocks downloads—via context menu or default handlers—for specific MIME types while still allowing playback in media elements.
Example:

application/pdf;audio/ogg;audio/x-mpg;audio/mp3;audio/mpeg;video/ogg;video/mp4;audio/webm;video/webm;audio/wav

IsBuiltInErrorPageEnabled #

If enabled, WebView2’s built-in network/navigation error pages are displayed on failures.
Can be combined with Custom404Error depending on how you want 404/other errors handled.

Muted #

Mutes all audio output from the WebView.

PDFDisableMoreOptionsMenu #

Disables the “More options” (⋯) menu in the built-in PDF viewer to reduce access to actions such as download/print (depending on viewer UI).

PinchZoomEnabled #

Enables pinch-to-zoom.

PrivateMode #

Enables private/incognito mode for the WebView instance.

ShowDownloadDialog #

Shows the default download dialog when a file download begins. Disable to suppress the dialog (downloads may be blocked unless your app handles them). Useful with the dedicated HEScript UserMain event OnDownloadComplete.

SingleSignOn #

Enables single sign-on (SSO) where supported.

SwipeNavigationEnabled #

Enables swipe gestures for back/forward navigation (touch devices/trackpads).

TrackingPrevention #

Enables tracking prevention features.


Troubleshooting CORS Problems #

If the DevTools console shows errors like:

Uncaught DOMException: Blocked a frame with origin "null" from accessing a cross-origin frame.

you can temporarily disable CORS checks by adding this switch to AdditionalChromiumArgs:

--disable-web-security

Info

Use only for debugging; do not ship with web security disabled.

What are your Feelings

  • Happy
  • Normal
  • Sad

Share This Article :

  • Facebook
  • X
  • LinkedIn
  • Pinterest
Chromium Embedded Framework (CEF) SettingsMain Window Settings

Leave a Reply Cancel reply

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

Table of Contents
  • WebView2 Rendering Engine
    • Overview
    • WebView2 and Cookie Storage
    • WebView2 Properties
      • AdditionalChromiumArgs
      • AllowExternalDrop
      • AllowPDFSaveAs
      • AreDefaultContextMenusEnabled
      • AutoOpenExtensions
      • AutofillEnabled
      • Custom404Error
      • CustomUserAgent
      • DefLocale
      • DeveloperTools
      • DisableDragDrop
      • DisableFindText
      • DisableImgDragDrop
      • DisableLocalCache
      • ForbidDownloadMimeType
      • IsBuiltInErrorPageEnabled
      • Muted
      • PDFDisableMoreOptionsMenu
      • PinchZoomEnabled
      • PrivateMode
      • ShowDownloadDialog
      • SingleSignOn
      • SwipeNavigationEnabled
      • TrackingPrevention
    • Troubleshooting CORS Problems
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}