VC 如何设置定时器,实现数据更新?比如我希望从10:00开始到14:00结束,每10分钟执行一次任务,复杂一点的我希望每个星期一某个时间执行,或者每个月的第一天某个时间执行,或者每个月第一个星期一执行等等, 类似linux里面的crontab命令

解决方案 »

  1.   

    可以用SetTimer(1,10000,NULL),然后在OnTimer里查询系统时间,如果符合要求就执行,否则直接返回。CTime t = CTime::GetCurrentTime();
    if((t.GetTime()>=10)&&(t.GetTime()<=14)&&(t.GetDayOfWeek()==LOCALE_SDAYNAME1))
    {
       //do your work
    }
    else
    {
       return;
    }
      

  2.   

    错了,应该是:
    CTime t = CTime::GetCurrentTime(); 
    if((t.GetHour()>=10)&&(t.GetTime() <=14)&&(t.GetDayOfWeek()==LOCALE_SDAYNAME1)) 

      //do your work 

    else 

      return; 
    }
      

  3.   

    比如是在windows和linux上,怎么设计》?
      

  4.   

    每月的第几天或者每月第n个星期m怎么判断呢?t.GetDayOfWeek()==LOCALE_SDAYNAME1只是找出星期几吧?