在windows服务器上开机启动程序的操作指南
背景
为了能够 24 小时运行量化程序,笔者弄了一个 Windows Server 2012 的服务器,这样就不怕断网断电什么的了。服务器其实挺贵的,于是笔者就弄了个按需付费的服务器,关机状态下每小时 5 分钱,一年下来也就 400 多块钱,比包年划算得多。
但是,为了省钱,你就必须要每天定时开关机,很麻烦的,有没有什么办法自动化呢?
前言
本来笔者最开始使用的是腾讯云,但是没有在明面上找到「自动开关机」的配置(我猜一定是可以的),然后在阿里云找到了 说明文档。最关键的是阿里云有自己的 APP,可以在 APP 上远程登录,这点很关键,后文会说到。
首先给个重要结论:
一些需要前台运行的(比如打开记事本、运行个脚本弹个弹窗)这种任务,只能选择「只在用户登录试运行」。
其它能在后台运行的(比如往一个文件里输入内容、启动一个后台任务)是可以选择「不管用户是否登录都要运行」的。

所以,想要打开某个可交互的程序,就必须要登录用户,也就是必须要远程登录下才能触发。这种情况下,想要每天自动开关机,然后啥也不管,还是做不到的。
于是乎,笔者就只能退而求其次,希望能够「尽可能方便」地登录服务器。最后,发现「阿里云 APP」在保存了登录凭证之后,可以很方便的登录远程服务器,就是屏幕有点小。毕竟,我登录了也不需要做什么,只是想触发一下任务而已,所以屏幕大小也就无所谓了。
下面就具体说说怎么搞计划任务,以及笔者踩过的坑。
创建「任务计划程序」
最简单的方法就是点开菜单,直接搜索「任务计划程序」,打开后如下图:

第一次玩的话,推荐直接使用「创建基本任务…」就可以了,按照步骤一步一步的选,这里就不赘述了。成功创建任务后,可以在左侧的「任务计划程序库」里,看到刚创建的程序。这个时候双击,或者右键 -> 属性,就可以再次编辑任务的属性,可选的项目会更丰富。

简单玩玩,熟悉了之后,下次再创建,就可以使用「创建任务…」,直接用这种模式创建任务了。

还记得上文笔者说的,折腾了半天,任务就是不启动吧。说真的,笔者在这卡了有 2 天,上网查各种资料,没一个说到点子上的。最后结合这几天的经验,加上问了大模型,才把这事搞清楚。结论上面也说了,想运行有交互的程序,必须选择「只在用户登录时运行」。
没运行怎么办
找到任务后,【右键 -> 运行】是可以直接运行任务的,不需要非得等到触发器的条件。这个时候就可以测试你的任务是否可以正常运行了。
如果没有正常运行,可以先看一下下图的简要日志:

注意,这个日志不会自动更新,你需要关掉,重新打开「任务计划程序」来看最新的记录。如果还是没法定位,那就去系统日志看一下。菜单里搜索「事件查看器」,如下图:

如果还是没发现问题,修改一下设置里的「任务已运行规则」,看看是不是因为禁止新任务创建。

另外就是权限问题,一般在「创建任务」第一步,勾上「使用最高权限运行」就可以了。如果还不行,那就挨个属性设置看看吧,毕竟笔者也在这坑了 2 天。
最后说个小技巧,如果想测试自动运行的效果。那么可以把触发器弄成每天定时的,比现在时间快 1 分钟。然后等一会,重新开启「任务计划程序」,查看简要日志。
结语
服务器自动开关机这个,直接看阿里云的文档就可以了,写的很详细,这里就不赘述了。

至于如何选操作系统,以下回复可供参考:

以上就是在windows服务器上开机启动程序的操作指南的详细内容,更多关于windows服务器开机启动程序的资料请关注脚本之家其它相关文章!
相关文章
IIS无法启动提示“服务没有及时响应启动或控制请求”的解决方法[图解]
一直以来Win XP 系统下IIS都用的好好的,一段时间不用,也不知道咋整的,一次想通过Internet 信息服务开启IIS时,发现无法启动IIS并提示服务没有及时响应启动或控制请求2012-05-05
Windows Server 2008 r2 安装Zend Optimizer教程
这篇文章主要为大家分享下在Windows Server 2008 R2下安装Zend Optimizer的方法,因为一些程序使用了zend加密,必须安装Zend Optimizer,这里简单介绍下,方便需要的朋友2013-12-12
WIN2008 R2 Active Directory 之一 部署企业中第一台Windows Server 2008 R
以最新Windows Server 2008 R2(以后简称WIN08R2)系统为例,从零开始讲述关于WIN08R2活动目录相关技术。希望能一直坚持写完2013-06-06
WIN2008系统安装IIS7配过ASP后打开ASP网站为500错误的解决办法
今天帮一客户解决WIN2008上网站打不开报500错误,纠结了几个小时后终于解决,现把经验记录一下2013-03-03
win2008 R2 下 IIS7.5+PHP5.2.17+Mysql5.5.16+Zend3.3.3
windows Server 2008 R2 下面IIS7.5已经对fastcgi的支持有了很大改进,还在使用PHP-ISAPi模式的朋友可以试一下2013-06-06
当前标识没有对"Temporary ASP.NET Files"的写访问权限的解决办法
这篇文章主要介绍了在IIS上部署程序后出现错误-当前标识(NT AUTHORITY/NETWORK SERVICE)没有对C:/WINDOWS/Microsoft.NET/Framework/v2.0.50727/Temporary ASP.NET Files的写访问权限,需要的朋友可以参考下2016-06-06


最新评论