ExeOutput for PHP Changelog

What's new in ExeOutput for PHP 2021.0

Apr 27, 2021
  • New support for PHP 8. Nevertheless, the default PHP version used in ExeOutput for PHP remains 7.3. Start the Web Update utility to install PHP 8 or any other PHP version you may require.
  • Updated to CEF 89.0.15 which includes Chromium 89.0.4389.90.
  • Kiosk printing (silent print) is now handled. New Printer component property: EnableKioskPrint.
  • New global variables KioskPrintEnabled, KioskPrintCopies and PrintPreviewEnabled to control kiosk printing and print preview at runtime.
  • New global variable HEMyDocDirectory that returns the path to the current user's "My Documents" folder.
  • New "Rendering Engine" page in ExeOutput: you can now choose a CEF version that still handles Flash (but this is not recommended as Flash is discontinued).
  • The Chromium engine properties (rendering engine) were moved from User Interface to the new "Rendering Engine" page.
  • Old Flash content can still be played with Ruffle (our demonstration has been updated to show how to use Ruffle) or if you choose the CEF version 87 in "Rendering Engine" (and provide the correct pepper Flash player DLL component, not shipped with ExeOutput for PHP).
  • PHP runtimes updated to PHP 8.0.3, 7.4.16, 7.3.27.
  • Upgraded Adminer to 7.8, MariaDB to 10.4.18.
  • A New Code Igniter sample is available.
  • Improvements to the automatic configuration of the MariaDB database server. A log is now displayed.
  • If an error occurs and the PHP process returns an empty string, ExeOutput for PHP now displays the standard error page instead of a white page. The error page can be customized in the "Dialog Boxes" tab of ExeOutput.
  • "DisableDragDrop" in "Rendering Engine" now also disables dropping URLs.
  • Improved Web Update utility.
  • Improvements for window.resizeTo() on high DPI screens.
  • Fixed: "Always minimize to tray" was not working.
  • Fixed: target=_blank and heexternal no longer work in popup windows.
  • Fixed HEScript PrintPDFFile was not accepting parameters.
  • Fixed: AutoShowUrls was ignored if URLs begin with https.
  • Fixed "Abstract Error" if the end user clicks the splash screen in order to close it.
  • Fixed: DefaultText was not working (for the status bar).
  • Fixed: HEScript event OnNavigateComplete was not working.
  • Fixed: "Do not cache CEF files locally" did not work as expected.
  • Fixed: rare External exception 80000003 error.
  • Fixed JavaScript prompt() issue that now returns null and not an empty string if the end user cancels the prompt.
  • Updated documentation and samples.
  • Minor improvements.

New in ExeOutput for PHP 2020.2.1 (Apr 27, 2021)

  • Fixed a possible freezing problem while activating the software.

New in ExeOutput for PHP 2020.2 (Jun 15, 2020)

  • Compatible with Windows 10 May 2020 update (code 2004). Rebuild your application EXE files so that they can work properly on the last Windows 10 update.
  • Updated to CEF 83.3.12 which includes Chromium 83.0.4103.97.
  • New Rendering engine property: PHPOverrideMimeType. This lets you enable or disable whether PHP can set the Mime type for the data stream passed to the rendering engine. Turn this property to False if some downloads generated by your PHP scripts (such as Excel files) fail.
  • We now have auto-play enabled by default for HTML5 media player components. To make your video start automatically, just add autoplay to the HTML code, as in this example: <video loop autoplay controls controlsList="nodownload"><source src="/assets/myvideo.webm"></source></video>
  • PHP runtimes updated to PHP 7.4.7, 7.3.19, 7.2.31.
  • Fixed: "Always minimize to tray" was not working.
  • Minor improvements.

New in ExeOutput for PHP 2020.2 (Jun 15, 2020)

  • Compatible with Windows 10 May 2020 update (code 2004). Rebuild your application EXE files so that they can work properly on the last Windows 10 update.
  • Updated to CEF 83.3.12 which includes Chromium 83.0.4103.97.
  • New Rendering engine property: PHPOverrideMimeType. This lets you enable or disable whether PHP can set the Mime type for the data stream passed to the rendering engine. Turn this property to False if some downloads generated by your PHP scripts (such as Excel files) fail.
  • We now have auto-play enabled by default for HTML5 media player components. To make your video start automatically, just add autoplay to the HTML code, as in this example: <video loop autoplay controls controlsList="nodownload"><source src="/assets/myvideo.webm"></source></video>
  • PHP runtimes updated to PHP 7.4.7, 7.3.19, 7.2.31.
  • Fixed: "Always minimize to tray" was not working.
  • Minor improvements.

New in ExeOutput for PHP 2020.1 (Apr 2, 2020)

  • New sample that shows how to protect PHP desktop apps and add licensing options for selling apps
  • Updated to CEF 80.0.8 which includes Chromium 80.0.3987.132.
  • New Samples dialog box to load samples directly without navigation.
  • External files are now processed in a different thread, so that the main UI does not freeze when copying very large files.
  • Popups now appear as new windows in the taskbar.
  • New option in "Main Window": Popups stay on top.
  • Added DisableAlertDialogWorkaround option for disabling the status bar flicker (if the bar is hidden) related to JavaScript dialog boxes.
  • Fixed: PHP 5.6 was not working on Windows 10.
  • Minor improvements.

New in ExeOutput for PHP 2020.0 (Feb 3, 2020)

  • New support for PHP 7.4. However we stick with PHP 7.3 in the main distribution: use the Web Update utility to install PHP 7.4 if you need it.
  • Updated to CEF 78.3.9 which includes Chromium 78.0.3904.108.
  • Improved performance of applications, especially for detecting non-compiled virtual files.
  • New Print Preview when end users choose to print the current web page.
  • New option to disable the Print Preview in the Printer component: EnablePrintPreview.
  • New improved Keep Files External feature: in the File Manager, you can configure files and even folders that will be kept outside the application EXE file (not compiled and virtualized). ExeOutput for PHP will automatically copy them to the "Data" subfolder for you.
  • External PHP files can even be encoded so that their contents remain secret, and they can only be read by the application.
  • Keeping large "vendor" or "framework" directories outside the EXE dramatically improves the performance of huge applications, especially ones powered by frameworks such as Laravel.
  • Improved support for secondary and pop-up windows: pop-up windows are now skinned like the main window. You can access them with JavaScript methods window.open, window.resizeTo, window.moveTo... It is even possible to export the content of a pop-up window to PDF with window.exportPDF().
  • New Open Link In New Window command in the right-click context menu: this lets your end users open webpages in secondary windows. This option can also be disabled in the Context Menu component thanks to the new property: DisableOpenLinkNewWindow.
  • You can now configure properties for folders (files inside the folder will inherit the properties of their parent folder).
  • Configure PHP error logging directly in ExeOutput's PHP Debugging page: PHP errors can be stored to the file "php_errors.log" in the same folder as the EXE instead of message boxes.
  • Better support for multiple monitors (especially with different DPI per monitor on Windows 10).
  • Introduction of a router event to rewrite all URLs (similar to mod_rewrite in Apache): there is a new option "Enable custom router handler in HEScript (OnRouterURL event)" in PHP Main Settings and you can use the OnRouterURL event to rewrite URLs. Read more about URL rewriting and redirection rules in ExeOutput for PHP.
  • New Rendering Engine property: DisableDragDrop to disable drag/drop operations from other applications.
  • Easily deploy your applications thanks to the new Zip archive creation: ExeOutput for PHP scans for all files used by your application (EXE file, Data and MySQL subfolders) and compress them into a Zip archive. Just deploy the Zip archive: final users extract the Zip archive and launch the application immediately.
  • The "Custom folder name for storage folder" is now used for applications with the portable mode activated.
  • Improved portable mode and storage of local CEF data files.
  • Console applications now can use two global variables: HEPublicationFile and HEPublicationPath to retrieve the full EXE name and its path.
  • PHP runtimes updated to PHP 7.4.2, 7.3.14, 7.2.27.
  • Paquet Builder will now package the "MySQL" folder too in your app's installer (of course if you use the portable MySQL server in your project).
  • Paquet Builder is now configured to install applications to the local user's AppData folder instead of the Program Files directory. This is important if your PHP application writes files to some directories like some PHP frameworks do.
  • New option to wait some seconds for the initialization of the portable MySQL server. This avoids possible initial connection problems between the MySQL server and your PHP app.
  • You can now open the MySQL server's log directly from ExeOutput for PHP to check for possible errors.
  • Improved desktop notifications after the build.
  • The window maximized state is now properly restored if "saving user defined window position" is enabled.
  • Set memory_limit = 256 MB to default PHP.INI templates
  • New resource string for localization: SOpenLinkNewWindow.
  • Fixed some redirection problems in our scheme handler.
  • Fixed "PHP ERROR: System Error. Code: 233" that occurred on the five-hundredth call of the same page by any method (reload, Ajax, cron...)
  • Fixed: console apps (PHP in CLI mode) now return the correct exit code.
  • Fixed possible zoom in/out problems in applications.
  • Fixed access violation if you do not close the menu editor prior exiting the UI editor.
  • Fixed random "Cannot focus a disabled or invisible window" error.
  • Fixed focus lost in editable fields if all components are removed.
  • Fixed incorrect log entry "PHP error: FOUND" when an HTTP redirection was used.
  • Fixed: files with no extension were ignored by the Live Update feature.
  • Fixed: some popup windows were not showing again once displayed and closed.
  • Fixed error "Changing from current encoding to specified encoding is not supported" at startup on some non-English computers.
  • Fixed: Paquet Builder was not correctly configured to store the paths of files in the "Data" subfolder.
  • Updated portable MariaDB MySQL server (10.4) and adminer.
  • New samples based on Laravel or CodeIgniter available. Updated WordPress sample to use the new External Files feature.
  • Improved documentation with new theme and topics.
  • Updated general demonstration with samples for new features.
  • Minor improvements.

New in ExeOutput for PHP 2019.1 (Apr 18, 2019)

  • Updated to CEF 73.1.12 which includes Chromium 73.0.3683.75.
  • PHP runtimes updated to PHP 7.3.4, PHP 7.2.17, 7.1.28 and 5.6.40.
  • ExeOutput for PHP now offers a secure internal protocol to serve files: https://heserver/
  • New PHP Settings option: Use secure HTTPS for internal protocol (https://heserver/ instead of http://heserver/)
  • Improved behavior on very large screens with high DPI settings.
  • ExeOutput for PHP now also scans dependencies of dependencies for PHP extensions. Especially useful for intl extension.
  • When you add files to your project, ExeOutput for PHP now checks that added files are not already in the source list to avoid duplicates.
  • New EnableMediaStream property for the Chromium rendering engine, allowing WebRTC.
  • WebRTC is now possible: a demo sample shows you how to record audio files with end user's microphone.
  • Improved Status Bar Auto Show URLs option: it has now four new values HideAllURLs, HideExternal, HideInternal and ShowAll.
  • New property for Rendering Engine component: ForbidDownloadMimeType. This lets you indicate which mime types resources should not be allowed for download. For instance, if you enter audio/mp3;audio/ogg, MP3 files will not be allowed for download (but can still be played by the internal player).
  • Dropped global variable exointdownload, replaced by ForbidDownloadMimeType.
  • Dropped "external files" option in File Properties, because ExeOutput for PHP automatically looks for external files when a requested resource is not found among compiled files.
  • Added support for proxy server: the documentation shows you how you can configure a proxy at runtime for your applications to connect to the Internet.
  • New global variable HEStartCurrentDirectory that stores the current working directory when the EXE is started.
  • New HEScript function: ExecuteLiveHEScript that supports compiling and running HEScript code at runtime.
  • Fixed: the absolute path for the "Data" sub folder option did not work with PHP 7.3.
  • Fixed an issue with typing in text fields.
  • Fixed access Violation errors with canceled AJAX calls.
  • Fixed "Switch from current encoding to specified encoding not supported" bug at startup for some computers.
  • Fixed: the password input field gets the focus in the corresponding dialog box.
  • New demo sample: how to zip files and download generated zip archive.
  • New skins available.
  • Updated documentation.
  • Updated MariaDB MySQL server and Adminer packages.
  • Minor improvements.

New in ExeOutput for PHP 2018.3 (Oct 3, 2018)

  • Fixed: two Content-Type headers issued by PHP.
  • Virtual files (including PHP files) are now hidden by default in open and save dialog boxes.
  • New security option: Do not hide virtual files in open/save dialog boxes.
  • Removed default content-encoding set to UTF-8 in PHP.INI templates.
  • Fixed: the cron error message that could occur sometimes is no more displayed. Instead, the error will be logged if you enable debug log.
  • PHP runtimes updated to PHP 7.2.10, 5.6.38 and 7.1.22.
  • Minor improvements.

New in ExeOutput for PHP 2018.2 (Sep 18, 2018)

  • New multi-threaded compression and cache system: ExeOutput for PHP is now blazzing fast for creating PHP applications.
  • ExeOutput for PHP now only recompresses modified files when compiling: when you update one source file, the EXE is instantly recreated, without having to recompress all sources files. Compilation time is highly decreased!
  • ExeOutput for PHP now caches shared CEF runtime files locally to speed up application loading.
  • New Deployment option: do not cache CEF files locally (this will increase app loading delay but save disk space).
  • Support for Chromium 69 and CEF3 branch 3497.
  • A panel bearing a "Please wait" message is now displayed while the CEF engine is loading the contents at startup (instead of a blank window). The text can be modified with the new resource string named SCEFPleaseWait.
  • New "Hide system menu" option in Skin Properties: this lets you remove the system icon in the main window's title bar.
  • New Timer (cron jobs) UI component: you can trigger actions regularly such as running PHP code, calling HEScript functions... Refer to the "Timer / cron jobs" topic in the documentation for further explanation and demo.
  • New MP3 support: MP3 files are now played natively.
  • New action for UI controls: you can now run PHP code (from UI buttons, menu items, ribbon, timers...).
  • New possibility to have virtual PHP session files by updating the PHP.INI to store session files in a virtual folder given by %EXOPHPVIRTUALTEMP%. See the "PHP Sessions" topic in the documentation.
  • PHP runtimes updated to PHP 7.2.9 and 7.1.21.
  • New option to create a pure browser application: no other pre-defined UI item (GUI application) is added, except the browser component.
  • New option to keep CEF runtime files outside the EXE file. However, they must be installed separately.
  • New possibility to load the splash screen's image from an external file.
  • Tray Icon: ability to change the icon at runtime thanks to the new HEScript function named TrayChangeIcon. A sample is available in the documentation.
  • Added Windows color selection dialog box (TColorDialog) in HEScript.
  • The error message box displayed in case of PHP errors can now be closed with the system's close button and not only with the Yes/No buttons.
  • New AJAX demo in the Chromium demo application.
  • Fixed: focus problems with TAB and ALT+TAB in PHP applications.
  • Fixed: some command line switches for PHP applications were not working (page, ignorepos...)
  • Fixed: UI editor issue on multimonitor screens.
  • System DLL files are now marked as hidden in the File Upload dialog box.
  • Removed ShowPopup HEScript function.
  • Updated HEScript script and virtualization engines.
  • Updated documentation.
  • Minor improvements.

New in ExeOutput for PHP 2018.0 (Feb 2, 2018)

  • Support for PHP 7.2 and new libsodium encryption extension.
  • Support for Chromium 63 and CEF3 branch 3239.
  • Visual C++ runtimes are now integrated, so no more VC++ DLL dependency is required for PHP 7.x and 5.6. There is an option to disable this if you want.
  • ExeOutput for PHP now automatically scans selected PHP extensions for all dependencies and then includes them in the final EXE (or copies them to the proper folder). For instance, cURL dependencies are now automatically included, so we removed the manual option to include DLL dependencies.
  • Improved support for complex paths in PHP require and include commands.
  • New TImage component available in the UI editor, allowing you to insert images and logos in the interface of your apps. A new help topic is available with a tutorial.
  • Improved video and audio seekable support.
  • Improved progress bar behavior while compressing CEF runtime files.
  • Improved behavior of compiled PHP apps on multiple monitor setups. Be sure to disable "Always center the window" option in old projects.
  • Version information format (file version and product version) is now checked.
  • New option to create custom HTTP headers for requests. A new help topic is also available with sample code.
  • JavaScript command window.close is now working in HTML dialog boxes such as the About box. We recommend you to reset internal dialog boxes of your old projects when you load them in ExeOutput for PHP 2018.
  • Fixed random executable startup failures and other related memory errors.
  • Fixed: PHP opcache wasn't enabled in PHP.INI for PHP 7.1.
  • Improved support for PHP commands exec() and system(). The "Unable to fork" problem has been fixed too. You can now run EXE and batch files directly with PHP exec(). A new help topic is also available with sample code.
  • Added fastcgi.impersonate = 1 by default to PHP.INI.
  • Improved virtual file system.
  • Improved general Chromium demo.
  • Updated documentation.
  • Updated PHP samples.
  • Several internal improvements.

New in ExeOutput for PHP 2.2.1.0 (Nov 9, 2017)

  • Fixed: file properties were not saved.
  • Improved exclusion list for filenames such as index.php.bak. Click Reset in Environment Options / Exclude Files to add new exclusion filters to existing projects.
  • Updated to PHP 7.1.11 and PHP 5.6.32.
  • New PHP sample: create and view PDF in your PHP app.
  • Minor improvements.

New in ExeOutput for PHP 2.2.0.0 (Oct 24, 2017)

  • Improved high DPI support of ExeOutput for PHP: UI items are properly scaled according to monitor DPI, new vector graphics...
  • Updated to PHP 7.1.10.
  • HTML5 audio and video seek support.
  • New possibility to define if an extension is a ZEND extension.
  • Added support for Ioncube PHP encoder.
  • Improved popup behavior.
  • Popups display webpage titles now.
  • Updated virtual file system engine.
  • ExeOutput and apps now properly remember last window position on dual monitors.
  • Developer Tools are no more compiled into the EXE if the option is not enabled (decreasing final EXE size).
  • New HEScript Function: PrintPdfFile. Lets you export the current webpage to a PDF file silently.
  • Confirm, prompt and alert JS functions are now handled by ExeOutput and not CEF, allowing proper skin rendering.
  • Improved Live Update default extension list: wildcards are now supported, allowing the exclusion of backup files with extensions such as *.~*
  • Fixed: dual monitor display issues.
  • Fixed: the about box can appear blank sometimes.
  • Fixed: can't seek webm video in exe.
  • Fixed: NGHTTP2.DLL requirement for cURL (PHP 7.1 only).
  • Fixed: random access violation error message in PHP.
  • New cURL sample added to the general demo.
  • New cURL topic in online documentation.
  • Updated documentation.
  • Minor improvements.

New in ExeOutput for PHP 1.7.0.0 (Sep 23, 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.
  • Added JavaScript internal editor + syntax highlighting.
  • The code blocks panel can now be collapsed in the code editor.
  • Updated documentation
  • 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.

New in ExeOutput for PHP 1.6.1.0 (Dec 13, 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.

New in ExeOutput for PHP 1.6.0.0 (Nov 6, 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

New in ExeOutput for PHP 1.5.0.0 (Mar 9, 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 1.2.3.4).
  • 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 : hescript://UserMain.RunIt|My Message
  • 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.
  • Miscellaneous:
  • Improved general demonstration for Chromium and Trident engines.
  • New XML parsing sample.

New in ExeOutput for PHP 1.4.1.0 (Jul 2, 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.

New in ExeOutput for PHP 1.4.0.0 (Jun 22, 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.
  • Fixed missing JavaScript error notification: ExeOutput did not display usual JS error notifications, even though you have the Visual Controls > IE Browser > ScriptNoErrorMsg option unchecked.
  • 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.

New in ExeOutput for PHP 1.3.0.0 (Apr 29, 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.
  • new Utf8ToUnicode(str) and UnicodeToUtf8(str) JavaScript functions to easily convert text from UTF8 to Unicode and vice-versa.
  • updated skin engine and skins.
  • updated internal XML engine.
  • updated general demonstration with new samples and look.
  • updated documentation.
  • Compatibility:
  • HEScript functions STRENCODEBINHEX and STRDECODEBINHEX were removed.

New in ExeOutput for PHP 1.2.1.0 (Mar 3, 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.

New in ExeOutput for PHP 1.2.0.0 (Jan 27, 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.

New in ExeOutput for PHP 1.1.5.0 (Oct 31, 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.

New in ExeOutput for PHP 1.1.0.0 (Oct 21, 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.