Solved

ignoring "first chance exceptions" in delphi debugger

Posted on 2010-11-09
3
1,895 Views
Last Modified: 2012-05-10
I'm coding an app that commicates with a database, partly through messages sent from a stored proc in the DB.
When the app is run from windows, everything works fine, but when I run it from the debugger, the trouble starts as soon as it receives a message from the DB and replies to it.
Delphi stops execution at this point, and shows an error window titled "Debugger fault notification", where it says "Project xxx faulted with message: "system exception (code 0xc0000008) at 0x7c90eb74'.  Process stopped.  Use step or run to continue."
I've googled the error codes, and found some stuff on first chance exceptions, meaning the exception is handled succesfully by the app  (in  this case a third-party dll responsible for the message handling) but when debugging it halts execution.   It has something to do with the handle of the message object not being handled correctly.  But I have no influence over this because this stuff is done inside a dll of wich I have only the interface, not the source code.

Now I would like to know how to determine exactly wich exception this is, so I can tell delphi to ignore it, in the debugger options.
Sometimes delphi offers the possibility to ignore this kind of exception", but in this case it does not.   It's a real pain that the debugger pops up everytime my app gets a message, so I would really like to turn this off.  
Any ideas?
0
Comment
Question by:DirkVerdonck
  • 2
3 Comments
 
LVL 24

Expert Comment

by:jimyX
ID: 34099874
In Delphi IDE:

Go to "Tools" then "Debugger Options" from "Language Exceptions" un-check "Stop on Delphi Exceptions"
0
 

Accepted Solution

by:
DirkVerdonck earned 0 total points
ID: 34099957
found the solution myself.  Sorry jimyX, I've tried what you suggested but that didn't work.

this is how I did it:
tools - options and then debugger options - borland debuggers - native OS exceptions
there I've added an exception class ranging from 0xc0000008 to 0xc0000008, and specified it should be handled by the user program, and on resume "run handled".
Next time I ran the application I got a different error message specifying an exception of "exception class 0xc0000008" had occured, giving me the option to in the future ignore this class of exceptions.
I chose the ignore option and resumed execution.
next time I tried running the app from the debugger everything worked perfectly.
0
 

Author Closing Comment

by:DirkVerdonck
ID: 34130336
I've been trying different things with the debugger options for two days now, I've finally found it.
0

Featured Post

Best Practices: Disaster Recovery Testing

Besides backup, any IT division should have a disaster recovery plan. You will find a few tips below relating to the development of such a plan and to what issues one should pay special attention in the course of backup planning.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Suggested Solutions

Creating an auto free TStringList The TStringList is a basic and frequently used object in Delphi. On many occasions, you may want to create a temporary list, process some items in the list and be done with the list. In such cases, you have to…
Introduction Raise your hands if you were as upset with FireMonkey as I was when I discovered that there was no TListview.  I use TListView in almost all of my applications I've written, and I was not going to compromise by resorting to TStringGrid…
This Micro Tutorial hows how you can integrate  Mac OSX to a Windows Active Directory Domain. Apple has made it easy to allow users to bind their macs to a windows domain with relative ease. The following video show how to bind OSX Mavericks to …
Finds all prime numbers in a range requested and places them in a public primes() array. I've demostrated a template size of 30 (2 * 3 * 5) but larger templates can be built such 210  (2 * 3 * 5 * 7) or 2310  (2 * 3 * 5 * 7 * 11). The larger templa…

772 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question