MadExceptionHandler is not in the Tool Palette

contains all delphi packages mentioned below
Post Reply
rodc
Posts: 10
Joined: Fri Mar 23, 2007 7:24 pm
Location: Porto Alegre - Brazil

MadExceptionHandler is not in the Tool Palette

Post by rodc »

I trying to migrate from C++Builder 6.0 to C++Builder 2007. I'm using the least version of MadException component. The error below is showed when I try to compile my project.

Code: Select all

[ILINK32 Error] Error: Unresolved external 'Madexceptvcl::TMadExceptionHandler::' referenced from D:\SITRAD\DEBUG_BUILD\UDMGLOBAL.OBJ
When I search for "MadExcept" in the Tool Palette, the component is not showed. The Tool Palette don't have the "Madshi" category.
But the item "madExceptVcl 2.0c - www.madshi.net" is showed in the "Install Package..." list, and this have the component MadExceptionHandler.
madshi
Site Admin
Posts: 10754
Joined: Sun Mar 21, 2004 5:25 pm

Post by madshi »

I'm confused right now why the VCL component isn't there. Will have to check that. As a quick fix you can duplicate the very same functionality by calling RegisterExceptionHandler from inside your source code instead of using the VCL component. Actually calling RegisterExceptionHandler is the better solution cause it gives you more flexibility. The VCL component is just for lazy people... ;)

Calling "RegisterExceptionHandler(YourHandler, stTrySyncCallOnSuccess)" would be identical to using the VCL component.
rodc
Posts: 10
Joined: Fri Mar 23, 2007 7:24 pm
Location: Porto Alegre - Brazil

Post by rodc »

My friend take a new PC, with a new Windows and C++Builder 2007 instalation, and the VCL component isn't showed in the Tool Palette.

But your fix way works fine (after a hard mental work).
The function auto created by the VCL to the component event was

Code: Select all

void __fastcall TForm1::MadExceptionHandler1Exception(const IMEException *exceptIntf, bool &handled)
and I need to change to

Code: Select all

void __fastcall TForm1::MadExceptionHandler1Exception(const _di_IMEException exceptIntf, bool &handled)
madshi
Site Admin
Posts: 10754
Joined: Sun Mar 21, 2004 5:25 pm

Post by madshi »

rodc wrote:My friend take a new PC, with a new Windows and C++Builder 2007 instalation, and the VCL component isn't showed in the Tool Palette.

But your fix way works fine (after a hard mental work).
The function auto created by the VCL to the component event was

Code: Select all

void __fastcall TForm1::MadExceptionHandler1Exception(const IMEException *exceptIntf, bool &handled)
and I need to change to

Code: Select all

void __fastcall TForm1::MadExceptionHandler1Exception(const _di_IMEException exceptIntf, bool &handled)
Oh, that's interesting that you had to change that! No such problems in Delphi. I guess it has to do with the automatic Delphi to C++ header conversions done by the Delphi compiler...
Post Reply