Page 1 of 1

Is the option "pause all running threads" working?

Posted: Wed Jun 09, 2004 6:08 am
by cguerra
Hi Madshi

I'm using a standard information box to handle some of the exceptions, but I'm having the problem of my Forms not redrawing during/after the exception, but only happens with my standard box, I have try MessageDlg and ShowMessage but it is the same.

I follow your suggestion in the FAQ regarding the redrawn of Forms while the exception box is showing, I uncheck "pause all running threads" but I still not getting my forms to redrawn.

Is there something I can do to fix this?

Regards

Posted: Wed Jun 09, 2004 8:58 am
by madshi
If you're using VCL boxes (which you are seemingly doing) in an exception handler you must tell madExcept to synchronize your handler. You can do so by setting the second parameter to "true" when calling RegisterExceptionHandler. Have you set it to "false"?

Posted: Wed Jun 09, 2004 7:53 pm
by cguerra
Hi Madshi

OH!!, I forgot to mention that I recently updated to madCollection 2.1.2.0, after that I could not compile my project, I was getting the error:

"[Error] MainUnit.pas(221): There is no overloaded version of 'RegisterExceptionHandler' that can be called with these arguments"

The error shows at line "RegisterExceptionHandler(madExceptionDBHandler,false);"

It was working fine before the madCollection update, so I start using the MadExceptionHandler Component.

Do you know what is causing this error?

Regards

Posted: Thu Jun 10, 2004 6:24 am
by madshi
The parameters of the exception handler callbacks have changed slightly:

Code: Select all

type
  TExceptActionEvent   = procedure (action          : TExceptAction;
                                    frozen          : boolean;
                                    exceptObject    : TObject;
                                    exceptAddr      : pointer;
                                    crashedThreadId : dword;
                                    var bugReport   : string;
                                    var screenShot  : string;
                                    var handled     : boolean      );