Hi Leute,
hab leider wieder ein kleines Problem. Ich will eine Datei in einen Stream einlesen. Meine Pfadangabe stimmt auf jeden Fall, hab ich bereits gecheckt. Wenn ich es ausführe bekomme ich eine
Exception der Klasse ERangeError "Fehler bei Bereichsprüfung". Ich kenne mich mit Streams nicht so gut aus und habe das ganze aus einem Tutorial. Kann mir einer sagen was ich falsch mache?
Delphi-Quellcode:
type
TDatensatz = record
ID: integer;
Name: AnsiString;
end;
TDatenArray = array of TDatensatz;
procedure TForm1.Button1Click(Sender: TObject);
var
Daten: TDatenArray;
Stream: TStream;
I: integer;
Len: LongInt;
begin
Stream := TFileStream.Create(Sett_QIPPath + '\Users\' + Sett_ICQNumber + '\History\' + HistoryData[2].FileName, fmOpenRead);
try
Stream.Read(Len, SizeOf(Len));
SetLength(Daten, Len);
for I := 0 to Len - 1 do begin
Stream.Read(Daten[I].ID, SizeOf(Daten[I].ID));
Stream.Read(Len, SizeOf(Len));
SetLength(Daten[I].Name, Len);
Stream.Read(PChar(Daten[I].Name)^, Len);
end;
finally
Stream.Free;
end;
//ShowData(Daten);
end;