Ich finde ErrorCodes ganz nett.
Das sagst du nur, weil du das Prinzip der Exceptions nicht in voller Tiefe verstanden hast.
*ALLE* modernen Programmiersprachen setzen auf Exceptions weil es einfach der bessere Weg ist mit Fehlern zur Laufzeit umzugehen.
Delphi Kurs - Exceptions
Exceptions Tutorial