- ExeOutput for PHP News
News and Change History
Version reference: 2.0.0 released on February 25th, 2017
If you are a registered user of our PHP compiler software ExeOutput for PHP 1.x, you should have received an email message with upgrade instructions. If not, please review our upgrade conditions.
Download ExeOutput for PHP
Send Mail Sample - March 4th, 2017
We released another sample for ExeOutput for PHP based on PHPMailer that shows you how can create a console app (PHP in CLI mode) that sends emails.
WordPress and Adminer Samples - March 2nd, 2017
We released the first two samples for ExeOutput for PHP based on WordPress and Adminer. We also included a step-by-step guide for using WordPress and ExeOutput for PHP to make stand-alone desktop apps.
Version 2.0.0 - February 25th, 2017
- Support for multiple versions of PHP: from 5.4 to 7.1. We still support Windows XP so we kept PHP 5.4, the last version that officially runs on this OS.
- Chromium engine upgraded to Chromium Embedded Framework version 3 - Chromium version 51.0.2704.84 - CEF 3 branch 2704.1427, with multithreading support, offering an HTML5-compliant Web browser.
- Ability to keep Windows XP compatibility for your applications: if the Rendering Engine's WindowsXPCompatible property is set to True, ExeOutput for PHP will use Chromium engine version 49 and CEF 3 branch 2623, the last ones that officially support Windows XP. Be sure to run the Web Update utility to download the Windows XP compatibility pack so that compilation files are available.
- PHP CGI is now directly used as an external process contrary to the old SAPI method used in ExeOutput 1.x. This brings several advantages: PHP is separated from the UI process, giving more stability and responsiveness. If the PHP process crashes, a new one is started if you refresh the webpage. Your application itself doesn’t crash.
- Full integration between PHP and Chromium rendering engine: AJAX, cookies, file upload and download dialog boxes, custom request and response HTTP headers, Developer Tools…
- New console application (command-line or CLI applications) generation: you can turn PHP scripts into stand-alone EXE files without any PHP dependencies.
- ExeOutput 2 still generates one single EXE file for distribution. Due to the size of the Chromium and PHP distributions, the EXE overhead’s size is near 30 MB.
- New UI editor to create customized toolbars, menu bars, ribbons… Associate actions to controls, define their properties...
- New skin engine and option not to use any skin at all (Windows look).
- Better support for PHP frameworks such as Laravel, CodeIgniter, Fat-Free...
- Can include a portable MySQL server (MariaDB) to work with your compiled PHP applications. The MySQL server is managed by the application itself without required user action.
- Export to PDF option in addition to Print.
- Support for OPCache and XDebug PHP extensions.
- Windows UAC option: EXE files can now request administrative rights.
- SHA256 code signing is supported for recent Windows versions.
- Support for Paquet Builder 3 in order to make Setup packages.
- Improved built-in PHP.INI editor, added search support.
- ExeOutput for PHP 2 can now run complex PHP projects such as WordPress, phpmyadmin, Adminer and so on (contrary to ExeOutput 1.x).
- We dropped support for Trident engine. For Windows 10, Microsoft ended development of Internet Explorer and its associated Trident engine (except security fixes). Currently, they don’t provide a way to implement the same engine as Microsoft Edge in legacy Win32 applications. It is said this could change in the future. When importing an ExeOutput 1.x project, the engine is automatically set to Chromium.
- Custom toolbar buttons and menus from ExeOutput 1.x projects can’t be imported in ExeOutput 2.
- New skin engine: old skins are no more compatible. ExeOutput 2 comes with a new set of skins. A new skin editor is also available.
- Dialog boxes in HTML format are automatically replaced.
- Macros script has been removed.
A backup in Zip format with modified data is created in the same folder as the EXOP project file when you import an ExeOutput 1.x project.
New in old ExeOutput for PHP releases
Version 1.7.0 - January 28th, 2013
- Switched to the latest PHP version available: 5.3.21.
- Added support for Chromium developer tools in Chromium applications. You can now use the chromium debugging tools (when activated, right click on a page and choose "Show Developer Tools"). This is an experimental feature.
- Applications can now automatically load external resource files (not compiled into the EXE file): you can for instance have image and media files outside the EXE file (in the same folder or a subfolder). If an HTML file references image1.png, the application will look for the image1.png file into its compiled data; if it is not found, it will try to locate it in the same folder as the EXE file (depending on the URI) and load it.
- Added "External Files" support for Chromium applications.
- Applications now offer optical zoom options (in Navigate menu: Zoom In, Zoom Out and Reset Zoom).
- New "Exclude Folders" option in File Manager: you can now exclude entire folders for the source file list update.
- The code blocks panel can now be collapsed in the code editor.
- Updated documentation, online version available at http://www.exeoutput.com/help
- Fixed missing dialog boxes bug in "Localization" page.
- Fixed global password bug (when global password was only containing digits).
- Improvement: "Change default homepage" now accepts homepages in subfolders.
- New HEScript functions: SetOpticalZoom and GetOpticalZoom.
- New resource strings: SZoomIn, SZoomOut, SResetZoom.
- Updated skin engine, PHP engine, scripting engine and internal compiler.
- Minor improvements.
Version 1.6.1 - December 3rd, 2012
- Updated internal Chromium engine: CEF version 1.1180.832 - Update to Chromium version 21.0.1180.91.
- Switched to the latest PHP version available: 5.3.19.
- Fixed popup flickering problems in applications with Trident engine.
- Fixed "Invalid Document: unexpected text in file prolog at position 1" bug when loading projects on some computers.
- Fixed possible corruption bug when saving projects.
- Chromium engine: Removed support for HTML5 audio & video tags. Added support for Flash objects (see general demonstration).
- Updated skin engine.
- Updated documentation.
- Minor modifications.
Version 1.6.0 - November 3rd, 2012
- Added support for Windows 8 and Trident shipped with Internet Explorer 10.
- Switched to the latest PHP version available: 5.3.18.
- Modified EXE structure so that executable files made with ExeOutput for PHP can be compressed with EXE packers like UPX, or protected with third-party EXE protection software.
- New global variable exocustomheader that allows you to send custom headers to remote servers. See the documentation for use.
- Now you can choose an HTML page as index page.
- Improved support for PHP frameworks: CodeIgniter, Silex, Laravel, Kohana. Detailed topics are available in the documentation about getting started with these frameworks.
- Added custom 404 error handler.
- New splash screen options: faster display, more image formats handled such as PNG, BMP, GIF, JPEG, TIF.
- New support for UPX compression: EXE files can be compressed directly when compiling them. UPX is not shipped with ExeOutput for PHP and can be downloaded with the Web Update utility.
- New option to define the default charset sent by the internal server to the internal browser.
- New find and search options in the built-in PHP editor.
- New "code blocks" feature in the built-in PHP editor: it lets you save and insert your favorite PHP code snippets.
- Fixed POST problems with Chromium engine.
- Fixed "Invalid Document: Unexpected text in file prolog at position 1" error when loading a project.
- Fixed UTF-8 encoding problems.
- Fixed "Only one instance of the application can be run at a time" problem with Chromium engine.
- Fixed problem with incorrect PHP.INI storage.
- Fixed progress bar visibility in Chromium.
- Fixed HEScript ParamStr function.
- Added support for $_SERVER variables: PATH_TRANSLATED, PATH_INFO, ORIG_PATH_INFO. Fixed PHP_SELF and SCRIPT_NAME.
- Recognizes more homepages like index.php => index.htm => index.html => index.xhtml when a URL without filename is used.
- Updated scripting engine, skin engine, XML internal engine.
- New skins: Office 2013 Blue, Win8, Win8_Ext.
- Lots of internal improvements.
- New improved documentation and online version available
- Applications made with ExeOutput for PHP require Windows XP SP3 at least.
- Runtime modules are now deprecated: ExeOutput for PHP always builds stand-alone applications. In order to generate smaller EXE files, it is now possible to enable compression with UPX.
Version 1.5.0 - March 8th, 2012
Support for Chromium engine
- New additional HTML rendering engine available based on the Google's Chromium project (WebKit + V8 JavaSript engines). Applications made with ExeOutput for PHP can now have native support for HTML 5 and CSS 3. This was made possible thanks to the Chromium Embedded Framework (CEF) project.
- You can switch between Chromium or Trident (Internet Explorer) engines without creating a different project.
- When using the Chromium engine, ExeOutput for PHP generates single and stand-alone EXE files. They can be compressed with an EXE packer like UPX (not provided).
- Chromium support remains experimental.
- new special protocols (Chromium only)
heopenit:// + virtual path to the file you want to open in the external application associated to its type (for instance, heopenit://mydoc.doc will extract and open mydoc.doc in Microsoft Word).
heopenext:// + path to an external file you want to open in the external application associated to its type (a file that is not compiled into the application but in the same folder as the EXE file).
heexternal:// + a URL, a path to an application: lets you start the associated application.
Improved PHP support
- Switched to the latest PHP version available: 5.3.10
- Uses the stable version of bcompiler (1.0.2) which fixes some bugs.
- Added compatibility with PHP frameworks like CodeIgniter.
- Virtual files (in the Data subfolder) can now be successfully hidden from the standard Open Dialog box. To activate this feature, you have to go to "PHP Settings" => "Main Settings" and enable "Use an absolute path for the virtual "Data" subfolder". Then enter the path of your choice, for instance X:\Data\. By using this feature, you won't be able to access real files that you could have placed in a real "Data" subfolder...
- Fixed: cURL's dependencies ssleay32.dll and libeay32.dll were not compiled sometimes.
- New option to customize the "Fatal PHP error" that is displayed when the PHP runtime fails to execute a PHP script. You can customize it thanks to the SPHPFatalErrorMsg resource string (Output => Language page).
- Improved virtual file handling by file_exists, is_file and is_dir.
- New: PHP warnings are now enabled by default. The application now asks you "Do you want to disable future error messages?" in case of multiple error or warning messages.
Improvements and new features
- New scripting engine. Full Unicode support in HEScript scripts.
- New improved script editor with code auto completion (CTRL+SPACE), parameters help (SHIFT+Click), better syntax highlighting.
- Fixed the "Runtime Error (at -1:0): Invalid Type" error that occurred while using specific Windows locales.
- Fixed wildcard password check routine.
- Fixed: in "Prompt Messages", the /§ did not work as a carriage-return-line-feed.
- EXE Version Information: version number format is no more restricted (for instance, you can enter 1.23.456.78 instead of 188.8.131.52).
- Improved: if you minimize an active page to the tray bar, then select a new page, the application now automatically restores and displays the new page.
- Improved built-in XML engine.
- New Authenticode code signing utility: you do not have to download and install SignTool yourself anymore.
- New Comments field in String Protection.
- Fixed window location bug when activating ExeOutput for PHP.
- Fixed random crash of ExeOutput of PHP or applications at end (nasty PHP bug).
- Fixed: "Reset Settings" now properly removes settings from the application.
- New skin engine. Skins were updated: if you created a custom skin with the skin editor, make sure it works fine with the new skin engine.
- New option to print without printer selection dialog box (global variable hedirectprint).
- Lots of improvements and minor bug fixes.
Improved Trident engine support
- Fixed CustomUserAgent problem when using %ORIGINAL% or leaving the field blank.
- Fixed: Images defined in a css file were not showing in compiled exe sometimes.
- Fixed Environment Options => Source File List Update settings were not saved.
- hescript:// commands with string parameters are now properly decoded from URL format. For instance, if you want to pass a parameter with a space, use %20: hescript://UserMain.RunIt|My%20Message
- Disabled "click" sounds by default in Trident applications.
- New option to disable the "F5" hotkey (refresh shortcut): global variable exodisableF5.
- Fixed: Print Preview was sometimes displayed.
- Improved general demonstration for Chromium and Trident engines.
- New XML parsing sample.
- The ExeOutput PHP runtime module is not compatible with applications made with previous versions of ExeOutput for PHP.
- HEScript function StrUtf8ToUnicode has been removed.
Version 1.4.1 - July 1st, 2011
- new debugging features: Store requests and errors in log file and Enable "Show Source" context menu.
- modified how SCRIPT_NAME and SCRIPT_FILENAME PHP variables are created.
- added REQUEST_URI and QUERY_STRING PHP variables.
- improvement: when requested URL contains no filename, e.g. http://heserver/folder1/, application now redirects to http://heserver/folder1/index.php
- removed hard-coded max execution time parameter (was set to 0).
- small minor changes.
Version 1.4 - June 21st, 2011
- New experimental multithreading support for your PHP applications. This makes GUI applications faster and more responsive while processing complex tasks and PHP scripts.
Note: you can disable multithreading support in PHP Settings / Main Settings.
- Added experimental support for flush() - it will work only if you do not disable multithreading support. Remember that some versions of Microsoft Internet Explorer will only start to display the page after they have received 256 bytes of output, so you may need to send extra whitespace before flushing. A sample is available in the General Demonstration.
- Fixed ssleay32.dll and libeay32.dll problems related to cURL.
- Fixed access violation when you open a menu item such as Help -> About while the page is refreshing.
IMPORTANT: do not forget to enable this option if you want to disable JS errors.
- Added IE7 compatibility mode option: if you want your application to use the IE7 rendering engine, even if IE8 or IE9 is set up. Option available at: Application Settings > Visual Controls > IE Browser > UseIE7CompatibilityMode
- You can now define whether third-party resources such as PDF, MP3, FLV, MP4... should be extracted to disk or virtualized (PHP Settings / Content Filetypes).
- Fixed require_once / include_once and similar problems that could occur in some cases.
- Added isappterminated global variable. It is set to "1" when the application is terminated. Useful for an infinite loop in PHP to find out whether it should exit. For instance, use this PHP code in your loops: if (exo_getglobalvariable("isappterminated", "0") == "1") break;
- Fixed: you can now remove empty folders with the Clean button in File Manager.
- Improved text compression.
- Improved skin engine.
- Improved internal behaviors.
- Updated demonstration and documentation.
Version 1.3 - April 28th, 2011
- new user guide in PDF format that you can print.
- improved support for Internet Explorer 9 and HTML5 / CSS3. Your applications will now render HTML content with the new Trident (MSHTML) engine provided with IE9 if the latter is installed.
- new EnableIE9GPUMode property (Application Settings > Visual Controls > IE Browser)
Allows your application to use GPU Rendering mode (hardware acceleration). By default, it will use Software Rendering mode. Only applicable if Internet Explorer 9 is installed on the end user's computer.
- new NoForceIEStandardMode property (Application Settings > Visual Controls > IE Browser)
When set to False (default), webpages are displayed in IEn Standards mode, regardless of the !DOCTYPE directive. When set to True, only webpages containing standards-based !DOCTYPE directives are displayed in IEn mode. (n = 8 if IE8 is installed, n = 9 if IE9 is installed).
- new project wizard look.
- added a new optional "External Path" column in the File Manager. You can activate it with the "Show "External Paths" Column" menu command in the popup menu (right click on the list to display it).
- new web update utility that can optionally check for new updates and additional downloads.
- new browse folder HEScript function named SelectDirectory.
- new improved script editor with code auto completion (CTRL+SPACE), parameters help (SHIFT+Click), better syntax highlighting.
- new CustomUserAgent property (Application Settings > Visual Controls > IE Browser)
Lets you change the User Agent of the browser. If you leave it blank, the default user agent will be used (for instance, with IE9 installed, it could be "Mozilla/5.0 (compatible; MSIE 9.0; Windows NT 6.1; WOW64; Trident/5.0)").
- PHP's $_SERVER['HTTP_USER_AGENT'] works now.
- minimal window width and height can now be set in Application Settings > Main Window.
- improved internal PHP.INI editor and HTML/PHP editor.
- splash screen bug (for the initialization dialog box) fixed.
- the initialization splash screen does not display a border anymore.
- Improved include, require, require_once... PHP functions for handling paths beginning with "../" and "./".
- optimized Run Application quick button: if you modify the project, the application is compiled again and immediately run.
- new cURL-related option: in the PHP extensions page, right click on php_curl.dll and you have the option to include or not the two DLLs required by cURL (libeay32.dll and ssleay32.dll).
- improved Printer options (Visual Controls / Printer page).
- new printer option ShowPageSetup to show/hide the Page Setup dialog before printing.
updated skin engine and skins.
- updated internal XML engine.
- updated general demonstration with new samples and look.
- updated documentation.
HEScript functions STRENCODEBINHEX and STRDECODEBINHEX were removed.
Version 1.2.1 - March 2011
- Fixed AJAX problem with jQuery 1.5.
- Fixed text property editor bug.
- new SQLite database editor sample.
- New global variable HEIEMajorVersion to get the version number of IE installed.
- Successfully tested with Microsoft Internet Explorer 9 RC.
- Minor changes.
Version 1.2 - January 2011
- The internal PHP runtime was upgraded to PHP 5.3.5.
- Improved debugger detection feature.
- Include/require/require_once/include_once was improved again in case of complex paths.
- Virtualization engine upgraded.
- Skin engine upgraded, skins updated.
- Fixed dll import bug in HEScript.
- Added noresize creation parameter to ShowPopup functions: you can create non resizable popup windows (see the documentation).
- Virtualization engine upgraded.
- Minor changes.
If you have a previous version of ExeOutput for PHP (prior to 1.2), it may be necessary to uninstall the previous version manually (see Uninstall section).
Registered users may require an updated license key. Please click here to obtain this license key online.
Version 1.1.5 - October 29th, 2010
- Fixed: SaveFileDialog was always returning an empty string.
- Added SCRIPT_FILENAME server variable.
- Improved version of include/require/require_once/include_once for compatibility with Embarcadero RadPHP and the RadPHP Component Library.
- Virtualization engine upgraded.
- Skin engine upgraded.
- Minor GUI fixes.
- New samples available on our website: make PDF with ExeOutput for PHP and fPDF, SQLite support, samples made with RadPHP and compiled with ExeOutput for PHP.
Version 1.1 - October 2010
- The internal PHP runtime was upgraded to PHP 5.3.3.
- New option to stop the execution of a faulty php script (in case of errors, warnings...). Otherwise, the program follows instructions from "error_reporting" in php.ini file.
- When PHP returns an HTTP code error, ExeOutput now shows it instead of "navigation to webpage canceled".
- Added support for is_file.
- Added new option: "Unpack the file(s) to virtual memory at startup" to File Properties. When the application starts, it unpacks the file to the virtual storage (the virtual subfolder named "Data" from the folder where the EXE is located). Note that the file is not unpacked to the hard disk, but in memory.
- Added PHP_SELF and SERVER_PORT server variables.
- Improved internal pluggable protocol.
- Updated skin engine and skins. New skins with Aero effects.
- Fixed Vista icon format bug.
- Fixed AJAX problem with POST method.
- Added new option (IE browser: DonotProcessEnterKeyMsg) to stop troubles with the ENTER key in HTML editors such as FCKEditor.
- Fixed language file import problem.
- Updated demonstration with topics about embedded PDF and AJAX use.
- New resource string: SPHPRuntimeFault is displayed to end users if the Visual C++ runtime is not available (MSVCR90.DLL).
- Minor changes.
Download Free Trial Buy Now