I've enjoyed reading your posts - I've found them very useful and informative.
Here's an interesting problem I encountered: I have been unable to get QTP to recognize an object. It's fairly similar to another one, however everything works fine on the first iteration but QTP fails to find it on the second.
If I run the second iteration before the first, it works but fails again the second time around.
Using extra object properties doesn't solve this.
However, I managed to fix this by recording a short sequence whereby I close the browser and re-open. This is called at the start of every iteration and everything works fine.
I'm not sure if this was a 'quirk' with QTP, but if anybody has experienced the same problem, that's how I fixed it.
I have seen simular things on a windows application I am working on. What was happening is that the object had changed a few of its properties between iterations. What I did to resolve this is re-record the object when it failed, and compaired the two inside the object repository to locate the differences. Afterwards I made one more dynamic by using a regular expression under those properties that changed (so that it would work for any case) and deleted the second branch generated by the recording. You could also try, if you find this the case of removing the offending property and attempting to find another unique manor of identifying the object.