Einzelnen Beitrag anzeigen

blackdrake

Registriert seit: 22. Aug 2003
Ort: Bammental
618 Beiträge
 
Delphi 10.3 Rio
 
#3

Re: Delphi-Texte in Englisch ausgeben

  Alt 5. Okt 2008, 03:26
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
Daniel Marschall
  Mit Zitat antworten Zitat