![]() |
StringError - ListenIndex überschrietet das maximum
Hallo
Ich habe diesen Code
Delphi-Quellcode:
saveid3 ist so deklariert
procedure TForm2.Button2Click(Sender: TObject);
var desc:tstringlist; begin desc := tstringlist.Create; ////////////////////////ID3Tag Speichern///////////////////////// desc.Add(Edit1.Text); desc.Add(Edit2.Text); desc.Add(Edit3.Text); desc.Add(Edit4.Text); desc.Add(Edit5.Text); desc.Add(tempfilename); saveid3(desc); desc.Free; ////////////////////////END ID3 Speichern//////////////////////// end;
Delphi-Quellcode:
Und in der DLL Sieht das so aus:
function saveid3(descriptions:tstrings):boolean;stdcall;
Delphi-Quellcode:
Wenn ich nun den Code (den ersten) ausführe, bekomme ich einen ListenInsdex überschreitet das Maximum 0 error
function saveid3(descriptions:tstrings):boolean;stdcall;
begin descriptions := tstringlist.Create; id3v2tag.Title := descriptions.Strings[0]; id3v2tag.Artist := descriptions.Strings[1]; id3v2tag.Album := descriptions.Strings[2]; id3v2tag.Track := descriptions.Strings[3]; id3v2tag.Year := descriptions.Strings[4]; id3v2tag.WriteToFile('test.mp3'); descriptions.Free; end; Wenn ich diese zeile
Delphi-Quellcode:
weglass, dan bekomme ich keinen error aber dan gehts auch nicht :D
saveid3(desc);
Ich hoffe ihr seht den fehler den ich nicht sehe :D Danke schonmal |
Re: StringError - ListenIndex überschrietet das maximum
Zitat:
Zitat:
|
Re: StringError - ListenIndex überschrietet das maximum
also müssen
Delphi-Quellcode:
und
descriptions.create
Delphi-Quellcode:
weg :D
descriptions.free
EDIT: Habs ausprobiert... immernoch der gleiche fehler Was für fehler siehst du denn noch? würd mich schon interessieren :D |
Re: StringError - ListenIndex überschrietet das maximum
Zitat:
1. Das free würde die Instanz löschen die übergeben wurde und das würde sich negativ auf die Freigabe der Instanz nach dem Aufruf auswirken. 2. Ich hoffe du hast ShareMem als erste Unit in die Applikation und der DLL eingebunden 3. Du kannst keine Klasseninstanzen übergeben, da dann die DLL sowie die App eine unterschiedliche Typinformationen haben. Damit sollte sich der gesamte Aufruf erledigen. Zitat:
|
Re: StringError - ListenIndex überschrietet das maximum
Nein hab sharemem nicht in der unit eingetragen
Das merkwürdige ist, ich übertrage an einer anderen stelle im Programm auch mit hilfe von stringlists Strings und da klappt es ohne probleme.... |
Re: StringError - ListenIndex überschrietet das maximum
Lieber Thomas
Danke für deine Hilfe es hat funktioniert :D |
Re: StringError - ListenIndex überschrietet das maximum
Wodran lag es denn nun?
|
Re: StringError - ListenIndex überschrietet das maximum
Das hab ich nicht herausgefunden :D
Ich hab das programm mit sharemem gestartet, dann gam zuerste (bei code ausführe) eine zugriffsverletzung Danach hab ich es offen gelassen und dan einfach so nochmal geklickt, dan ging es und geht noch immer :D |
Alle Zeitangaben in WEZ +1. Es ist jetzt 14:25 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz