var
 Hour, Min, Sec, MSec:word;
 giventime:Tdatetime;
 givenhour,givensec,givenmsec:word;decodetime(time,hour,min,sec,msec);
giventime:=encodetime(givenhour,min,givensec,givenmsec);

解决方案 »

  1.   

    getsystemtime 得到的时间为格林威致时间。
    北京时间和他差8小时. 用 getlocaltime-------------------------------procedure TForm1.Button1Click(Sender: TObject);
    var
       st: TSYSTEMTIME;
    begin
      getlocaltime(st);
      caption := Format('%d-%d-%d %d:%d:%d.%d',
        [st.wYear,st.wMonth,st.wDay,st.wHour,
        st.wMinute,st.wSecond,st.wMilliseconds]);
    end;