Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   GUI-Design mit VCL / FireMonkey / Common Controls (https://www.delphipraxis.net/18-gui-design-mit-vcl-firemonkey-common-controls/)
-   -   Delphi Listenindex überschreitet das Maximum (255) (https://www.delphipraxis.net/64066-listenindex-ueberschreitet-das-maximum-255-a.html)

milanlu 26. Feb 2006 23:49


Listenindex überschreitet das Maximum (255)
 
Hallo,
ich lade mit einer function dateiname von etwa (2000 oder mehr) Dateien von einem ordner in die listbox.
bei etwa 3 - 5 % zeigt er mir den fehler:
Listenindex überschreitet das Maximum (255)

Warum passiert das?????

Matze 27. Feb 2006 00:01

Re: Listenindex überschreitet das Maximum (255)
 
Hi,

ohne Code können wir dazu nichts sagen.

Ich nehme an, du lässt deinen Index irgendwo von 1 bis x laufen, anstelle von 0 bis x - 1. Um näheres sagen zu können, benötigen wir den relevanten Code.

milanlu 27. Feb 2006 00:05

Re: Listenindex überschreitet das Maximum (255)
 
Delphi-Quellcode:
procedure Tfrmprozesseinfuegen.datei1(Directory: string; Mask: String; ARekursiv: Boolean);
var
  SR: TSearchRec;
begin

  if (Directory<>'') and (Directory[length(Directory)]<>'\') then
    Directory:=Directory+'\';


  if (FindFirst(Directory+Mask,faAnyFile-faDirectory,SR)=0) then begin
    repeat
      if (SR.Name<>'.') and (SR.Name<>'..') and (SR.Attr<>faDirectory) then
      begin

                  ListBox1.items.Add(Directory+SR.Name);
         
      end;
    until FindNext(SR)<>0;
    FindClose(SR);
  end;

  if ARekursiv then
    if (FindFirst(Directory+'*.*',faDirectory,SR)=0) then
    begin
      repeat
        if (SR.Name<>'.') and (SR.Name<>'..') then
          datei1(Directory+SR.Name,Mask,True);
      until FindNext(SR)<>0;
      FindClose(SR);
    end;

end;

procedure Tfrmeinfuegen.ToolButton6Click(Sender: TObject);
begin
    datei1('C:\', '*.mp3', true);
end;

SirThornberry 27. Feb 2006 00:10

Re: Listenindex überschreitet das Maximum (255)
 
in welcher Zeile kommt der Fehler? die einzige Zeile die ich auf anhieb sehe die mit einer Liste zu tun hat ist
Delphi-Quellcode:
ListBox1.items.Add(Directory+SR.Name);
Vielleicht hab ich aber auch eine zeile übersehen. Am besten du gibst noch an wo genau der Fehler auftritt.

Matze 27. Feb 2006 00:17

Re: Listenindex überschreitet das Maximum (255)
 
Der Code funktioniert bei mir ohne Probleme. Alle MP3-Dateien werden ordnungsgemäß in der ListBox ausgegeben.

milanlu 27. Feb 2006 00:20

Re: Listenindex überschreitet das Maximum (255)
 
ich habe es gefunden, es liegt nicht an dem sondern an einer andere abfrage!!!
ich habe eine
temp: String[254];
temp2: String[300];

und dan habe ich abfrage
if temp = temp2 then //das ist der fehler


Trotzdem danke

Christian Seehase 27. Feb 2006 11:00

Re: Listenindex überschreitet das Maximum (255)
 
Moin Milan,

warum nimmst Du nicht einfach string?

Delphi-Quellcode:
var
  sTemp : string;
  sTemp2 : string;

milanlu 27. Feb 2006 11:05

Re: Listenindex überschreitet das Maximum (255)
 
hoi,
weil die variablen sich nicht verendern und so spare ich schpeicherplatz.
danke für vorschlag.

gfjs 27. Feb 2006 11:51

Re: Listenindex überschreitet das Maximum (255)
 
Ich hoffe, ich blamiere mich nicht, aber m.E. geht temp2 : string[300] nicht. Die maximale Länge eines ShortString beträgt 255 Zeichen.

mfg gfjs

milanlu 27. Feb 2006 12:40

Re: Listenindex überschreitet das Maximum (255)
 
eben das ist der fehler gewessen


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