I am working with QTP (10) script that automate testing on a Delphi application. Generally everything works fine but intermittently when the application crashes it displays an "Application Error" form and this causes QTP to hang.

No recovery scenario will trigger for this and if I click on QTP I get an hour glass and can not interact with it in any way. I can end task QTP, re-open it and then spy the error form and it is a standard DelphiWindow (as far as I can see). Only thing interesting I could spot was that is has "topmmost" set to true.

I have tried:

Disabling smart identification
Adding the Window to the local object respository
Recovery scenarios for the application crashing, any error, object state of the error form (never used this before but I spied the Window using the wizard so presume it is setup correctly).