安排C#应用程序

时间:2010-08-02 10:19:34

标签: c# scheduled-tasks

我开发了一个应用程序来连接pop3邮件,阅读电子邮件并将它们插入数据库。我需要这项服务每小时完成一次任务。有人可以帮助我,因为我被卡住了吗?

static void Main(string[] args)
  {
   TcpClient Server;
   NetworkStream NetStrm=null;
   StreamReader RdStrm=null;
   string Data, tmpMessage="", mail="", szTemp, CRLF = "\r\n", ch="";
   byte[] szData;
   int i=0, counter=0;
   MySqlConnection connection = new MySqlConnection();
   [snip]
   Console.WriteLine(RdStrm.ReadLine());
   connection.Close();
   Console.ReadLine();
   }

我不是一个程序员,所以请原谅我对该语言的错误使用。 所有功能都在这里,但我只是不知道如何计时并让它连续运行。 非常感谢

4 个答案:

答案 0 :(得分:4)

如果您希望“按原样”使用您的应用程序,则可以使用Windows任务计划程序对其进行配置,Windows任务计划程序是每​​个Windows版本中都包含的服务。

另一种方法是创建专用的Windows服务,但这需要您将应用程序从控制台应用程序重写为Windows服务(以前称为“NT服务”)。

希望这有帮助。

答案 1 :(得分:2)

忘记Windows服务 - 这是一种无情的方法。这里的主要问题是:服务一直存在。你想要一个简单的过程每小时开始一次,大约需要2分钟....而且不要让那个东西在剩下的时间内堵塞你的记忆。

使用Windows中的任务计划程序。创建一个命令行应用程序来执行下载,使用调度程序每小时启动一次或者您想要的任何计划(每小时在夜间,每天15分钟)。结束。

http://en.wikipedia.org/wiki/Task_Scheduler有关如何运作的良好链接。

答案 2 :(得分:0)

如果你不想实现你的细节,那里有很好的库,比如< shamelessplug> DemiCode Scheduler< / shamelessplug>和Quartz.NET

答案 3 :(得分:-1)

有很多教程可以解释如何编写服务 - 我建议你从那里开始(只需在google中输入“C#服务教程”)