让程序在MFC C ++中每小时运行一些函数

时间:2014-01-03 09:58:32

标签: c++ mfc

我正在尝试创建一个在mfc c ++中每小时运行某些功能的程序。

我在外面找不到任何关于如何做到这一点的好教程,因为我仍在学习过程中并试图扩展我的知识。

只是一些东西,所以我似乎不会问空问题,到目前为止,我创建了一个从.INI文件中读取值并将其存储在程序中的全局变量中的程序。我已经设法让它在系统托盘中无限期运行,我的计划是最终每小时将.txt文件中的一些文本解析为.csv文件。

重申一下,任何人都可以向我解释如何做到这一点的逻辑和粗略方法吗?对于我的学习过程,我只想知道如何展示

MessageBox("Hello");    

每1分钟左右只是为了我自己的理解。

2 个答案:

答案 0 :(得分:3)

当您使用MFC时,我假设您使用的是Windows作为操作系统。

正常接近此方法的方法是使用Windows中的任务计划程序以所需的时间间隔安排程序的运行。 (您也可以使用任务计划程序配置命令行参数。)

我不愿意在应用程序中使用计时器,因为我质疑这种方法的稳定性。

答案 1 :(得分:0)

使用Windows计时器。获取壁垒时间并计算在下一个XX:00之前剩余的ms数。将计时器间隔设置为(比方说)一半。在计时器处理程序中,重复该计算和计时器设置,直到剩余时间小于1000毫秒,然后将计时器设置为剩余间隔。下次触发时,执行操作,然后设置下一小时的计时器。

你可以通过这种方式非常准确地“爬行”。