delphi如何修改系統時間 Delphi如何用語句修改系統時間? 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 全是转贴的:在Uses部分加上WinDos单元(不是Windows单元)。这样你就可以使用SetTime和SetDate函数,这两个函数是以前Turbo Pascal的标准函数。如果你没有用过Turbo Pascal,可以在Delphi\source\rtl70目录中找到windos.pas,在其中有该函数的定义。---------------------------------用Delphi获取当前系统时间http://tech.sina.com.cn 2000/09/27 软件世界 毛顿 在开发应用程序时往往需要获取当前系统时间。尽管Y2K似乎已经平安过去,但在我们新开发的应用程序中还是要谨慎处理“时间”问题。 在《融会贯通--Delphi4.0实战技巧》(以下简称“该书”)第89页专门介绍了两种获取当前系统时间的方法,但这两种方法都存在不足或错误,以下就此进行讨论。 该书第一种方法是利用Time()函数获得当前系统时间,返回结果是TDateTime结构类型的变量。例如: procedure TForm1.Button2Click(Sender: TObject); var DateTime:TDateTime; begin DateTime:=Time(); Caption:=DateToStr(DateTime)+' '+TimeToStr(DateTime); end; 但不论何日期,其结果却都是99-12-30 xx:xx:xx, 显然日期出错了。通过分析Delphi的帮助,Time()用于返回正确的“时间--时分秒”即TimeToStr(DateTime),而不应该用于返回“日期”。事实上,单独用于返回日期的系统函数是Date。 那么有什么是既可返回正确的“时分秒”又可返回正确的“年月日”呢? 可以用Now函数,例如: procedure TForm1.Button1Click(Sender: TObject); var mytime: TDateTime; begin mytime:=Now; Caption:=DateToStr(mytime)+' '+TimeToStr(mytime); //或直接用 Caption := DateTimeToStr(Now); end; 用Now返回的日期格式中年只有2位,即2000年显示为00, 这似乎不太令人满意. 此外Now和Time都只能获得精确到秒的时间,为了得到更精确的毫秒级时间,可以使用API函数GetSystemTime,它对应的TSystemTime类型的定义为: TSystemTime = record wYear: Word; wMonth: Word; wDayOfWeek: Word; wDay: Word; wHour: Word; wMinute: Word; wSecond: Word; wMilliseconds: Word; end; 显然,在程序逻辑中还能够方便地使用其结构成?时---各类时间值,因此使用函数GetSystemTime具有很大优越性。但该书中该函数的用法是错误的,通过查阅Windows SDK帮助可知,该函数原型为: VOID GetSystemTime(LPSYSTEMTIME lpst),参数指针lpst获取系统时间,因此可如以下程序段实现: procedure TForm1.Button3Click(Sender: TObject); var SysTime: TsystemTime; begin GetSystemTime(SysTime); Caption:=IntToStr(SysTime.wYear)+' '+IntToStr(SysTime.wMonth); //if SysTime.wYear>2000 then // ......在程序逻辑中利用获取的各类时间值 end; 综合以上讨论,获取当前系统时间利用函数GetSystemTime比较方便而且灵活。 得到服务器时间需要有一个时间服务器并且开启windows的W32Time服务用net time命令可以得到服务器时间http://support.microsoft.com/kb/816042 謝謝各位.用net 有時沒權限. sdzeng(大头鸟) 的稍為繁雜了一些.用setlocaltime 函數實現了 散分,和昨天理由一样 我用的delphi 7那里下载office2003组件,还有怎么提取word文档的内容,比如标题之娄 delphi有什么好的入门书吗 各位高手,帮帮忙啊!!![悬赏100分] 如何把WINDOWS某一文件夹里的所有文件的文件名生成一张数据表 Olecontainer的保存和打印问题 请高手给小弟一分OBJECT PASCAL的语法帮助文件(要中文的)! 程序员作到我个地步,真是惨呀,没钱用了,卖源代码. 新手(菜鸟)请教!如何让程序自已来处理Error事件?。。。。。。 救急 如何让dbgrid的编辑状态失去且选定该行 有什么办法可以快速了解一个别人写的系统?
用Delphi获取当前系统时间
http://tech.sina.com.cn 2000/09/27 软件世界 毛顿
在开发应用程序时往往需要获取当前系统时间。尽管Y2K似乎已经平安过去,但在我们新开发的应用程序中还是要谨慎处理“时间”问题。 在《融会贯通--Delphi4.0实战技巧》(以下简称“该书”)第89页专门介绍了两种获取当前系统时间的方法,但这两种方法都存在不足或错误,以下就此进行讨论。 该书第一种方法是利用Time()函数获得当前系统时间,返回结果是TDateTime结构类型的变量。例如: procedure TForm1.Button2Click(Sender: TObject); var DateTime:TDateTime; begin DateTime:=Time(); Caption:=DateToStr(DateTime)+' '+TimeToStr(DateTime); end; 但不论何日期,其结果却都是99-12-30 xx:xx:xx, 显然日期出错了。通过分析Delphi的帮助,Time()用于返回正确的“时间--时分秒”即TimeToStr(DateTime),而不应该用于返回“日期”。事实上,单独用于返回日期的系统函数是Date。 那么有什么是既可返回正确的“时分秒”又可返回正确的“年月日”呢? 可以用Now函数,例如: procedure TForm1.Button1Click(Sender: TObject); var mytime: TDateTime; begin mytime:=Now; Caption:=DateToStr(mytime)+' '+TimeToStr(mytime); //或直接用 Caption := DateTimeToStr(Now); end; 用Now返回的日期格式中年只有2位,即2000年显示为00, 这似乎不太令人满意. 此外Now和Time都只能获得精确到秒的时间,为了得到更精确的毫秒级时间,可以使用API函数GetSystemTime,它对应的TSystemTime类型的定义为: TSystemTime = record wYear: Word; wMonth: Word; wDayOfWeek: Word; wDay: Word; wHour: Word; wMinute: Word; wSecond: Word; wMilliseconds: Word; end; 显然,在程序逻辑中还能够方便地使用其结构成?时---各类时间值,因此使用函数GetSystemTime具有很大优越性。但该书中该函数的用法是错误的,通过查阅Windows SDK帮助可知,该函数原型为: VOID GetSystemTime(LPSYSTEMTIME lpst),参数指针lpst获取系统时间,因此可如以下程序段实现: procedure TForm1.Button3Click(Sender: TObject); var SysTime: TsystemTime; begin GetSystemTime(SysTime); Caption:=IntToStr(SysTime.wYear)+' '+IntToStr(SysTime.wMonth); //if SysTime.wYear>2000 then // ......在程序逻辑中利用获取的各类时间值 end; 综合以上讨论,获取当前系统时间利用函数GetSystemTime比较方便而且灵活。
并且开启windows的W32Time服务
用net time命令可以得到服务器时间http://support.microsoft.com/kb/816042
用net 有時沒權限.
sdzeng(大头鸟) 的稍為繁雜了一些.
用setlocaltime 函數實現了