Oder einfach mal in verdächtigen Routinen Log-Ausgaben einstreuen:
Delphi-Quellcode:
procedure Foo;
begin
writeLn('Foo');
...
writeLn('End Foo');
end;
Dann sieht man ja, wo er abbricht und kann weiter eingrenzen.
Ist zwar eine recht plumpe Vorgehensweise, aber nach meiner Erfahrung häufig das effektivste bei solchen Fehlern...