当前位置: 代码迷 >> ASP.NET >> 怎么在每天凌晨2点定时执行a.aspx
  详细解决方案

怎么在每天凌晨2点定时执行a.aspx

热度:10047   发布时间:2013-02-25 00:00:00.0
如何在每天凌晨2点定时执行a.aspx
如题。补充条件:.net2.0的网站,a.aspx在远程虚拟主机上,虚拟主机24小时开机,我没有权限在虚拟主机上建立定时服务,我也无法在我本机上打开这个页面,因为我不能保证凌晨还开着电脑。

------解决方案--------------------------------------------------------
在本机上做一个服务,到2点就自动调用远程的A.ASPX.
当然,你得保证本机在2点的时候是开机且能上网的状态
------解决方案--------------------------------------------------------
应用程序我知道如何搞,网页还没搞过
------解决方案--------------------------------------------------------
可以使用类似于计划任务的服务吧……
------解决方案--------------------------------------------------------
如题。补充条件:.net2.0的网站,a.aspx在远程虚拟主机上,虚拟主机24小时开机,我没有权限在虚拟主机上建立定时服务,我也无法在我本机上打开这个页面,因为我不能保证凌晨还开着电脑。
------------------------------------------------------------------------
没有办法了。你把所有的路都堵死了。
------解决方案--------------------------------------------------------
写个控制台打开,然后用任务计划调用~
------解决方案--------------------------------------------------------
搞个全局的24小时的定时器。
不过你要保证程序是活动的。
------解决方案--------------------------------------------------------
在Application_Start里起一个线程,休眠时间是Thread.Sleep(1000*60*60*24)
------解决方案--------------------------------------------------------
同意一楼的
------解决方案--------------------------------------------------------
不会线程的话可以用Timer:
void Application_Start()
{
System.Timers.Timer TaskTime=new System.Timers.Timer();
TaskTime.Interval=你要执行的间隔时间,单位是毫秒;
TaskTime.Elapsed += new System.Timers.ElapsedEventHandler(你的处理事件的名字);
TaskTime.Start();
}

当然,上面这个是无法运行的,因为Global.asax文件里面不能写自己的事件,楼主在这个思路上发散思维重新想想该怎么办吧,我已经做出来了,可行。提示一下:建立单独的任务对象,在其它CS文件中写自己的处理事件名字,到Global.asax里面new出来调用,放到Application对象中可以在整个站点控制开始,结束等功能,有必要的时候可以使用反射来提高自动化程度。
------解决方案--------------------------------------------------------
将下面的代码拷贝到自动打开网页.bat,运行后添加启动任务(运行一次就可以了)

============自动打开网页.bat========

@echo off
rem 2:00打开网页
at 2:00 /every:M,T,W,Th,F,S,Su start iexplore http://www.lvyou168.cn
rem 关机时间可以自己设置
at 2:10 /every:M,T,W,Th,F,S,Su shutdowm -s -t 0


只要你电脑电源开着就行,设置你的bois,将自动开机设置为凌晨1:50就可以了
------解决方案--------------------------------------------------------
ding
------解决方案--------------------------------------------------------

------解决方案--------------------------------------------------------
如果a.aspx执行目的是更新数据的话,可以用数据库自身提供的的自动执行服务!SqlServer、Oracle都有
------解决方案--------------------------------------------------------
showbo(iloveC#),很好,很强大。。
------解决方案--------------------------------------------------------
把这个页面抽出来,做个EXE.

在计划任务中设置固定时间点执行.

我个人感觉WEB与FORM需要扬长避短.
------解决方案--------------------------------------------------------
做哟个控制台程序,一直开着
------解决方案--------------------------------------------------------
http://blog.csdn.net/net_lover/archive/2003/08/27/6943.aspx
  相关解决方案