[b]
unit[/b] MAIN;
[b]interface[/b]
[b]uses[/b]
Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,IniFiles,
ComCtrls, StdCtrls;
[b]type[/b]
TForm1 = [b]class[/b](TForm)
Edit1: TEdit;
[b]procedure[/b] FormCreate(Sender: TObject);
[b]procedure[/b] FormDestroy(Sender: TObject);
[b]private[/b]
[color=#000080]{ Private-Deklarationen }[/color]
FIniFile : TIniFile;
[b]public[/b]
[color=#000080]{ Public-Deklarationen }[/color]
[b]end[/b];
[b]var[/b]
Form1: TForm1;
[b]resourcestring[/b]
_rsLastAccess = 'LetzterZugriff';
_rsDate = 'Datum';
_rsTime = 'Zeit';
[b]const[/b]
_asDays : [b]array[/b] [1..7] [b]of[/b] [b]string[/b] = ('Sonntag','Montag','Dienstag','Mittwoch','Donnerstag','Freitag','Samstag');
[b]implementation[/b]
[color=#000080]{$R *.DFM}[/color]
[b]procedure[/b] TForm1.FormCreate(Sender: TObject);
[b]var[/b]
sWork : [b]string[/b];
[b]begin[/b]
[color=#000080]// Da die Resourcen im OnDestroy Event wieder freigegeben werden[/color]
[color=#000080]// entfällt der try/finally Block hier.[/color]
[color=#000080]// In finally würde eh' nichts stehen[/color]
FIniFile := TIniFile.Create(ExtractFilePath(paramstr(0))+'Zeiten.ini');
sWork := FIniFile.ReadString(_rsLastAccess,_rsDate,DateToStr(Now));
[color=#000080]// Mal etwas kompakter zusammengeschrieben[/color]
Edit1.Text := Format('Sie haben am %s dem %s um %s ...',[_asDays[DayOfWeek(StrToDate(sWork))],sWork,FIniFile.ReadString(_rsLastAccess,_rsTime,TimeToStr(now))]);
[b]end[/b];
[b]procedure[/b] TForm1.FormDestroy(Sender: TObject);
[b]begin[/b]
[color=#000080]// Falls Create schon fehlgeschlagen ist gibt's auch nichts[/color]
[color=#000080]// zu schreiben oder freizugeben[/color]
[b]if[/b] Assigned(FIniFile) [b]then[/b]
[b]begin[/b]
FIniFile.WriteString(_rsLastAccess,_rsDate,DateToStr(Now));
FIniFile.WriteString(_rsLastAccess,_rsTime,TimeToStr(Now));
FIniFile.UpdateFile;
FreeAndNil(FIniFile);
[b]end[/b];
[b]end[/b];
[b]end[/b].