21 July, 2017

EurekaLog 7.6 is out

We are pleased to announce the availability of the new 7.6 version.

EurekaLog Logo
EurekaLog is a tool for Delphi and C++Builder that gives your application the power to catch every exception and memory/resource leak, generating a detailed log of the call stack (with unit, procedure and line number), optionally sending you a copy of each log entry via email or the Web via the most used Web Bug-Tracking tools (as Mantis, BugZilla, FogBugz, and JIRA).
EurekaLog represents the most advanced exception and memory leaks logger technology available for Delphi/C++Builder developers.

To learn more about EurekaLog, please visit our website at:

To download a demo, please visit:

If you would like to purchase a new license, please visit:

  1. Important: Installer will ask you a licence information. See: New license checks in EurekaLog installers
  2. Important: Debug information format was completely changed. Be sure to test your applications
  3. Important: Added a major upgrade to bug tracker code. Be sure to test your applications
  4. Important: BugID generation alg was changed. Be sure to test your applications
  5. Important: EurekaLog will now store configuration in .eof file instead of .dof, .bdsproj, .dproj, etc.
  6. Added: Support for 10.2 Tokyo
  7. Added: ecc32 will now modify uses list in your .dpr file to match specified configuration
  8. Added: --el_prepare switch is added to be used when --el_alter_exe is used
  9. Added: New option to stip all string names from debug information and store it in external file
  10. Added: Debug information's and ZIP's passwords are now saved locally on developer machine - to be used by application and Viewer (this simplifies local debugging when passwords are set). OnPasswordChange event will not be called
  11. Added: New "--el_password=debug-info-password" command-line option can be passed to application to decrypt encrypted debug information. OnPasswordChange event will not be called
  12. Added: Our own implementation of XML, XML-RPC, and SOAP. We no longer use RTL's implementation, therefore now we have support for bug tracker's API even on old IDEs
  13. Added: New options for bug trackers (new fields, append call stack instead of full bug report, links, text limits)
  14. Added: A helper "Connect" button in EurekaLog project options dialog to retrieve project names, users, field names, components, areas, and other info for bug tracker
  15. Added: Working hyper-links support in bug tracker success message via TaskDialogs (Vista+)
  16. Added: BugID tab in EurekaLog project options dialog - allowing you to customize uniqueness without writing OnCustomBugID event handler
  17. Added: New column in call stack: "Source" (e.g. actual .pas file name)
  18. Added: Threads selection to hang detection page
  19. Added: Support for MessageBox from NT services
  20. Added: "Lookup Error" option in Viewer - there is a new toolbar, as well as new context menu item for "General" tab
  21. Added: ELogging unit implements log capabilities. EurekaLog will stream log into CodeSite-compatible format. Currently it has no UI control. Use ELogOpen function to stream log to the specified file
  22. Added: (Delphi only) EurekaLog units in uses list are wrapped into IFDEF block
  23. Added: Call stack, modules and processes use different colors now. For call stacks: red indicates exception line, black - stack frame entry (positive), grey - RAW (could be false-positive), other colors - service entries
  24. Added: Support for DataSnap applications. Do not forget to enable EurekaLog for background threads (either as "Enable for RTL threads" or as SetEurekaLogStateInThread in OnConnect handler)
  25. Added: Handler name property for exception info and ability to filter with it. Handler name indicates handler which is processing the exception, it can be used to distinguish between VCL, Thread, DataSnap exceptions, etc.
  26. Added: Ability to filter by descendant classes
  27. Added: ACompareForCount argument to DumpAllocationsToFile routine
  28. Added: LoadCustomizedTextsToStream/SaveCustomizedTextsToStream
  29. Added: Threads Snapshot tool can be used as post-morten debugger. Use /install command-line switch to register tool as debugger (admin rights are required).
  30. Added: Support for Synopse mORMot (.mab) debug information format
  31. Added: "Terminate threads on shutdown" option
  32. Fixed: Reduced ecc32/emake memory footprint, thus allowing to post-process larger projects
  33. Fixed: Debug information design-time performace optimizations (reduced compilation time)
  34. Fixed: Debug information run-time performace optimizations (reduced startup time)
  35. Fixed: Minor optimizations for call stack to string render
  36. Fixed: Display bug in detailed EurekaLog dialog tabs when not all tabs were showing
  37. Fixed: [10.1 Berlin] Weak references are no longer detected as leaks
  38. Fixed: A "recursive area removed" mark may be left in call stack even if area's items were filtered out
  39. Fixed: Fatal errors (e.g. panic mode) now properly set terminate option in dialogs
  40. Fixed: Possible crash on startup when using certain 3rd party memory managers
  41. Fixed: Possible crash when EurekaLog's debug mode is enabled
  42. Fixed: XML header of bug reports
  43. Fixed: Added workaround for OTA bug when {$E ext} is used in project
  44. Fixed: (C++ Builder only) Possible crash when handling certain exceptions
  45. Fixed: Firebird Embedded in Viewer was upgraded to 2.5.6. This solves a rare encoding problem when using Firebird backend
  46. Fixed: (Delphi 2005 and earlier) Bug in workaround for QC Report #3018
  47. Fixed: Checkboxes not respecting default state when switching between dialogs (e.g. MS Classic -> EurekaLog Detailed)
  48. Fixed: Visual glitches in EurekaLog dialogs when VCL styles are used
  49. Fixed: Compatibility with 3rd party software of password-encrypted ZIPs
  50. Fixed: Possible range check error in debug information
  51. Fixed: EurekaLog dialogs are now per-monitor DPI awared
  52. Fixed: Silent ignoring invalid time stamps in PE headers
  53. Fixed: Added workaround for certain bugs in .map files
  54. Fixed: Minor regression issues
  55. Fixed: Viewer may hang when passing file name to open to main instance
  56. Fixed: Windows 2000 compatibility issues
  57. Fixed: Possible stack overflow in multi-threaded apps when low-level hooks are disabled
  58. Fixed: CLang compatibility fixes
  59. Fixed: DebugExport provider will now load names only on demand (performance boost on startup)
  60. Fixed: Possible crash when processing certain external exceptions
  61. Improved: New call stack/assembler encryption when encrypt password is set for debug info
  62. Improved: Better call stack filtering from EL service routines when encryption is enabled
  63. Improved: Any share violation error during compilation will report which process is holding the file
  64. Changed: ecc32.exe and emake.exe are the same file for all IDEs. Current IDE is selected based on ecc32/emake file location or via --el_ide=num command-line option
  65. Changed: Translations of strings with "application" substitution now supports selecting a specific "application" translation. Simply replace %s with %0:s or %1:s. Default translations are already adjusted.
  66. Changed: Internal crash reports made Viewer-compatible
  67. Changed: Removed stubs for ComObj unit
  68. Removed: Web-based bug tracker support