I have no idea how MadExcept works but I suppose it is able to provide a call stack up to the error, right? If so look _down_ into the stack until your reach your own code. The probability of hitting a bug in the Delphi VCL or into Windows is pretty slim, so start in the right mind-set and assume the bug is in your own code! If you're lucky you'll guess where the error starts from once you get to your code. If you're not that lucky then please provide us with a bit more information about what the error looks like:
(1) Does it always happen on a XP machine? Did you see it happening with your own eyes? I'm asking because it might not be a OS-related issue but an operator-related issue (ie: the operator filling the text "one" when asked for a number, or pushing buttons out of order - anything you as a programmer would never do because you know what the program expects). (2) I assume the error is a EAccessViolation. Is it? (3) Do you create and destroy objects explicitly? That's one likely place to introduce an error that might eventually end up with a EAccessViolation. (4) Does your code use pointers? Interfaces? (5) If you did find a way to reproduce the error yourself, can you give a general description of what the program is doing when the error happens? If on the other hand you want some general tips on debugging things you can't reproduce on your development machine, I only have one suggestion: Start adding logging to your application! Make sure you can read the logs if your application crashes (ie: log to a file, not to a location in memory, and flush the file after each log message written). Make the application crash, read the logs, improve logging and try again. -- Cosmin Prund > -----Mesaj original----- > De la: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] În > numele Alan Colburn > Trimis: Tuesday, May 20, 2008 12:44 AM > Către: Borland's Delphi Discussion List > Subiect: Strange Bugs > > Hi folks -- > > As someone who's still a relative newbie, I'm having a difficult time > understanding the bugs in an application I wrote. The part that seems > so > strange to me is that they only happen on Windows XP. I get the same > errors > on different XP machines, while getting no errors when I try the > application > on either Vista or Windows 2000. I installed a copy of madExcept to try > learning more but some of the report info is a bit beyond my abilities > to be > helpful. > > Happily, the problems do fall into repeatable patterns. In one case the > culprit seems to be the @LStrClr function in Delphi (2006's) System > unit. > This produces the kind of access violation you get when a method is > referencing memory set to 00000000. In the other case, the > TCustomClientDataSet.RecNo method calls TCustomClientDataSet.Check and > creates a DBClient exception with the message "at end of table." > > Beside the fact that I don't know much about Delphi's source code, the > other > thing that makes these problems hard for me is that they don't happen > on my > development machine (which is running Vista)--I cannot recreate them. > > Although I would be thrilled to receive whatever specific advice you'd > care > to give, I would also be curious about general advice re: how to handle > errors that you can't reproduce. They must be common for anyone who has > a > fairly sizable user base. > > Thanks, as always -- Al C. > > _______________________________________________ > Delphi mailing list -> [email protected] > http://lists.elists.org/cgi-bin/mailman/listinfo/delphi _______________________________________________ Delphi mailing list -> [email protected] http://lists.elists.org/cgi-bin/mailman/listinfo/delphi

