Root > Customizing EurekaLog > Coding > Low-level handlers

Low-level handlers

Previous pageReturn to chapter overviewNext page   

Classes are used by high level code in EurekaLog. Sometimes customizations of high level code is not enough. Luckily, EurekaLog 7 offers you a way to change almost anything. Low level points for customizations are presented by global variables of procedural types. These procedural variables are invoked by EurekaLog, and it points to EurekaLog code by default. You may write your own code and write pointer to it into these variables.

 

Note: these global variables are not documented and never will be. You can use them on your own risk.

 

Here is the list of available low-level customization possibilities:

EInject unit:
oEventUnhandledExceptionFilter
oEventExceptProc
oEventExceptClsProc
oEventExceptObjProc
oEventRaiseExceptionProc
oEventGetExceptionStackInfoProc
oEventGetStackInfoStringProc
oEventCleanUpStackInfoProc
oEventExceptionDispatcher
oEventIndyThreadHandleException
EExceptionHook unit:
o_IsUnexpected
ELowLevel unit:
o_InitDoneErrorHandler
o_SafeExecLog
o_ConsoleLogger
EHook unit:
o_GetSymbolAddr
EBase unit:
o_InternalError
o_AllowBypassInternalErrors
o_RaiseExpected
o_OnPanic
EAppType unit:
o_CustomMessageBox
o_GetMainWnd
Almost all routines in EMemLeaks and EResLeaks units.
EThreadsManager unit:
o_GetRealAddresses

 

There are some other points to override default handlers, but they are almost useless for customizations, since they are used for very specific EurekaLog's needs.

 

The most important thing about low level handlers is that the initialization order is important. It's highly not recommended to alter these variables during actual work of your application. You should modify handlers only during initialization/finalization process. It's also strictly recommended to save previous handler before installing your own handler and revert it back (uninstall) on finalization.

 

 

See also:




Send feedback... Build date: 2023-09-11
Last edited: 2023-03-07
PRIVACY STATEMENT
The documentation team uses the feedback submitted to improve the EurekaLog documentation. We do not use your e-mail address for any other purpose. We will remove your e-mail address from our system after the issue you are reporting has been resolved. While we are working to resolve this issue, we may send you an e-mail message to request more information about your feedback. After the issues have been addressed, we may send you an email message to let you know that your feedback has been addressed.


Permanent link to this article: https://www.eurekalog.com/help/eurekalog/customizing_lowlevel.php