TFileStream og TDateTime... argh!

Tags:    delphi

Hej... Jeg har lavet denne lille kode, men den virker af en eller anden årsag ikke. Når jeg kører den får jeg en "Access Violation". Hvorfor kan det være ?

procedure TForm1.Button2Click(Sender: TObject);
var
aFileStream: TFileStream;
aReader: TReader;
aDate: TDateTime;
begin
aFileStream := TFileStream.Create('myFile.txt',fmOpenRead);
aReader := TReader.Create(aFileStream,$ff);
aDate := aReader.ReadDate;
DateTimePicker1.DateTime := aDate;
aFileStream.Destroy;
aReader.Destroy;
end;

the kasperen



1 svar postet i denne tråd vises herunder
1 indlæg har modtaget i alt 2 karma
Sorter efter stemmer Sorter efter dato
Hej... Jeg har lavet denne lille kode, men den virker af en eller anden årsag ikke. Når jeg kører den får jeg en "Access Violation". Hvorfor kan det være ?

procedure TForm1.Button2Click(Sender: TObject);
var
aFileStream: TFileStream;
aReader: TReader;
aDate: TDateTime;
begin
aFileStream := TFileStream.Create('myFile.txt',fmOpenRead);
aReader := TReader.Create(aFileStream,$ff);
aDate := aReader.ReadDate;
DateTimePicker1.DateTime := aDate;
aFileStream.Destroy;
aReader.Destroy;
end;


Vil du bare skifte datoen på din TDateTimePicker med en dato du har gemt i en tekst-fil? Hvis det er tilfældet kan du bare sige (under forudsætning af at dato'en står på den første linje i filen):

<pre>
procedure TForm1.Button1Click(Sender: TObject);
var
SL: TStringList;
begin
SL := TStringList.Create;
try
SL.LoadFromFile('myFile.txt');
DateTimePicker1.Date := StrToDate(SL.Strings[0]);
finally
Sl.Free;
end;
end;
</pre>


Det er i øvrigt god skik aldrig at kalde .Destroy direkte - kald .Free i stedet.





t