hmm interesting, so for my example above if I change the bottom bit to:
Try
(New TApplication).Run
Catch o:Object
Notify "o dear"
End Try
it works! But I've no idea what the object is so I can get the error string...any ideas? Thanks very much for all your help.