AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren

Resourcestring vs. const

Ein Thema von Highttower · begonnen am 15. Sep 2009 · letzter Beitrag vom 16. Sep 2009
Antwort Antwort
Seite 2 von 2     12
Benutzerbild von HeikoAdams
HeikoAdams

Registriert seit: 12. Jul 2004
Ort: Oberfranken
661 Beiträge
 
FreePascal / Lazarus
 
#11

Re: Resourcestring vs. const

  Alt 16. Sep 2009, 08:51
Ich hab mich da auf die Onlinehilfe von Delphi 2K6 verlassen, in der zu resourcestrings folgendes steht:
Zitat:
Ressourcen-Strings werden als Ressource gespeichert und zu einer ausführbaren Datei oder Bibliothek gelinkt. Deshalb ist keine erneute Compilierung des Programms erforderlich, wenn ein Ressourcen-String geändert wird.
Jeder kann ein Held werden und Leben retten!
Einfach beim NKR oder der DKMS als Stammzellenspender registrieren! Also: worauf wartest Du noch?
  Mit Zitat antworten Zitat
Benutzerbild von Bernhard Geyer
Bernhard Geyer

Registriert seit: 13. Aug 2002
17.169 Beiträge
 
Delphi 10.4 Sydney
 
#12

Re: Resourcestring vs. const

  Alt 16. Sep 2009, 09:04
Zitat von Blup:
Klar erzeugt der Compiler unterschiedlichen Code. Die Aussage bezieht sich auf die Benutzung der Konstanten.
...
Delphi 2007 sagt: Adresse ist gleich
Ich glaube der Delphi-Compiler macht das schon immer so.
Du überprüft gerade ob die Referenzzählung von Delphi bei Strings funktioniert. Und es wäre schlecht wenn das bei D2007 nicht der Fall wäre.

Wenn da mußt du die Adresse der Konstante mit deiner Variable vergleichen bzw. folgenden Test machen

Delphi-Quellcode:
const
  cMyString = 'BlaBla %s'

...


  s1 := Format(cMyString, 'xyz');

...

  s2 := Format(cMyString, 'abc');
Und jetzt kontrollieren wie oft 'BlaBla %s' in der Exe vorhanden ist.
Windows Vista - Eine neue Erfahrung in Fehlern.
  Mit Zitat antworten Zitat
Benutzerbild von sirius
sirius

Registriert seit: 3. Jan 2007
Ort: Dresden
3.443 Beiträge
 
Delphi 7 Enterprise
 
#13

Re: Resourcestring vs. const

  Alt 16. Sep 2009, 09:49
Zitat von Highttower:
Und wie macht man das, mit dem ändern ohne neu zu kompiliren? Die Exe mit nem Texteditor aufmachen und dann nach Resourcestrings suchen? - Vermutlich nicht.
Oder meinst du das nach dem Kompiliern, vor dem Linken? Also irgendwo in den Objektdateien, wenn es sowas bei Delphi noch gibt?
Es gibt Ressourceneditoren. Suche einfach mal danach.
Da man dies - wie schon gesagt - hauptsächlich dafür einsetzt eine neue Sprache seinem Programm hinzuzufügen (was , egal ob nach oder vor dem compilieren, mit Ressourcen deutlich einfacher geht), gibt es auch spezielle Programme (bspw: in Delphi ist der Translationmanager dabei) für die Übersetzungen.
Dieser Beitrag ist für Jugendliche unter 18 Jahren nicht geeignet.
  Mit Zitat antworten Zitat
Benutzerbild von himitsu
himitsu
Online

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
43.017 Beiträge
 
Delphi 12 Athens
 
#14

Re: Resourcestring vs. const

  Alt 16. Sep 2009, 11:07
Zitat von Bernhard Geyer:
Du überprüft gerade ob die Referenzzählung von Delphi bei Strings funktioniert.
Wenn für jede Verwendungsstelle ein eigener String in der EXE angelegt würde, dann würden sich auch die Adressen unterscheiden
Garbage Collector ... Delphianer erzeugen keinen Müll, also brauchen sie auch keinen Müllsucher.
my Delphi wish list : BugReports/FeatureRequests
  Mit Zitat antworten Zitat
Phoner

Registriert seit: 8. Okt 2008
23 Beiträge
 
#15

Re: Resourcestring vs. const

  Alt 16. Sep 2009, 13:28
Ich habe da noch eine ganz andere frage zu:
Ich definiere 1000 Strings mittels const, referenziere die aber kein einziges mal. Ich hoffe mal, dass die niemals mit in die Exe gelinkt werden.
Bei resourcestring bin ich mir dagegen nicht so sicher - zumindest sind irgendwie alle strings aus "Consts.pas" (und andere) immer enthalten.
  Mit Zitat antworten Zitat
Benutzerbild von himitsu
himitsu
Online

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
43.017 Beiträge
 
Delphi 12 Athens
 
#16

Re: Resourcestring vs. const

  Alt 16. Sep 2009, 13:49
Ich hoffe mal, daß auch bei den ResourceStrings der Kompiler nur diese mit einlinkt, welche auch verwendet wird.

Was die Strings aus der Const.pas angeht, da werden die Funktionen wo diese enthalten sind oftmals verwendet und z.B. über die VCL oder Initialisations-Abschnitte vieler Delphi-Units genutzt und demnach werden die Strings irgendwo "theoretisch" und demnach auch mit eingebaut.
Garbage Collector ... Delphianer erzeugen keinen Müll, also brauchen sie auch keinen Müllsucher.
my Delphi wish list : BugReports/FeatureRequests
  Mit Zitat antworten Zitat
Benutzerbild von turboPASCAL
turboPASCAL

Registriert seit: 8. Mai 2005
Ort: Sondershausen
4.274 Beiträge
 
Delphi 6 Personal
 
#17

Re: Resourcestring vs. const

  Alt 16. Sep 2009, 14:00
Zitat:
Ich hoffe mal, daß auch bei den ResourceStrings der Kompiler nur diese mr einlinks, welche auch verwendet werden.
Jo, der baut nur das ein was man braucht.
Matti
Meine Software-Projekte - Homepage - Grüße vom Rüsselmops -Mops Mopser
  Mit Zitat antworten Zitat
Themen-Optionen Thema durchsuchen
Thema durchsuchen:

Erweiterte Suche
Ansicht

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 21:57 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