ACUCOBOL-GT Runtime crashes for all users when one exits



In a Terminal Server environment, when the Runtime is physically on another machine and accessed via a mapped drive, the Runtime crashes for all users when either the first or last user to connect exits the application.  Whether it’s triggered by the first or last user depends on the OS.



This is a known problem and Microsoft has already fixed it in Windows Server 2016.  This Microsoft article describes the issue and workarounds:

The workarounds are:

  1. Install the Runtime on the server the remote users are connecting to.
  2. Connect to the server where the Runtime is installed and run the app there.
  3. Upgrade to Windows Server 2016 (requires also upgrading to ACUCOBOL-GT 10.1).
  4. Rebuild the Runtime with 'Swap Run From Network' enabled.

The last one requires Visual Studio be available. If you have the right version of Visual Studio follow these steps:

  1. Navigate to the lib directory of your 9.2.5 installation.
  2. Open the wrun32.sln in Visual Studio 2010 (for all versions 9.1 – 9.2).
  3. Right-click on the wrundll project and select ‘Properties’.
  4. Under ‘Configuration Properties’ expand ‘Linker’ and select ‘System’.
  5. Select ‘Swap Run From Network’ and change it to ‘Yes’ and click ‘OK’
  6. Build the wrundll project.
  7. Copy the new wrun32.dll from the lib directory to the bin directory replacing the original.

 (If you are running ACUCOBOL-GT version 10.0 or 10.1 you must use Visual Studio 2012.)

Comment List