从时间服务器获取时间总是不对,高手指点

susandy 2006-04-21 02:28:36
var
wsaData:tWSADATA;
addr:sockaddr_in;
ulTime:ulong;
ulTemp:^ulong;
s:tSOCKET;
nRtn:integer;
iResult,iRead:integer;
su:array[0..3] of Byte;
sut:^Byte;
t:integer;
begin
ulTime:=0;
if (FWSAStartup(MAKEWORD(2,2),wsaData)<>0) then
begin
showmessage('初始化错误!');
end;
s:=FOpenSocket(AF_INET,SOCK_STREAM,0);
if (s=INVALID_SOCKET) then
begin
showmessage('socket初始化错误!');
end;
FillChar(addr,0,sizeof(sockaddr_in));
addr.sin_family := AF_INET;
addr.sin_port := fhtons(IPPORT_TIMESERVER);
addr.sin_addr.s_addr := finet_addr('129.6.15.29');
sut:=@ulTemp;
if (FConnect(s,addr,sizeof(addr))=0)
then
begin
iRead:=0;
iResult:=0;
while true do
begin
iResult:=recv(s,sut,4-iRead,0);
iRead:=iRead+iResult;
inc(sut,iRead);
if(iResult < 1) then break;
if(iRead>=4) then break;
end;
end;
FWSACleanup();
ulTime:=ulTemp^;
ulTime:=ntohl(ulTime);
edit1.Text:=inttostr(ulTime div 21536000);
...全文
431 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
susandy 2006-09-14
  • 打赏
  • 举报
回复
问题解决
myanwei 2006-05-24
  • 打赏
  • 举报
回复
SQL SERVER:select getdate() ;
ORACLE:select sysdate from dual;
i54 2006-05-24
  • 打赏
  • 举报
回复
帮顶,我也在查找怎么得到SQL服务器上现在的时间.
susandy 2006-04-24
  • 打赏
  • 举报
回复
自己up
susandy 2006-04-22
  • 打赏
  • 举报
回复
up

1,594

社区成员

发帖
与我相关
我的任务
社区描述
Delphi 网络通信/分布式开发
社区管理员
  • 网络通信/分布式开发社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧