Folgendes ersteinmal zu den Meldungen.
ShowMessage() und MessageDlg() sind Delphi-Eigenkreationen und besitzen Deutsch-Sprachige Buttons, die hard-gecoded sind. Diese musst du also auf jeden Fall rauswerfen. Ein guter Kandidat für Multilinguale Anwendungen ist Application.MessageBox. Hier sind die Buttons (Ja, Nein, OK, Abbrechen, ...) in der Windows-Sprache angegeben, da eine
Win32-
API-Funktion benutzt wird.
Die Delphi-Exceptions sind schon etwas schwieriger. Soweit ich das weiß sind einige Exceptions in Delphi in einer
Unit ausgelagert. Dort sind sie alle deutschsprachig als resourcestrings gelistet. Du müsstest diese Delphi-
RTL-
Unit also verändern und neu compilieren. (Kann man das überhaupt?) Oder du veränderst bei deiner kompilierten Ziel-EXE die resourcenstrings mit einem Ressourceneditor, was jedoch aufwändig ist.
Das richtig große Problem hast du mit deutschen Delphi-Exceptions, die Borland nicht in Ressourcen-Strings ausgelagert hat. Es ist also gut möglich, dass eine beliebige
VCL-
Unit von Delphi deutsche Exceptiontexte beinhaltet. Daher würde ich empfehlen
a) Die exakten Ressourcentexte von einer englisch kompilierten EXE zu besorgen
b) Besser: Die englischsprachige
RTL zu besorgen
c) Noch besser: Delphi auf irgend eine Art und Weiße auf Englisch zu besorgen, ggf. Turbo Delphi zum Kompilieren nutzen?
Vielleicht reicht dir aber auch nur die Variante mit der MessageBox.
Bei bekannten / erwarteten Exceptions sollst du natürlich diese Abfangen und behandeln bzw. im unbehandelbaren Fall den Benutzer mit einer selbstgeschriebenen Meldung konfrontieren.
Und bei einer unerwarteten
Exception, die ja meist einen Bug oder ein Ableben des Prozesses zum Vorschein bringt, muss sich der englischsprachige Endanwender ja nicht wie Zuhause fühlen
Gruß
blackdrake