It took me some time, but I finally found out what was going on with my application when using madExcept and runtime Packages that was returning the ExceptObject as nil when an exception occurred.
So try this :
Create an application with runtime packages that has a button and an event handler for the madExcept.OnException whith some code like this :
const exceptIntf: IMEException; var handled: Boolean);
Handled := True;
When the button is pressed, the exception is thrown and the messagebox shows it correctly
(Raise (Exception.Create ('This is a test!'));).
Now, do the following :
1. Copy the rtl70.bpl file to the same folder where the executable is.
2. UPX the rtl70.bpl file (this will only compress the bpl file).
3. Now, when you run again the file, it will show "Unknown." instead of the exception.
I have tried this and only madExcept had an odd behaviour when I compress the BPL files.
What can I do to solve this (beside not compressing the BPL file)?