AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

Zeiturechnungsprobleme

Ein Thema von CalganX · begonnen am 26. Jan 2003 · letzter Beitrag vom 26. Jan 2003
Antwort Antwort
CalganX

Registriert seit: 21. Jul 2002
Ort: Bonn
5.403 Beiträge
 
Turbo Delphi für Win32
 
#1

Zeiturechnungsprobleme

  Alt 26. Jan 2003, 12:04
Hi,
warum WinAPI? Weil ich die Zeit aus einer API-Funktion bekomme!
So, nun zum Problem: Ich bekomme mit Hilfe der NetUserGetInfo-Funktion die Zeit des letzten Login und nun will ich die erhaltene Zeit umrechnen. Das mache ich mit folgendem Source:
Delphi-Quellcode:
TempTime := UnixToDateTime(aCurUserBuffer.usri11_last_logon, false);
if TempTime = 25569.0416666667 then
  TempS := 'Letzer LogIn: (nie)'
else
  TempS := 'Letzter LogIn: ' + DateTimeToStr(TempTime) + ' :: '+FloatToStr(TempTime);
{Unter der Verwendung der folgenden Funktion (aus der DP):}
function UnixtoDateTime(UnixTime: Double; UTC: Boolean): TDateTime;
var
  SysTime, TmpSysTime: TSystemTime;
  DTime: TDateTime;
  FTime, LTime: TFileTime;
begin
  DTime := (UnixTime / (24 * 3600)) + EncodeDate(1970, 1, 1);

  if UTC = true then
    result := DTime
  else
  begin
    DateTimeToSystemTime(DTime, TmpSysTime);

    SystemTimeToFileTime(TmpSysTime, FTime);
    FileTimeToLocalFileTime(FTime, LTime);
    FileTimeToSystemTime(LTime, SysTime);

    result := SystemTimeToDateTime(sysTime);
  end;
end;
{Folgende Variablendeklinationen:}
var
  TempTime: TDateTime;
  aCurUserBuffer: PUSER_INFO_11;
  TempS: String;
So, nun ist das Problem, dass bei allen, die noch nie eingeloggt waren immernoch das Datum 01.01.1970 01:00:00 steht.
Hat einer Abhilfe?

Chris
  Mit Zitat antworten Zitat
Benutzerbild von Luckie
Luckie

Registriert seit: 29. Mai 2002
37.621 Beiträge
 
Delphi 2006 Professional
 
#2
  Alt 26. Jan 2003, 12:08
Frag doch einfach ab. Und wenn das Datum rauskommt, gibts du nichts aus. bzw, dann gibt dir _last_logn 0 zurück. Und wenn du 0 bekommst gibst du nicghts aus oder je nachdem, was du willst.
Michael
Ein Teil meines Codes würde euch verunsichern.
  Mit Zitat antworten Zitat
CalganX

Registriert seit: 21. Jul 2002
Ort: Bonn
5.403 Beiträge
 
Turbo Delphi für Win32
 
#3
  Alt 26. Jan 2003, 12:15
Klar!
Auf die Idee bin ich gar nicht gekommen! Danke! Jetzt funktioniert es.

Chris
  Mit Zitat antworten Zitat
Antwort Antwort


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 13:32 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz