Einzelnen Beitrag anzeigen

Benutzerbild von Luckie
Luckie

Registriert seit: 29. Mai 2002
37.621 Beiträge
 
Delphi 2006 Professional
 
#1

Sekunden seit 1. Januar 0:00 1970

  Alt 21. Jan 2003, 02:25
So ich bekomme die Sekunden die seit obigen Datum verstrichen sind. Jetzt würde ich gerne diese in ein gescheites Datum umrechnen.
Für ersteres habe ich schon einen Ansatz:
Delphi-Quellcode:
procedure TForm1.ListBox1Click(Sender: TObject);
const
  TAB = #9;
var
  sUser : String;
  ui11 : Pointer;
  ft : TFILETIME;
  st : TSYSTEMTIME;
  ui : ULARGE_INTEGER;
  buf1, buf2 : array[0..255] of Char;
begin
    st.wYear := 1970;
    st.wMonth := 1;
    st.wDayOfWeek := 0;
    st.wDay := 1;
    st.wHour := 0;
    st.wMinute := 0;
    st.wSecond := 0;
    st.wMilliseconds := 0;
    SystemTimeToFileTime(st,ft);
    ui.QuadPart := PUserInfo11(ui11)^.usri11_last_logon+ULARGE_INTEGER(ft).QuadPart;
    FileTimeToSystemTime(TFileTime(ui),st);
    GetTimeFormat(LOCALE_USER_DEFAULT, TIME_FORCE24HOURFORMAT, @st, nil, buf1, sizeof(buf1));
    GetDateFormat(LOCALE_USER_DEFAULT, DATE_SHORTDATE, @st, nil, buf2, sizeof(buf2));
    Memo1.Lines.Add('Last-Logon'+TAB+': '+String(buf2)+' / '+String(buf1) );
  end;
  NetAPIBufferFree(ui11);
end;
Nur leider stimmt das:
Zitat:
Last-Logon : 1970-01-01 / 00:01:44
nicht. Da war ich noch nicht mal geboren, geschweige denn dass ich mich da schon an meinem jetztigen Rechner eingeloggt hätte.
Michael
Ein Teil meines Codes würde euch verunsichern.
  Mit Zitat antworten Zitat