如果我希望程序在每天早上6点半作某动作,那我改怎么设置定时器!

wj_xiazi 2003-09-17 03:29:20
如果用SetTimer()好想不太高效啊!
各位高手,还有没有别的方法或者SetTimer中比较高效的方法。
...全文
159 15 打赏 收藏 转发到动态 举报
写回复
用AI写文章
15 条回复
切换为时间正序
请发表友善的回复…
发表回复
postform999 2003-11-10
  • 打赏
  • 举报
回复
mark
wenddy112 2003-09-17
  • 打赏
  • 举报
回复
不妥啊,不妥。
如果你是5:30计算的,且不是每隔一小时就做一次。
还是每隔一段时间就判断一次当前时间是不是6:30的好。
wj_xiazi 2003-09-17
  • 打赏
  • 举报
回复
我想还是这样比较好:
计算当前时间,然后算出和明天6:30的时间差。
再设置一个定时器。用时间差作为定时器的时间间隔。
zhucde 2003-09-17
  • 打赏
  • 举报
回复
CString do_hour,hh,do_min,mm;
int h,m;
CTime t=CTime::GetCurrentTime(); //取出当前时间
do_hour="06";
do_min="30";

h=t.GetHour();
m=t.GetMinute();

if(h<10)
hh.Format("0%d",h);
else
hh.Format("%d",h);

if(m<10)
mm.Format("0%d",m);
else
mm.Format("%d",m);

if(do_hour.CompareNoCase(hh)==0 && do_min.CompareNoCase(mm)==0)//当前时间与6:30比较
{

//这里加入你想要的;
}

当然这这些程序是放在OnTimer()里的
定时器设为SetTimer(1,100,0);

我这里有类似的例子,有兴趣可以留言
fanfyj 2003-09-17
  • 打赏
  • 举报
回复
foxmail(萧遥 www.LoveSnow.com)说的方法比较好!
szclm 2003-09-17
  • 打赏
  • 举报
回复
你可以让系统帮你完成好啦!简单的dos命令"at"这是在winnt下的设置作业的操作,你可以设为6:00钟去执行的你的程序,你的程序一运行,再去开启新作业就好啦!


简单而且是系统帮你完成!这个方便了吧!
nonocast 2003-09-17
  • 打赏
  • 举报
回复
bcpl(闲庭信步)
同意
bluebohe 2003-09-17
  • 打赏
  • 举报
回复
其实每隔十秒调用Timer察看当前时间就不错的,你想一个GetCurrentTime能花费多长时间,干吗要那么高效

另:无所谓高不高手,谁都没说过谁是高手,只是发表的见解多一点而已
dzqsuper 2003-09-17
  • 打赏
  • 举报
回复
好像高手们的高招不也不是那么好使哦

支点别的什么招吧
alfwolf 2003-09-17
  • 打赏
  • 举报
回复
难怪大家叫你“瞎子”,你没看见二当家的(bcpl)都告诉你了吗?
呵呵,不过还是以毫秒为单位比较可靠。
wjatcsdn 2003-09-17
  • 打赏
  • 举报
回复
就用SetTimer()好了,
其实这个函数本来就不是很准的,它本来就是在系统Idle进程间隙中得到执行的,应该没什么问题
alfwolf 2003-09-17
  • 打赏
  • 举报
回复
哈哈哈哈
赞同 bcpl(闲庭信步)
bcpl 2003-09-17
  • 打赏
  • 举报
回复
算出明天6点半离现在的时间,然后以算出的结果(微秒为单位)作参数调用Sleep函数,等Sleep结束,就是6点半了
foxmail 2003-09-17
  • 打赏
  • 举报
回复
GetSystemTime吧
WvW 2003-09-17
  • 打赏
  • 举报
回复
A 需要的SetTimer秒数= 计算当前时间-6:30 COledateTime and COledateTimeSpan类

B 每隔2秒执行一个定时器, 然后执行函数不停的判断当前时间和6:30时候相等(有个容差)

A:方法, 还需要在系统时间更改消息发生后, 再执行函数

16,551

社区成员

发帖
与我相关
我的任务
社区描述
VC/MFC相关问题讨论
社区管理员
  • 基础类社区
  • Creator Browser
  • encoderlee
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

        VC/MFC社区版块或许是CSDN最“古老”的版块了,记忆之中,与CSDN的年龄几乎差不多。随着时间的推移,MFC技术渐渐的偏离了开发主流,若干年之后的今天,当我们面对着微软的这个经典之笔,内心充满着敬意,那些曾经的记忆,可以说代表着二十年前曾经的辉煌……
        向经典致敬,或许是老一代程序员内心里面难以释怀的感受。互联网大行其道的今天,我们期待着MFC技术能够恢复其曾经的辉煌,或许这个期待会永远成为一种“梦想”,或许一切皆有可能……
        我们希望这个版块可以很好的适配Web时代,期待更好的互联网技术能够使得MFC技术框架得以重现活力,……

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