timer控件是否影响系统时间。 即来之!刚安之!timer控件不会影响时间!!!我也是这么认为的! 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 TIMER控件是基于消息机制的,不影响系统BIOS,肯定不会影响时间的。 我也认为timer不会影响系统时间! 出了什么问题?让你有这种想法? http://www.csdn.net/expert/topic/314/314063.shtm大家看看这个吧 回复人: cclxj(lxj) (2001-10-13 11:04:50) 得0分 http://www.csdn.net/expert/topic/314/314063.shtm大家看看这个吧 回复人: cclxj(lxj) (2001-10-13 11:35:26) 得0分 回复人: cclxj(lxj) (2001-10-13 11:04:50) 得0分 http://www.csdn.net/expert/topic/314/314063.shtm大家看看这个吧 根本不会影响,不信你去看看WIN32? 那是什么原因呢?一运行,我的程序,就慢呢/除了多用了几个TIMER之外,跟以前没有不同呀 到底影响不影响呢?有人说影响,有人不影响。如果影响,它是怎么影响的呢?难道WINDOWS在一开机时取到CMOSE的时钟后。就自己计算时钟,也就是说它所显示的时钟并不是CMOSE的时钟,而是自己计算的时钟吗?当我运行程序时,由于事件处理比较复杂,所以它就影响到了WINDOWS时钟,所以系统时间就不准了。当我重新启到计算机时。它又取到CMOSE的时钟,所以就又正常了。大家说,我说的有道理吗? Timer也是取Bios时间,多个进程与Windows竞争,导致了混乱。因为单CPU是假的多进程 Timer也是取Bios时间的话,那么为什么我关机重启后。系统时间为什么会变成正常的呢? timer肯定不会影响系统时间。当你的timer多了之后,如果你的程序在一个时钟周期内处理不完事情的话,它照样会重新调用时钟处理程序。 如果timer太多的话,系统就可能会死机,而不会使时钟变慢 。另外说一句,时钟中断是硬件产生的,不受程序的影响。所以软件不会使时钟变慢,除非你的程序使用了修改时钟的命令。大家一起学习。 是的,timer肯定不会影响系统时间,用timer控件,就象在VC中处理WM_TIME消息,Windows根据时钟中断每秒钟产生17次这次的消息,不管你怎么处理这个消息,这个消息都会被Windows放到消息队列中。所以timer的精度最高只有55ms。而且处理timer事件不会影响别的进程,只会影响自己下一个timer事件,所以不会导致系统混乱。只有在使用高精度的多媒体时钟时才会影响到别的进程,不过也不会影响到windows的系统时间的准确,除非你hook了关于时间的API,并且报告假时间给windows,或者你直接对8259时钟发生器进行编程,我想只用Vb,是不可能影响到系统时间的准确,呵呵,别告诉我你可以直接用time语句来改时间,如果你能用纯VB使得windows时间变快或变慢,请千万要公布你的方法,我非常想知道。 TIMER控件不会不过我记得VB里好象有个叫TIMER的函数会影响系统时间的 的确上头我讲错,时钟中断每秒大约应为18.2次(保留一们小数),还有上面的8259应该是8253,WM_TIME应该是WM_TIMER,对不起,先头没仔细检查,特此更正。 Timer函数用来返回午夜以来的秒数,也不会影响系统时间。 我用VB+ACCESS97写了一个考勤程序。为什么一运行程序时钟就会慢呢?具体请看。http://www.csdn.net/expert/topic/314/314063.shtm 我又想了一下,cclxj的问题,为什么慢15分钟,你是用什么基准来比较才说慢了的呢?如果你Caption上的时间是在Timer事件中累计的,那么肯定有误差,因为它的精度只有55ms,VB的帮助里就警告我们不要用Timer来累计时间,也就是说,在一秒钟的最后一个55ms,也就是下一个timer事件到来之前,你的应该让timer控件enalbe=false,然后用别的方法来循环检查系统时间,以保证在下一个Timer事件到来前的确已经过了一秒,然后再让timer控件enalbe=true,否则你Caption上的时间肯定比真正的系统时间快,累计起来让人觉得系统时间慢了15分钟也没什么奇怪,因为实际上是你快了,而不是系统慢了。 不是系统变慢了,而是因为你用了TIMER之后,系统变的分时操作,效率下降了而已。 VB6.0还有多少生存的空间? VB6.0 怎么获取DataGrid的选中行行号 请问怎么实现在打印图片框里的内容时连同添加在图片框里的控件一起打印? 如何把dsoframer里面的内容保存到数据库里? 请给我数字签名的工具下载地址! 关于MDI子窗体置顶的问题! 怎样用ADO通过语句建立表呀. 如何在win2000下列出在用的进程文件名和完整路径 关于QueryUnload 请问如何在使用半透明的同时播放动画Gif文件? 在报表设计器中划直线? VB控制Excel...
http://www.csdn.net/expert/topic/314/314063.shtm大家看看这个吧
回复人: cclxj(lxj) (2001-10-13 11:04:50) 得0分
http://www.csdn.net/expert/topic/314/314063.shtm大家看看这个吧
一运行,我的程序,就慢呢/
除了多用了几个TIMER之外,跟以前没有不同呀
如果影响,它是怎么影响的呢?
难道WINDOWS在一开机时取到CMOSE的时钟后。就自己计算时钟,也就是说它所显示的时钟并不是CMOSE的时钟,而是自己计算的时钟吗?
当我运行程序时,由于事件处理比较复杂,所以它就影响到了WINDOWS时钟,所以系统时间就不准了。当我重新启到计算机时。它又取到CMOSE的时钟,所以就又正常了。大家说,我说的有道理吗?
因为单CPU是假的多进程
当你的timer多了之后,如果你的程序在一个时钟周期内处理不完事情的话,它照样会重新调用时钟处理程序。
如果timer太多的话,系统就可能会死机,而不会使时钟变慢 。
另外说一句,时钟中断是硬件产生的,不受程序的影响。所以软件不会使时钟变慢,除非你的程序使用了修改时钟的命令。大家一起学习。
根据时钟中断每秒钟产生17次这次的消息,不管你怎么处理这个消息,这个消息都会被
Windows放到消息队列中。所以timer的精度最高只有55ms。而且处理timer事件不会影响别
的进程,只会影响自己下一个timer事件,所以不会导致系统混乱。只有在使用高精度的多
媒体时钟时才会影响到别的进程,不过也不会影响到windows的系统时间的准确,除非你
hook了关于时间的API,并且报告假时间给windows,或者你直接对8259时钟发生器进行编
程,我想只用Vb,是不可能影响到系统时间的准确,呵呵,别告诉我你可以直接用time语句
来改时间,如果你能用纯VB使得windows时间变快或变慢,请千万要公布你的方法,我非常
想知道。
8253,WM_TIME应该是WM_TIMER,对不起,先头没仔细检查,特此更正。
Timer函数用来返回午夜以来的秒数,也不会影响系统时间。
http://www.csdn.net/expert/topic/314/314063.shtm
如果你Caption上的时间是在Timer事件中累计的,那么肯定有误差,因为它的精度只有55ms,
VB的帮助里就警告我们不要用Timer来累计时间,也就是说,在一秒钟的最后一个55ms,也就是下
一个timer事件到来之前,你的应该让timer控件enalbe=false,然后用别的方法来循环检查系统时间,以保证在下一个Timer事件到来前的确已经过了一秒,然后再让timer控件enalbe=true,
否则你Caption上的时间肯定比真正的系统时间快,累计起来让人觉得系统时间慢了15分钟也没
什么奇怪,因为实际上是你快了,而不是系统慢了。