Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Sonstige Fragen zu Delphi (https://www.delphipraxis.net/19-sonstige-fragen-zu-delphi/)
-   -   Delphi Fehlermeldung - was soll ich machen? (https://www.delphipraxis.net/131493-fehlermeldung-soll-ich-machen.html)

AlexII 25. Mär 2009 18:25


Fehlermeldung - was soll ich machen?
 
Hallo, bekomme folgende Fehlermeldung:

Delphi-Quellcode:
[Fehler] Unit1.pas(1711): Zuviele lokale Konstanten. Verwenden Sie kürzere Prozeduren.
Das kommt komischerweise wenn ich sehr viele Strings einfüge, um die 1000 habe ich schon, wenn ich mehr einfüge kommt das halt.
Wie bekomme ich sie weg?

himitsu 25. Mär 2009 18:31

Re: Fehlermeldung - was soll ich machen?
 
wie/wo fügst du diese Strings ein?

als Lösung würde ich einen anderen Ort für deine Strings vorschlagen :angel:

PS: Hier im Forum suchenZuviele lokale Konstanten

mkinzler 25. Mär 2009 18:32

Re: Fehlermeldung - was soll ich machen?
 
Die Strings anders ablegen: Ressource, Textdatei, XML, DB

AlexII 25. Mär 2009 18:53

Re: Fehlermeldung - was soll ich machen?
 
Hab das wie folg:

Delphi-Quellcode:
procedure TForm1.dsInit;
var i: Integer;
    lmax: Integer=366;
begin
  for i:=lmax downto 1 do with losungen[i] do
  begin
  losungen[1].ntvers:='Text A';
  losungen[1].ntversst:='Text B';
  losungen[1].ntverslink:='Text C';

....

  losungen[366].ntvers:='';
  losungen[366].ntversst:='';
  losungen[366].ntverslink:='';
end;
Wenn ich die 320 mit Text fülle kommt die Fehlermeldung...bis 320 nicht.

mkinzler 25. Mär 2009 19:01

Re: Fehlermeldung - was soll ich machen?
 
Wie gesagt würde ich die strings z.B. in eine Textdatei schreiben und dann daraus lesen.

nuclearping 25. Mär 2009 19:10

Re: Fehlermeldung - was soll ich machen?
 
Delphi-Quellcode:
procedure TForm1.dsInit;
var i: Integer;
    lmax: Integer=366;
begin
  for i:=lmax downto 1 do
    with losungen[i] do
      begin
        ntvers:='';
        ntversst:='';
        ntverslink:='';
      end;
end;
Oder wozu hast du da die Schleife? :gruebel:

AlexII 25. Mär 2009 19:27

Re: Fehlermeldung - was soll ich machen?
 
Das mit der Schleife kommt nicht in Frage, da überall anderer Text bzw. String steht.

mkinzler 25. Mär 2009 19:29

Re: Fehlermeldung - was soll ich machen?
 
3. Versuch, was spricht gegen externe Lösung?

AlexII 25. Mär 2009 19:48

Re: Fehlermeldung - was soll ich machen?
 
Zitat:

Zitat von mkinzler
3. Versuch, was spricht gegen externe Lösung?

Ich wollte unbedingt nur eine .exe Datei haben... schade schade, da bleibt mir wohl nix anderes übrig. :wall:

Aber vllt kann ich doch bei einer .exe bleiben, gibt's da vllt eine Lösung? Wie gesagt eine externe Datei will ich möglichst vermeiden.

craash 25. Mär 2009 19:50

Re: Fehlermeldung - was soll ich machen?
 
die "externe lösung" zur laufzeit erzeugen und später löschen?

mkinzler 25. Mär 2009 19:51

Re: Fehlermeldung - was soll ich machen?
 
Oder als Ressource in Exe linken

AlexII 25. Mär 2009 19:54

Re: Fehlermeldung - was soll ich machen?
 
Zitat:

Zitat von mkinzler
Oder als Ressource in Exe linken

Boah..... ich bin hobby-programmierer, weiß gar nicht was das ist, wie man das realisiert ganz zu schweigen.

AlexII 25. Mär 2009 19:56

Re: Fehlermeldung - was soll ich machen?
 
Zitat:

Zitat von craash
die "externe lösung" zur laufzeit erzeugen und später löschen?

Ja und wo sollen die Strings alle gespeichert sein? Sie müssen schon in der .exe stehen. Denn sie werden nicht erzeugt, sondern stehen zur Verfügung, die .exe muss gleich als DB dienen. Aber mit DB kenne ich mich nicht aus und überhaupt Delphi 7PE hat sie auch gar nicht.

mkinzler 25. Mär 2009 19:57

Re: Fehlermeldung - was soll ich machen?
 
Benutzt du aber, wenn du eine Delphi-Form benutzt.
.rc - Ressourcecompiler > .res - Linker > Exe

DeddyH 25. Mär 2009 20:00

Re: Fehlermeldung - was soll ich machen?
 
Schau mal z.B. hier: http://delphi.about.com/library/weekly/aa011805a.htm. Da wird gezeigt, wie man eine Stringtable als Ressource ablegt.

himitsu 25. Mär 2009 20:00

Re: Fehlermeldung - was soll ich machen?
 
Zitat:

Zitat von mkinzler
Benutzt du aber, wenn du eine Delphi-Form benutzt.
.rc - Ressourcecompiler > .res - Linker > Exe

als Resource könnte er es hier auch über Delphi-Referenz durchsuchenResourceStrings machen

craash 25. Mär 2009 20:06

Re: Fehlermeldung - was soll ich machen?
 
wie wärs mit einer stinknormalen .txt oder .ini?

AlexII 25. Mär 2009 20:08

Re: Fehlermeldung - was soll ich machen?
 
Zitat:

Zitat von DeddyH
Schau mal z.B. hier: http://delphi.about.com/library/weekly/aa011805a.htm. Da wird gezeigt, wie man eine Stringtable als Ressource ablegt.

Danke dir, aber hast du vllt was in deutsch?

DeddyH 25. Mär 2009 20:10

Re: Fehlermeldung - was soll ich machen?
 
Das nächste Mal googlest Du aber selbst, gell ;) ? Such mal hier nach "Wie kann ich Videos, Bilder oder Texte als Resourcen in ein Programm einbinden?": http://www.delphi-fundgrube.de/faq01.htm

AlexII 25. Mär 2009 20:10

Re: Fehlermeldung - was soll ich machen?
 
Zitat:

Zitat von mkinzler
.rc - Ressourcecompiler > .res - Linker > Exe

Ist das ein Pfad oder wie? :gruebel:

AlexII 25. Mär 2009 20:11

Re: Fehlermeldung - was soll ich machen?
 
Zitat:

Zitat von DeddyH
Das nächste Mal googlest Du aber selbst, gell ;) ?

Wenn ich wüsste wonach man suchen muss :gruebel:

DeddyH 25. Mär 2009 20:13

Re: Fehlermeldung - was soll ich machen?
 
Bei Google suchenDelphi string resourcewäre ein Ansatz.

AlexII 25. Mär 2009 20:15

Re: Fehlermeldung - was soll ich machen?
 
Ach du meine Güte.... ich bin doch nicht Einstein, ich glaub muss einfach mein Text überarbeiten, dass der kürzer wird, dann klappt's (hoffe ich).

craash 25. Mär 2009 20:16

Re: Fehlermeldung - was soll ich machen?
 
vll hilft dir das hier

oder gibst einfach mal sowas wie "delphi strings in exe speichern" ein :wink:


Alle Zeitangaben in WEZ +1. Es ist jetzt 07:14 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