C#如何定时执行程序

    技术2022-05-20  62

    loneghost(dotnet入门者……)等 级: #1楼 得分:5回复于:2005-03-16 09:29:12 c#也有timer~~  System.Timer  或者是   System.Theading.Timer  具体用法可以查询下msdn   对我有用[0]丢个板砖[0]引用举报管理TOP 精华推荐: 请教msdn上关于拆箱的解释 churlish(夏虫语冰)等 级: #2楼 得分:8回复于:2005-03-16 09:30:45 使用Timer  System.Timers.Timer   aTimer   =   new   System.Timers.Timer();  public   RechargeFrm()  {  //  //   Windows   窗体设计器支持所必需的  //  InitializeComponent();  components=null;  AutoTime.SelectedIndex=0;  aTimer.Elapsed+=new   ElapsedEventHandler(OnTimedEvent);  //   Create   a   new   Timer   with   Interval   set   to   3   seconds.  //  //   TODO:   在   InitializeComponent   调用后添加任何构造函数代码  //  }   对我有用[0]丢个板砖[0]引用举报管理TOP 精华推荐: 【讨论】★★★★★难度!!如何在WINDOWS启动的时候,用户准备输入密码的时候,运行并且显示程序? churlish(夏虫语冰)等 级: #3楼 得分:8回复于:2005-03-16 09:32:25 //   Only   raise   the   event   the   first   time   Interval   elapses.  aTimer.AutoReset   =   true;  aTimer.Enabled   =   flag;                //aTimer.Interval=Int32.Parse(AutoTime.SelectedItem.ToString())*300;//9s                                aTimer.Interval=Int32.Parse(AutoTime.SelectedItem.ToString())*1000*60;//30m  //Console.WriteLine( "Press   / 'q/ '   to   quit   the   sample. ");  //while(Console.Read()!= 'q ');   对我有用[0]丢个板砖[0]引用举报管理TOP 精华推荐: [攒分贴]每日小知识 xjpeng(海风)等 级: #4楼 得分:5回复于:2005-03-16 09:32:36 c#也有Timer,另外也可以用Thread,或者windows的计划任务  private   Timer     _timer;  private   int   _Interval=30000;  _timer   =   new   Timer();  _timer.Enabled   =   true;  _timer.Interval   =   _Interval;  _timer.Elapsed   +=   new   ElapsedEventHandler(Timer_Elapsed);  private   void   Timer_Elapsed(object   sender,   ElapsedEventArgs   e)  {                                                //todo   something  }    对我有用[0]丢个板砖[0]引用举报管理TOP 精华推荐: 请大家说说Linq的缺点 doubon(DB.NET)等 级: #5楼 得分:2回复于:2005-03-16 09:33:14 最简便的方法就是将定时执行交给Windows的计划任务来完成;  或者实现一个Windows服务   对我有用[0]丢个板砖[0]引用举报管理TOP 精华推荐: 如何做到让程序自学习,让程序有点思维呢 Tomgus(小桥流水)等 级: #6楼 得分:1回复于:2005-03-16 09:37:33 Windows的计划任务是个不错的方法!   对我有用[0]丢个板砖[0]引用举报管理TOP javalovers(飞飞)等 级: #7楼 得分:0回复于:2005-03-16 09:49:35 那如何指定每天晚上12:00执行?  或者说晚上12:00第一次执行,然后每3小时执行一次   对我有用[0]丢个板砖[0]引用举报管理TOP javalovers(飞飞)等 级: #8楼 得分:0回复于:2005-03-16 09:52:28 我现在需要指定   第一次程序执行的具体时间   对我有用[0]丢个板砖[0]引用举报管理TOP ohyear(From Now On...)等 级: #9楼 得分:5回复于:2005-03-16 10:02:10 上面的方法都是延迟在什么时候发生的,楼主要的是”按时“执行的,  UP一下。    对我有用[0]丢个板砖[0]引用举报管理TOP 3gold(新丁)等 级: #10楼 得分:1回复于:2005-03-16 10:13:59 用计划任务不就可以啦?自己写的话要写windows服务。   对我有用[0]丢个板砖[0]引用举报管理TOP pc_csharp(帮助别人,帮助自己)等 级: #11楼 得分:1回复于:2005-03-16 10:39:49 还是timer控制比较好吧.    对我有用[0]丢个板砖[0]引用举报管理TOP javalovers(飞飞)等 级: #12楼 得分:0回复于:2005-03-16 11:16:41 ohyear()理解我的意思了  计划任务根本不可行,因为我的应用是asp.net,而且是放在虚拟主机上  timer控制只能实现定时执行,不能指定具体开始执行的时间,例如晚上12:00开始执行   对我有用[0]丢个板砖[0]引用举报管理TOP haonanernet(与时俱进)等 级: #13楼 得分:10回复于:2005-03-16 12:39:20 string CurrTime=System.DateTime.Now.ToShortTimeString();  string   s= "12:00 ";  if(   CurrTime==s)      {     //程序执行代码      }    对我有用[0]丢个板砖[0]引用举报管理TOP egxsun(egxsun)等 级: #14楼 得分:14回复于:2005-03-16 13:01:58 xjpeng(海风)   的改一下:  private   Timer     _timer;  private   int   _Interval=30000;  _timer   =   new   Timer();  _timer.Enabled   =   true;  _timer.Interval   =   _Interval;  _timer.Elapsed   +=   new   ElapsedEventHandler(Timer_Elapsed);  private   void   Timer_Elapsed(object   sender,   ElapsedEventArgs   e)  {                                                //todo   something  }  在todo   something那里写下面的:  string CurrTime=System.DateTime.Now.ToShortTimeString();  string   s= "12:00 ";  if(   CurrTime==s)      {     //程序执行代码      }  这样应该可以了吧?   对我有用[0]丢个板砖[0]引用举报管理TOP nga96(因为我笨,所以努力。陈勇华)等 级: #15楼 得分:1回复于:2005-03-16 13:13:27 UP   对我有用[0]丢个板砖[0]引用举报管理TOP Aallonlin(风之力)等 级: #16楼 得分:1回复于:2005-03-16 13:17:00 mark   对我有用[0]丢个板砖[0]引用举报管理TOP lalac(水月流影)等 级: #17楼 得分:1回复于:2005-03-16 13:30:34 最简便的方法就是将定时执行交给Windows的计划任务来完成;  或者实现一个Windows服务  ----------------------------------------------------------  how   to   implement   the     windows   servic?  My   email   is:   lalac@163.com  please   contact   me   if   you   know   it!  Thank   you   对我有用[0]丢个板砖[0]引用举报管理TOP haibuo1981(清)等 级: #18楼 得分:1回复于:2005-03-16 13:57:21 学习   对我有用[0]丢个板砖[0]引用举报管理TOP deyangwangyu(wangyu)等 级: #19楼 得分:1回复于:2005-03-16 14:06:01 得到时间的办法可以执行  要是此时c#程序已经关闭了呢?怎么得到时间    对我有用[0]丢个板砖[0]引用举报管理TOP deyangwangyu(wangyu)等 级: #20楼 得分:1回复于:2005-03-16 14:06:27 还是只能加入计划任务吧   对我有用[0]丢个板砖[0]引用举报管理TOP javalovers(飞飞)等 级: #21楼 得分:0回复于:2005-03-16 14:50:22 egxsun():  这样子可行是可行,程序看上去总是有点土  看来.net的类库里面没提供类似于java的方法   对我有用[0]丢个板砖[0]引用举报管理TOP veigd(里里外外)等 级: #22楼 得分:1回复于:2005-03-16 14:51:11 关注!   对我有用[0]丢个板砖[0]引用举报管理TOP zjl1982等 级: #23楼 得分:1回复于:2005-03-17 10:53:44 关注。。。  同样的问题:            如果机器程序都关闭了,system.time还能取得吗?   对我有用[0]丢个板砖[0]引用举报管理TOP lvwaike(螃蟹)等 级: #24楼 得分:1回复于:2005-03-17 12:22:57 up   对我有用[0]丢个板砖[0]引用举报管理TOP murasaki(风羽)等 级: #25楼 得分:1回复于:2005-03-17 14:17:07 asp.net做不了。IIS端不能主动做任何事的。要不你就在自己机器上写个计划任务每天定时去请求那个虚拟主机一下,让它执行事先写好的任务。  所谓定时12点一般也不过是用Timer,隔个几秒钟去问一下系统到没到12点啊?到了就执行这种。   对我有用[0]丢个板砖[0]引用举报管理TOP lcg200x(黑脑龙)等 级: #26楼 得分:5回复于:2005-03-17 14:32:11 www.moblog.net.cn/sunshine.com这个软件定时任务   功能   而且是   不用编译入程序   直接用反射调用你的dll   对我有用[0]丢个板砖[0]引用举报管理TOP fds2003(fds2003)等 级: #27楼 得分:1回复于:2005-03-17 23:20:53 up   对我有用[0]丢个板砖[0]引用举报管理TOP HappyCoolBoy(宗宗)等 级: #28楼 得分:1回复于:2005-03-17 23:50:52 MSDN   对我有用[0]丢个板砖[0]引用举报管理TOP Programer_Zjw(阿伟)等 级: #29楼 得分:1回复于:2005-03-18 08:17:07 直接用C#自己的Timer类就完全可以实现的啊。我已经很好的控制了,   而且是很复杂的控制。没有问题的。   对我有用[0]丢个板砖[0]引用举报管理TOP chinawn(动性忍心)等 级: #30楼 得分:1回复于:2005-03-18 08:32:52 调用外部命令我知道~用at   命令  具体用法你加个/?   看下帮助!    对我有用[0]丢个板砖[0]引用举报管理TOP LoveCherry(论成败,人生豪迈;大不了,重头)等 级:

    3

    更多勋章 #31楼 得分:1回复于:2005-03-18 08:39:40 虚拟主机吗?asp.net可不行   对我有用[0]丢个板砖[0]引用举报管理TOP Cry_Out(东北)等 级: #32楼 得分:1回复于:2005-03-18 08:41:58 关注   对我有用[0]丢个板砖[0]引用举报管理TOP jinbingg(bing)等 级: #33楼 得分:1回复于:2005-03-18 08:46:17 还是做个启动服务   对我有用[0]丢个板砖[0]引用举报管理TOP n007(大木马)等 级: #34楼 得分:1回复于:2005-03-18 09:05:30 我一直用Windows计划任务进行自动记费系统的运行!效果很好!   对我有用[0]丢个板砖[0]引用举报管理TOP foreversoft(恒软信息)等 级: #35楼 得分:1回复于:2005-03-18 09:14:08 gz   对我有用[0]丢个板砖[0]引用举报管理TOP icfsx(icfsx)等 级: #36楼 得分:1回复于:2005-03-18 09:32:09 控制面板-〉任务计划-〉添加任务-〉选择你的程序,设置时间   对我有用[0]丢个板砖[0]引用举报管理TOP lemon_lyk(柠檬)等 级: #37楼 得分:1回复于:2005-03-18 10:09:15 学习   对我有用[0]丢个板砖[0]引用举报管理TOP loki2k(loki)等 级: #38楼 得分:1回复于:2005-03-18 10:27:18 使用windows自己的东西   对我有用[0]丢个板砖[0]引用举报管理TOP oneway888(xiaoaoyisheng)等 级: #39楼 得分:1回复于:2005-03-18 10:36:17 windows   service  windows   schedule  sql   dts   job  ...   对我有用[0]丢个板砖[0]引用举报管理TOP grf601006617(宫崎锋)等 级: #40楼 得分:10回复于:2005-03-18 11:04:59 最简单的方法~把你要执行的程序语句写在一个事件里面(就象button_onClick),然后用Timer的Tick调用那个事件就可以了~(当然你要给Timer的Interval属性赋上时间它是以毫秒计算的)用Timer的Enabled  来控制你是否执行你的事件~  不知是否对你有帮助~我就是这么用的~呵呵~   对我有用[0]丢个板砖[0]引用举报管理TOP jyj13(老蒋想睡觉)等 级: #41楼 得分:1回复于:2005-03-18 12:19:15 写到计划任务里面去嘛   对我有用[0]丢个板砖[0]引用举报管理TOP zhilianjuan(zhilianjuan)等 级: #42楼 得分:0回复于:2010-05-28 16:01:12 #40楼 得分:10回复于:2005-03-18 11:04:59最简单的方法~把你要执行的程序语句写在一个事件里面(就象button_onClick),然后用Timer的Tick调用那个事件就可以了~(当然你要给Timer的Interval属性赋上时间它是以毫秒计算的)用Timer的Enabled   来控制你是否执行你的事件~        对我有用[0]丢个板砖[0]引用举报管理TOP 管理菜单 结  帖发  帖回  复 公司简介| 招贤纳士| 广告服务| 银行汇款帐号| 联系方式| 版权声明| 法律顾问| 问题报告 北京创新乐知信息技术有限公司 版权所有, 京 ICP 证 070598 号 世纪乐知(北京)网络技术有限公司 提供技术支持 江苏乐知网络技术有限公司 提供商务支持  Email:webmaster@csdn.net Copyright © 1999-2010, .NET, All Rights Reserved


    最新回复(0)