即来之!刚安之!
timer控件不会影响时间!!!我也是这么认为的!

解决方案 »

  1.   

    TIMER控件是基于消息机制的,不影响系统BIOS,肯定不会影响时间的。
      

  2.   

    我也认为timer不会影响系统时间! 出了什么问题?让你有这种想法?
      

  3.   

    http://www.csdn.net/expert/topic/314/314063.shtm大家看看这个吧
      

  4.   

    回复人: cclxj(lxj) (2001-10-13 11:04:50)  得0分 
    http://www.csdn.net/expert/topic/314/314063.shtm大家看看这个吧   
      

  5.   

    回复人: 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大家看看这个吧  
     
      

  6.   

    根本不会影响,不信你去看看WIN32?
      

  7.   

    那是什么原因呢?
    一运行,我的程序,就慢呢/
    除了多用了几个TIMER之外,跟以前没有不同呀
      

  8.   

    到底影响不影响呢?有人说影响,有人不影响。
    如果影响,它是怎么影响的呢?
    难道WINDOWS在一开机时取到CMOSE的时钟后。就自己计算时钟,也就是说它所显示的时钟并不是CMOSE的时钟,而是自己计算的时钟吗?
    当我运行程序时,由于事件处理比较复杂,所以它就影响到了WINDOWS时钟,所以系统时间就不准了。当我重新启到计算机时。它又取到CMOSE的时钟,所以就又正常了。大家说,我说的有道理吗?
      

  9.   

    Timer也是取Bios时间,多个进程与Windows竞争,导致了混乱。
    因为单CPU是假的多进程
      

  10.   

    Timer也是取Bios时间的话,那么为什么我关机重启后。系统时间为什么会变成正常的呢?
      

  11.   

    timer肯定不会影响系统时间。
    当你的timer多了之后,如果你的程序在一个时钟周期内处理不完事情的话,它照样会重新调用时钟处理程序。 
    如果timer太多的话,系统就可能会死机,而不会使时钟变慢 。
    另外说一句,时钟中断是硬件产生的,不受程序的影响。所以软件不会使时钟变慢,除非你的程序使用了修改时钟的命令。大家一起学习。
      

  12.   

    是的,timer肯定不会影响系统时间,用timer控件,就象在VC中处理WM_TIME消息,Windows
    根据时钟中断每秒钟产生17次这次的消息,不管你怎么处理这个消息,这个消息都会被
    Windows放到消息队列中。所以timer的精度最高只有55ms。而且处理timer事件不会影响别
    的进程,只会影响自己下一个timer事件,所以不会导致系统混乱。只有在使用高精度的多
    媒体时钟时才会影响到别的进程,不过也不会影响到windows的系统时间的准确,除非你
    hook了关于时间的API,并且报告假时间给windows,或者你直接对8259时钟发生器进行编
    程,我想只用Vb,是不可能影响到系统时间的准确,呵呵,别告诉我你可以直接用time语句
    来改时间,如果你能用纯VB使得windows时间变快或变慢,请千万要公布你的方法,我非常
    想知道。
      

  13.   

    TIMER控件不会不过我记得VB里好象有个叫TIMER的函数会影响系统时间的
      

  14.   

       的确上头我讲错,时钟中断每秒大约应为18.2次(保留一们小数),还有上面的8259应该是
    8253,WM_TIME应该是WM_TIMER,对不起,先头没仔细检查,特此更正。
       Timer函数用来返回午夜以来的秒数,也不会影响系统时间。
      

  15.   

    我用VB+ACCESS97写了一个考勤程序。为什么一运行程序时钟就会慢呢?具体请看。
    http://www.csdn.net/expert/topic/314/314063.shtm
      

  16.   

             我又想了一下,cclxj的问题,为什么慢15分钟,你是用什么基准来比较才说慢了的呢?
    如果你Caption上的时间是在Timer事件中累计的,那么肯定有误差,因为它的精度只有55ms,
    VB的帮助里就警告我们不要用Timer来累计时间,也就是说,在一秒钟的最后一个55ms,也就是下
    一个timer事件到来之前,你的应该让timer控件enalbe=false,然后用别的方法来循环检查系统时间,以保证在下一个Timer事件到来前的确已经过了一秒,然后再让timer控件enalbe=true,
    否则你Caption上的时间肯定比真正的系统时间快,累计起来让人觉得系统时间慢了15分钟也没
    什么奇怪,因为实际上是你快了,而不是系统慢了。
      
      

  17.   

    不是系统变慢了,而是因为你用了TIMER之后,系统变的分时操作,效率下降了而已。