Thema: Delphi 30 Tage version

Einzelnen Beitrag anzeigen

Daniel
(Co-Admin)

Registriert seit: 30. Mai 2002
Ort: Hamburg
13.920 Beiträge
 
Delphi 10.4 Sydney
 
#7
  Alt 16. Jul 2002, 22:38
Hallo m-werk,

hier ein einfaches Beispiel; Du musst dafür die Units REGISTRY und DATEUTILS einbinden. Ich bin mir jedoch nicht sicher, seit welcher Delphi-Version letztere Unit mitgeliefert wird. Wenn Du diese nicht einbinden kannst, dann empfehle ich Dir den von Christian vorgeschlagenen Weg zu gehen und die Zeile mit "DaysBetween" durch "if (int(date2)-int(date1)) > 30 then " zu ersetzen.
Code:
procedure TForm1.Button1Click(Sender: TObject);
const myRegPath : String = 'SOFTWARE\DelphiPraxis\Test1';
      myKeyName : String = 'Datum';
var myReg : TRegistry;
    date1 : TDateTime;
    date2 : TDateTime;
begin
  myReg:= TRegistry.Create;
  myReg.RootKey:= HKEY_CURRENT_USER;

  // Pfad öffnen, anlegen falls noch nicht vorhanden
  myReg.OpenKey( myRegPath, TRUE );


  If (not myReg.ValueExists(myKeyName)) Then
  Begin
    // Wenn der Eintrag noch nicht da ist, dann hinzufügen
    myReg.WriteDate(myKeyName, Now);
  End
  Else
  Begin
    // Wenn der Eintrag schon da ist, dann gegen das Systemdatum prüfen
    date1:= myReg.ReadDate(myKeyName);
    date2:= Now;

    If (DaysBetween( date1, date2 ) > 30) Then
    Begin
      ShowMessage('30 Tage und keinen einzigen mehr!');
      Application.Terminate;
    End;

  End;

  myReg.Free;
end;
Die Benennung der Variablen ist ein wenig grauslig; aber als Demo sollte es reichen...


Grüße,
Daniel
Daniel R. Wolf
  Mit Zitat antworten Zitat