【问题标题】:How to run a .NET program, automatically, every hour如何每小时自动运行 .NET 程序
【发布时间】:2011-01-26 03:33:13
【问题描述】:

我有通过 Web 服务访问的 xml 数据。我需要读取数据并将其复制到本地。下面的代码工作正常。我现在需要在没有人工干预的情况下每天至少运行两次或三次此代码。我怎么做?谢谢!

using System;
using System.Collections;
using System.Data;
using System.Xml;


 class MainClass{
public static void Main(){
XmlDocument doc = new XmlDocument();
// read
doc.Load(new System.IO.StringReader(GetContracts()));

// write
XmlTextWriter tw = new XmlTextWriter( "testOut.xml", null );
tw.Formatting = Formatting.Indented;
tw.Indentation = 4;
doc.Save( tw );
tw.Close();
}
}

【问题讨论】:

  • 您正在编写 XML 的事实与问题的根源无关,即...... 我怎样才能每小时运行一个应用程序? 问题是最好在 superuser.com 或 serverfault.com 上询问。
  • 对不起,但我在 vb.net 中阅读了有关 Timer Controls 的信息,它设置了执行事件的时间间隔,并认为也许在这里我可以获得更多有关它的信息。

标签: .net windows scheduled-tasks


【解决方案1】:

使用任务计划程序。有一个 GUI 和一个命令行界面来设置任务。
如果您使用 GUI,请在 Vista 上的开始...控制面板...管理工具...中找到它。您将能够很容易地弄清楚如何每小时运行一次思考。

如果您使用命令行,请查看文档:http://msdn.microsoft.com/en-us/library/bb736357(VS.85).aspx

schtasks.exe /create /tn "My Task" 
            /tr "C:\path\to\the\app.EXE arg1 arg2" 
            /sc DAILY /RI HOURLY  
            /st 12:00:00 /ru username /rp password

(以上应该是all-on-one-line)

【讨论】:

    【解决方案2】:

    这实际上取决于您希望如何完成计划。如果一天只有几次,我会使用 Windows 中的任务计划程序安排应用程序定期执行。

    【讨论】:

    • 您好,感谢您的帮助。例如,如果我希望每小时更新一次,应该怎么做?
    • 即使每小时,您也可以通过任务计划程序进行设置。
    【解决方案3】:

    Quartz 是一个很好的 java 调度程序,当然您需要设置 jar 以从 windows 启动或安装在 Tomcat 或 Jetty 等应用程序服务器上。

    http://www.quartz-scheduler.org/

    【讨论】:

      猜你喜欢
      • 2014-08-26
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-05-05
      • 2012-03-04
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多