AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

Texte sinnvoll verwalten

Ein Thema von eddy · begonnen am 12. Mai 2005 · letzter Beitrag vom 13. Mai 2005
Antwort Antwort
Seite 1 von 2  1 2      
Benutzerbild von eddy
eddy

Registriert seit: 3. Jan 2003
Ort: Sachsen
573 Beiträge
 
Delphi 5 Professional
 
#1

Texte sinnvoll verwalten

  Alt 12. Mai 2005, 11:12
Hallo Leute,

immer wieder gibt es wiederkehrende Texte in Fehlermeldungen, Hinweisen usw. Jedesmal schreibt man den gleichen oder fast gleichen Text in Kombination mit irgendwelchen Variablen für gezählte Werte oder Dateinamen.

z.B.

3 Datensätze sollen gelöscht werden
Wollen Sie das wirklich?

oder
3 Datensätze wurden gelöscht

oder
Datei d:\pfad\pfad2\xyz.ext konnte nicht geöffnet werden

Wenn ich das richtig erkannt habe, nützt es ja wohl auch wenig, solche Text in Konstanten zu quetschen, weil Delphi die Text dann trotzdem an jeder Stelle in die EXE hineinschreibt, wo sie benutzt werden (und nicht den Verweis auf den Text)

Wie verwaltet Ihr solche Textmeldungen?

Macht es überhaupt Sinn, sich damit zu befassen?


Freue mich auf Eure Meinungen, Hinweise und Erfahrungen.

mfg
eddy
  Mit Zitat antworten Zitat
Benutzerbild von s.h.a.r.k
s.h.a.r.k

Registriert seit: 26. Mai 2004
3.159 Beiträge
 
#2

Re: Texte sinnvoll verwalten

  Alt 12. Mai 2005, 11:21
Arbeite vielleicht mit Ressourcen oder mit DLLs und lade dann die entsprechenden Wörter .B. beim Start des Programms.

mfg shark
»Remember, the future maintainer is the person you should be writing code for, not the compiler.« (Nick Hodges)
  Mit Zitat antworten Zitat
Benutzerbild von Sanchez
Sanchez

Registriert seit: 24. Apr 2003
Ort: Neumarkt Stmk
892 Beiträge
 
Delphi XE6 Enterprise
 
#3

Re: Texte sinnvoll verwalten

  Alt 12. Mai 2005, 11:21
Hallo eddy,

Eine zentrale Verwaltung der Texte mach dahingehend Sinn, als das du bei einer Änderung nur an genau einem Punkt schrauben musst. Außerdem wirds spätestens dann umungänglich, wenn die Anwendung mehrsprachig werden soll.

Hier hast du mal einen Ansatz einer möglichen Lösung.

grüße, daniel
Daniel
Testen ist feige!
  Mit Zitat antworten Zitat
heiopei
(Gast)

n/a Beiträge
 
#4

Re: Texte sinnvoll verwalten

  Alt 12. Mai 2005, 11:32
hallo,
du kannst auch einfach "resourcestrings" verwenden.
allerdings weiss ich nicht, ob das so was wie const ist!!!
schau in der oh, da dürfte was zu drinn stehen.

mfg,
heiopei
  Mit Zitat antworten Zitat
Benutzerbild von Luckie
Luckie

Registriert seit: 29. Mai 2002
37.621 Beiträge
 
Delphi 2006 Professional
 
#5

Re: Texte sinnvoll verwalten

  Alt 12. Mai 2005, 12:31
Delphi-Quellcode:
resourcestring
  rsMsgText = 'Dies ist bla %d von foo %d.'
begin
  ShowMessage(Format(rsMsgText, [i, Max]));
Michael
Ein Teil meines Codes würde euch verunsichern.
  Mit Zitat antworten Zitat
Benutzerbild von eddy
eddy

Registriert seit: 3. Jan 2003
Ort: Sachsen
573 Beiträge
 
Delphi 5 Professional
 
#6

Re: Texte sinnvoll verwalten

  Alt 12. Mai 2005, 20:24
Hallo Leute,

vielen Dank für die Hinweise.

Ich habe mich vorerst mit den "resourcestring" befaßt. Beim Versuch, eine spezielle String in der EXE-Datei zu finden, bin ich aber gescheitert. Daraus resultiert meine nächste Frage:

Was macht der Delphi-Compiler mit den definierten ResourceString (-Konstanten)? Kann man diese in der EXE-Datei irgendwie finden?

mfg
eddy
  Mit Zitat antworten Zitat
Benutzerbild von Luckie
Luckie

Registriert seit: 29. Mai 2002
37.621 Beiträge
 
Delphi 2006 Professional
 
#7

Re: Texte sinnvoll verwalten

  Alt 12. Mai 2005, 20:44
Guck dir deine Exe mal mit einem Resourcen-Hacker an. ResourceStrings heißen so, weil sie eben in der Ressource stehen. Dort könntest du sie bequem editieren und so das ganze mehrsprachig machen zum Beispiel.
Michael
Ein Teil meines Codes würde euch verunsichern.
  Mit Zitat antworten Zitat
Hansa

Registriert seit: 9. Jun 2002
Ort: Saarland
7.554 Beiträge
 
Delphi 8 Professional
 
#8

Re: Texte sinnvoll verwalten

  Alt 12. Mai 2005, 20:52
Wieso frägst Du nach Delphi ? Geht es um eigene Fehermeldungen, oder welche von Windows ? Wozu gibt es Text- und Ini-Dateien ?
Gruß
Hansa
  Mit Zitat antworten Zitat
Benutzerbild von mael
mael

Registriert seit: 13. Jan 2005
391 Beiträge
 
Delphi XE3 Professional
 
#9

Re: Texte sinnvoll verwalten

  Alt 12. Mai 2005, 22:52
ResourcenStrings sind ganz "normal" in der EXE-Datei zu finden. Die werden aber als 2-Byte Unicode gespeichert und nicht als normaler 1-Byte Ansi-Text. Mit einem Hexeditor läßt sich sowas finden indem man jedes zweite Byte 0 setzt, also etwa "Hallo" -> "H#0a#0l#0l#0o#0", oder eine Unicode-Suchfunktion verwendet. (siehe in meiner Signatur).

Allgemein verwendet die VCL überall resourcenstrings, so gibt es z.B. vordefinierte Standardfehlermeldungen wenn Dateien nicht geöffnet werden können. Fehlermeldungen lassen sich meistens gut durch Exceptions realisieren.

Ich finde resourcenstrings am besten, weil die VCL sie verwendet und diese Standardmeldungen auch übersetzt werden sollten, sie sich zum leichten Übersetzen eignen, es viele darauf zugeschnittene Übersetzungstools gibt, es Windows-Standard ist, ...

Resourcen stehen in einem Bereich der EXE, der so organisiert ist, daß Änderungen des Resourcenbereichs kein neukompilieren des Programmes erfordern.
Mit einem ResourceEditor kann man also auch fertige Programme übersetzen, um das bequemer zu machen gibt es aber Übersetzungstools.
HxD, schneller Hexeditor:
http://mh-nexus.de/hxd
  Mit Zitat antworten Zitat
Benutzerbild von eddy
eddy

Registriert seit: 3. Jan 2003
Ort: Sachsen
573 Beiträge
 
Delphi 5 Professional
 
#10

Re: Texte sinnvoll verwalten

  Alt 13. Mai 2005, 11:06
Hallo mael,

mit Hilfe Deiner Erklärungen und Deines Hex-Editor habe ich die RecourceString in der EXE gefunden.

Ich werde mich wohl noch ein bisschen mehr mit dem Thema befassen müssen.

mfg
eddy
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 1 von 2  1 2      


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 19:22 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz