关于时间的问题(58分)

  • 主题发起人 主题发起人 hufei
  • 开始时间 开始时间
H

hufei

Unregistered / Unconfirmed
GUEST, unregistred user!
各位大侠:
我通过下列程序从服务器上得到服务器时间,
经常得到的时间不是服务器时间,而是'1900-1-1'请问什么原因
function Tjz.srvdatetime2():tdatetime; //服务器时间
var t1:tdatetime;
qrystr:string;
begin
//获得服务器时间
qrystr:='select getdate()';
ADOdate.Close;
ADOdate.SQL.Clear;
ADOdate.SQL.Add(qrystr);
ADOdate.Open;
if ADOdate.RecordCount<=0
then
messagebox(handle,pchar('客户机无法获得服务器时间,请检查网络!'),pchar('信息!'),64)
else
begin
t1:=ADOdate.Fields[0].AsDatetime;
result:=t1;
end;

end;
我有两个变量
a1:tdate; a2:=ttime;
请问我如何将他们合并成tdatetime
谢谢!
 
1.
var
t1:TDateTime;
dm:TSystemTime;
begin
......
t1:=ADOdate.Fields[0].AsDatetime;
DateTimeToSystemTime(t1,dm);
SetLocalTime(dm);
end;


2.
uses DateUtils;
function TForm1.DateAndTime(const A,B: TDateTime): TDateTime;
begin
Result := EncodeDateTime(YearOf(a),MonthOf(a),DayOf(a),
HourOf(b),MinuteOf(b),SecondOf(b),MilliSecondOf(b));
end;

procedure TForm1.Button1Click(Sender: TObject);
var
a: TDate;
b: TTime;
begin
DateAndTime(a,b);
end;
 
接受答案了.
 
后退
顶部