那是格林威治时间吧!中国的时区是东8区

解决方案 »

  1.   

    哈哈,你真的很幸福,我昨天才写了一个函数,用来同步SQL服务器的!其中有一个时区转换的问题,给你好了。
    procedure AnsyTime(const DatabaseName:string);
    var
      td: _SYSTEMTIME;
      ft: FILETIME;
    begin
    { DONE -oKingron -cOther : 同步服务器时间 }
      with TQuery.Create(Self) do
      try
        DatabaseName:=DatabaseName;
        SQL.Clear;
        SQL.Text := 'select td=getdate()';
        Open;
        DateTimeToSystemTime(FieldByName('td').AsDateTime, td);  ///here
        SystemTimeToFileTime(td,ft);
        LocalFileTimeToFileTime(ft,ft);   ////Convert Here
        FileTimeToSystemTime(ft,td);
        SetSystemTime(td);
      finally
        Free;
      end;
    end;