【问题标题】:Run code after form load periodically定期在表单加载后运行代码
【发布时间】:2012-04-24 11:14:01
【问题描述】:

我正在开发一个桌面窗口应用程序。表单加载后,从正在运行的机器中获取一些数据并将其以 csv 文件的形式保存到 ftp 服务器,这表明测试已完成。我想运行相同的代码,该代码每隔一小时获取一次值并存储在服务器上。我该怎么做?

控制台应用程序和窗口服务不是可行的解决方案,因为我必须向用户展示表单等。

【问题讨论】:

    标签: c# .net winforms form-load


    【解决方案1】:

    使用 BCL 附带的计时器类之一。

    请参阅 MSDN 上的 Comparing the Timer Classes in the .NET Framework Class Library

    基本上,您设置了一个带有间隔的计时器(触发频率,在您的情况下是每小时一次)以及触发时执行的方法。

    【讨论】:

    • 我想首先显示表单屏幕,它应该运行该代码,并且在测试完成时它应该显示测试完成的消息,并且它将在一小时后再次运行。一小时后,它将再次运行该代码并再次显示该消息。当应用程序运行时,我在哪里可以放置需要定期运行的代码。
    • @NaveedQamar - 由你决定。我建议将它放在自己的类中。
    • @Oded 给了你一个很好的答案。计时器对象可以设置为以任何间隔运行。然后,当您希望它开始运行时,将计时器状态设置为“启用”。
    • @Oded 它确实有效,但是当它在 5 分钟后运行相同的代码时我有一个后续问题......并且在执行代码时我尝试最小化或做其他事情应用程序没有响应模式.然后我必须关闭它。
    • @NaveedQamar - 没有看到您的代码就无法判断。我建议您就这个问题提出一个新问题并发布您的代码。
    猜你喜欢
    • 1970-01-01
    • 2010-09-18
    • 1970-01-01
    • 1970-01-01
    • 2018-12-10
    • 1970-01-01
    • 2012-06-13
    • 2017-06-23
    • 1970-01-01
    相关资源
    最近更新 更多