Einzelnen Beitrag anzeigen

Der schöne Günther

Registriert seit: 6. Mär 2013
6.110 Beiträge
 
Delphi 10 Seattle Enterprise
 
#13

AW: Fehler-, Hinweis- und Warnmeldung ordentlich verwalten

  Alt 25. Sep 2018, 11:36
So wie ich es verstanden habe:

Der Unterschied zwischen
Delphi-Quellcode:
procedure TForm1.Button1Click(Sender: TObject);
const
   welcomeMessage = 'Hallo Welt';
begin
   ShowMessage(welcomeMessage);
end;
und
Delphi-Quellcode:
procedure TForm1.Button1Click(Sender: TObject);
resourcestring
   welcomeMessage = 'Hallo Welt';
begin
   ShowMessage(welcomeMessage);
end;
ist einzig und allein wie der Compiler das 'Hallo Welt' in die .exe-Datei einbettet. Du kannst z.B. den Text mit einem Editor nachträglich anpassen ohne die .exe neu zu kompilieren:
resedit_2018-09-25_12-35-38.png

Die Geschichte mit DLL-Dateien ist, soweit ich das mal gesehen habe, dass man die Resourcen-Strings in eine externe DLL-Datei auslagert und die Sprache umstellt indem man die DLL tauscht.
Was ist daran jetzt besser als z.B. als an einer Textdatei? Habe ich auch nicht verstanden.


Was die resourcestring -Geschichte so toll macht sind Tools wie z.B. dxGetText welche deine Delphi-Projekte nach Resourcestrings durchsuchen, in .po-Dateien extrahieren und dir eine Methode anbieten wie du in der Delphi-Runtime die Sprachauflösung umschalten kannst sodass du nur einmal sagst useLanguage('EN') und in dem resourceString plötzlich Bonjour le monde drinsteht.


Hört sich wahrscheinlich immer noch völlig abstrakt an. Probier einfach mal dxGetText aus. Da kümmert man sich um den ganzen Kram nicht mehr.

Geändert von Der schöne Günther (25. Sep 2018 um 11:39 Uhr)
  Mit Zitat antworten Zitat