Troubleshooting command-line preset output generation failure

Issue

When generating output using the command-line utility with multiple presets, you may encounter errors such as “rh-render-process-gone” or Java OOM errors, causing the process to hang. This can result in RoboHelp becoming stale or stuck, and the preset output generation failing. This behavior is expected and can be resolved by following the troubleshooting steps outlined in this article.

Why does the issue arise?

The command-line preset output generation failure happens majorly due to below reasons:

  • Insufficient system resources (such as CPU and memory), can trigger the “rh-render-process-gone” error, causing the process to become stale.
  • RoboHelp is built on the Electron framework, and this issue occurs due to changes introduced in Electron version 14 and later. Electron, which internally uses Chromium, enforces a hard memory limit for the main process; 8 GB on Windows and 16 GB on macOS. For large projects, this can lead to the process running Out of Memory (OOM), causing the issue when the user has a large project or is trying to generate multiple preset outputs parallel.
Nota:

Chromium implemented these limits to enhance performance and security, and there is no available workaround to disable or modify this setting. Earlier versions of Electron had no restriction on RAM consumption, so this issue didn't arise when generating multiple outputs via the command line.

How to troubleshoot the issue?

  1. Download the single_preset_output.zip file on your system. Extract the zip file.

  2. Navigate to the solution folder and locate the file named preset_output.bat. Open it using a text editor, for example Notepad.

  3. Set the following variables as listed below:

    • project file path as per the location where your .rhpj file is saved for the desired project. For example, set the project file path as: PROJECT_FILE="C:\sanitization-effort\Sanitized.rhpj".
    • value of variable OUTPUT_PRESET to your desired preset output. For example: "Frameless".
    • LOG_FILE path to your desired file system path.
    • OUTPUT_DIR to your desired output directory path on the system.
  4. Save the file, after successfully editing all the details.

  5. Open Command prompt as an administrator and navigate to the location where your preset_output.bat file is present. For example, if your file is present at location C:/Downloads/solution/preset_output.bat then run the following command in the terminal:

     cd "C:/Downloads/solution"

  6. Run the command: 

    .\main "preset_output.bat"

    Your preset outputs will be generated shortly in the OUTPUT_DIR path.

  7. If an existing RoboHelp process is running in the background, an error message “Another process is running” will appear (see image below). In this case, terminate the running RoboHelp processes and try again. Once resolved, the output will be generated successfully in the specified output folder.

    Nota:

    If you are using a custom script to generate multiple preset outputs and encounter failures, refer to the sample workaround provided in the multiple_preset_output.zip folder. Modify the contents of rh_workaround.bat and pdf_ap_1.bat within that folder to suit your requirements.

Adobe, Inc.

Dapatkan bantuan dengan lebih pantas dan mudah

Pengguna baharu?