Thanks for that Walter, I had no idea this was possible.
However, what it has yielded doesn't help me much which is certainly down to my ignorance. With your advice I got to the point where my 2nd instance of Delphi had gone into CPU eating mode but I'd hit no exceptions in the first. When I hit Program Pause in the first Delphi it did indeed stop the second and presented me with the CPU window. Stepping through this I found that it was indeed in a tight loop (5051F9 - 5052D8). The bad news is that all I see there are a bunch of addresses and assembler (?) - I don't know how to get from that to some Pascal source where I may have some hope of nailing the problem. Any other suggestions will be equally gratefully received... Dave Walter Prins wrote: >>I had assumed this may have been a problem specific to my PC >>configuration but I'm now on a new machine and it's exactly the same - >>both old and new machines are running XP-Pro. The form that's causing >>the problem is quite complex and has several 3rd party components on >>it (XML-Partner, NexusDB, TNT, ImageEn...). >> >> > >Do you have the source for these? Oh yes, have you got all the updates >installed for D7? If not it might be worthwhile to install these just in >case. (I seem to remember I had some strange ones with the original Delphi 7 >release...) > > > >>My question is not "what's causing my problem" as I realize this would >>be impossible to answer, my question is: Can anyone suggest how I >>might go about tracing the cause of the problem? >> >>This is driving me nuts so any help much appreciated... >> >> > >I'd suspect something related to the third party components going south, but >anyway, as to tracing it: I'd suggest making delphi debug itself when it >shuts down to help you track down what's eating the CPU (hopefully.) >Basically the same approach as you might use to debug design time >code/problems with delphi components you've written yourself (ie code which >only runs/depends on "design time" being true, thus requiring you to have >Delphi debug itself.) The basic steps are like this: > >1. Open delphi, do File->Close all >2. Go into Tools->Debugger->Language Exceptions and untick "Stop on Delphi >Exceptions" This is just to avoid stopping on exceptions that will stop the >debugger during the second instance of delphi startup that you normally >never see as they're (obviously) handled/hidden in the background. (You can >also skip this step and continue clicking/F9'ing through exceptions during >the second instance startup) >2. Go into Run->Parameters and on the Local tab, under "Host Application" >put C:\Program Files\Borland\Delphi7\Bin\delphi32.exe (you can browse to it >if you want.) >3. Click "Load", this starts another instance of delphi, that is put under >control of the debugger of the first instance of delphi. >4. Press F9 or click run if the new instance starts suspended (with a >debugger CPU window) to get it to continue starting. >5. Once the second instance is up and running, use *it* and open your >project, and open hte problem form that causes the hang. >6. On the original delphi, go back into Tools->Debugger->Language Exceptions >and tick "Stop on Delphi Exceptions" This is so the first instance will >from now on stop when any exceptions are thrown (which you'd probably want >to know about.) >7. Now, shut down the second instance. If you run into exceptions, you >might want to investigate them using the firsts debugger (or ignore them as >appropriate and continue running. If the shutdown procceds to CPU eat land, >then use the "Program Pause" button (Run->Program Pause) to get the second >instance to stop, and start tracing with F7/F8, and use the call stack >window to try and see what code is sitting in a tight loop. > >Hope that helps... > >Walter > > > >----------------------------------------------------- >Home page: http://groups.yahoo.com/group/delphi-en/ >To unsubscribe: [EMAIL PROTECTED] >Yahoo! Groups Links > > > > > > > > > > > ----------------------------------------------------- Home page: http://groups.yahoo.com/group/delphi-en/ To unsubscribe: [EMAIL PROTECTED] Yahoo! Groups Links <*> To visit your group on the web, go to: http://groups.yahoo.com/group/delphi-en/ <*> To unsubscribe from this group, send an email to: [EMAIL PROTECTED] <*> Your use of Yahoo! Groups is subject to: http://docs.yahoo.com/info/terms/