APL+Win 14.2

The APL+Win v14.2 release is available and recommended for all current APL+Win subscribers.

To download this release, visit and and click "APL+Win v14.0.0x to v14.2 Update" or "APL+Win v14.2 installer".

The APL+Win 14.2 includes the following enhancements/bug fixes:


  1. ENHANCEMENT - Added a new shortcut to the APL+Win program group to Deactivate APL+Win. Upon a successful deactivation, you can reactivate APL+Win on the same computer or a different computer.
  2. ENHANCEMENT - A selection of a workspace in the MRU (Most Recently Used) list in the File menu while holding the Ctrl key will XLoad the workspace and not run the ⎕lx when set in the workspace.
  3. ENHANCEMENT - Updated ]UPACK user command to work with folders containing spaces in the names (long filenames). For this work, you must specify a semi-colon as a delimiter between long filenames.
  4. ENHANCEMENT - Added support for the value 0 for the Task Category and Event ID in ⎕LOG.
  5. ENHANCEMENT - Improved the handling of error messages produced by the APL+Win ActiveX Server (APLW.WSEngine and APLW.WS) for the methods XCall and XSysCall. Most error messages in XCall and XSysCall are now reported as "⎕WI WS ERROR: XXXX" where "XXXX" is the text of the error message that caused the failure instead of the unspecified generic one appearing below: '

    ⎕WI ERROR: APLW exception -2147467259 (0x80004005)

    Below are two examples of the new error messages:


  6. ENHANCEMENT - Updated the ]UNAMES user command with /SINCE option to support years > 2000 and case-insenstive name for the month.

Bug Fixes

  1. BUGFIX - The "[Config]ErrorLogFilter" entry in APLW.INI only displayed the first error message listed in the Error log file.
  2. BUGFIX - The "[Config]ErrorLogFilter" entry in APLW.INI displayed the wrong value for ⎕DM (out of sync) was in the Error log file.
  3. BUGFIX - FILE DATA ERRORS were incorrectly reported when reading some valid colossal files in version 14.1.
  4. BUGFIX - Executing optimized catenation on some boolean data could result in FILE DATA ERRORS when reading a component file or could cause APL+Win to crash.
  5. BUGFIX - The APL+Win ActiveX server terminated when executing the XCall method with the wrong number of arguments.
  6. BUGFIX - Changing the Frame's style property value to 7 then 0 didn't display a visible border on the Frame.
  7. BUGFIX - Corrected alignment problems with Delete, Move Up and Move Down buttons and added the Close button in the upper right corner of the Define Tools dialog.

APLNext C# Script Engine 14.2.01

  1. This version of the APLNext C# Script Engine requires APL+Win v14.2.01 (or above) and the APLNext C# Script Engine v1.1.16 (or above).
  2. The CSE Exec and ExecFile methods use an improved method to determine if the C# script has successfully executed. The APL+Win "⋄" suffix to the user provided script is no longer necessary.
  3. An internal try/catch block has been incorporated in APL+Win to return an error message if the result of the GetValue method is a C# object which has no direct representation in APL+Win.
  4. The new CSE AddCustomEventHandler and AddCustomEventHandlerEx methods have been implemented. The CSE was initially designed to support .Net routed events. Routed events require that the event handler function receives the application-specific event results as a single C# class derived from the .Net EventArgs class. A C# programmer can extend the EventArgs class to create a class which contains any .Net types. When APL+Win subscribes to a routed event the APL+Win event handler function receives the arguments specified by the AddEventHandler or AddEventHandlerEx CSE methods. Prior to the .Net implementation of routed events, a more general type of event existed in which the requirements on the event handler function arguments were less restricted. In this version of the CSE, this more general type of event is supported by the AddCustomEventHandler and AddCustomEventHandlerEx methods and the APL+Win system variable ⎕carg.
  5. If the value of the CSE returnonerror property is 1, the result of successful CSE methods such as Exec, ExecFile, ExecStmt, etc., will now be scalar 0 for consistency when the value of the CSE returnonerror property is 0.
  6. The CSE Script Engine Manual and the associated CSE Code Samples folder has been updated:
    • The link to the CSE Script Engine Manual and the CSE Code Samples zip file on the APL2000 Forum has been updated to access the new versions.
    • Documentation of the CSE AddCustomEventHandler and AdcCustomEventHandlerEx methods has been added.
    • Examples #034 and #035 have been updated.
    • Example #178 "Using .Net SqlGeometry in APL+Win" has been added.
    • Example #179 "Read Metatdata in FLAC Audio Files in APL+Win" has been added.
    • Example #180 and #185 for the CSE AddCustomEventHandler method has been added.
    • Examples #181-183 illustrate the use of .Net Regex in APL+Win to manipulate text strings.
    • Example #184 illustrating a more complex programmer defined argument to the CSE AddEventHandlerEx method has been added.
    • Example #186 illustrating the .Net error messages if the memory available to .Net is exhausted on the Workstation.
    • The CSE FAQ topics in the CSE manual "How to check for the availability of the CSE under program control?" and "Are the APL+WIN and CSE versions linked?" have been updated and incorporated into a single topic "Important CSE Error Messages".

Please send any questions or comments to APL2000 Technical Support