每天让计算机定时开机执行指定程序

上传人:ji****n 文档编号:45354418 上传时间:2018-06-16 格式:DOC 页数:5 大小:157.50KB
返回 下载 相关 举报
每天让计算机定时开机执行指定程序_第1页
第1页 / 共5页
每天让计算机定时开机执行指定程序_第2页
第2页 / 共5页
每天让计算机定时开机执行指定程序_第3页
第3页 / 共5页
每天让计算机定时开机执行指定程序_第4页
第4页 / 共5页
每天让计算机定时开机执行指定程序_第5页
第5页 / 共5页
亲,该文档总共5页,全部预览完了,如果喜欢就下载吧!
资源描述

《每天让计算机定时开机执行指定程序》由会员分享,可在线阅读,更多相关《每天让计算机定时开机执行指定程序(5页珍藏版)》请在金锄头文库上搜索。

1、每天让计算机定时开机然后执行指定程序每天让计算机定时开机然后执行指定程序需求分析:每天上班时一些软件是固定的要打开的,如公司邮件、公司内 部 QQ。但是由于公司各地上班时间几乎相同。公司一些服务器能力有限导致 如公司内部 QQ 在上班高峰时不能登陆。还有每天都需要运行或是查看的文件。 于是我们就想到能不能让我们的电脑避开上班高峰提前开机,然后运行指定的 程序呢?答案是肯定的。 1.自动开机 电脑的自启动需要 BIOS 的支持,所幸现在的 BIOS 几乎都支持定时自启 动。 方法是,开机按 Del 键,进入 BIOS 设置程序画面。选择“Power Management Setup”(电源管理设

2、置),将“RTC Alarm Resume”(预设时间启动) 一项设置为“Enabled”,下面出现两个设置项,“Date of month”(系统开机日期) 和“Time(hh:mm:ss)”(系统开机时间),通过这两项设置开机的日期和时间,日期 可以设置为“Event Day”(每天),设置好后,计算机就会根据你设定的时间自动 开机了。2 运行指定程序 运行指定程序比较简单,只要将需要运行的程序文件或是快捷方式放在:开始-所有程序-启动 文件夹里面,就可以实现开机自启动。 另外如 QQ、公司内部 QQ 等登录时是需要输入用户名和密码的,就需要 将这些程序设置为 保存用户名 保存密码 自动登

3、录 (这些设置在它们的登录 界面都有) 设置好以上项后。程序就可以开机自动登录了。 当然上述情况只是最简单粗略的完成了我们的要求。以上没有考虑如周末 不上班就不用开机、若用户设置了密码,开机执行的程序就需要在用户输入密 码登陆后才能执行,这样就达不到我们要的避开上班高峰登录公司内部 QQ 的 要求。为此我们还需要做以下改进: 1.用户登录密码问题 若需要运行的程序没有图形界面,如一些 bat 文件等,这时就可以把这些 文件放进 windows 的计划任务中执行。 若是有图形界面和用户交互,此时有点复杂。将它们放到 windows 的计划 任务中是可以执行的,可是等用户登录后会发现这些程序是在运

4、行但是没有和 用户交互的操作界面的。此时只能采用曲线救国的策略了。我使用方法流程如 下: a.在电脑关机时将用户密码去掉。 b.在电脑自启动开机后将用户密码加上,并锁定计算机。 c.人机对话确认今天是否上班,若不上班(即没有回答要上班)则在 预定的时间点上自动关机。下面我们分别来实现上述 a,b,c 三步操作:在电脑关机时将用户密码去掉。操作方法:开始|运行|输入 gpedit.msc 进入组策略,点击下图 1 中的属性图 1.在组策略中设置关机时执行的程序点击属性后,得到如下对话框:图 2. 关机属性在此对话框里我们可以编辑对本地计算机(即本计算机)的关机脚本,也可以 添加在用户关机时要执行

5、的程序,比如我们添加一个要在用户关机时执行的程序, 结果如下:图 3.添加用户关机时执行的脚本其中 C:WINDOWSsystem32driversetc关机执行.bat 内容为: net user administrator “ 关机执行.bat 建立方法为: 用记事本新建文件,在新建文件中填入: net user administrator “ 然后文件另存为 关机执行.bat (选择保存类型应该为所有文件) 以上命令就是将用户密码设置为空,如果你的默认登录用户名不为 administrator,请将上面的 administrator 改为你的默认登录名。添加用户脚本后关机的属性如下:添加

6、完成后,点击确定,在用户关机时就会执行用户所指定的程序。上面我们就完成了关机时自动去掉登录密码的工作,而在电脑自启动开机 后将用户密码加上,并锁定计算机。及人机对话确认今天是否上班,若不上班 (即没有回答要上班)则在预定的时间点上自动关机。b 、c 两项工作可以在 同一个开机启动程序中完成。我编写的 VBS 脚本文件实现,代码如下:rem = 程序开始= Option Explicit Dim ws,answer const pass=“y“ set ws=createobject(“wscript.shell“) ws.run“net user administrator abc“ ws.r

7、un“at 9:15:01 shutdown -s“ ws.run“cmd /c rundll32.exe user32.dll,LockWorkStation“ answer=InputBox(“今天工作吗?:Y/N“,“工作查询“) if answer=pass then ws.run“cmd /c echo y|at /delete“ ,0,true end if rem =程序结束 =将上面程序段在记事本中另存为以.vbs 结尾的 vbs 脚本文件。如 开机设置 密码.vbs然后将此程序也放入:开始-所有程序-启动 文件夹里面 OK,大功告成!重要程序行解释:const pass=“y

8、“ 预设一字符常量 y 用于对比后面 inputbox 输入 set ws=createobject(“wscript.shell“) 设置 ws 为执行 windows shell 的对象 ws.run“net user administrator abc“ 设置管理员密码为: abc ws.run“at 9:15:01 shutdown -s“ 设置在上午 9 点 15 分 1 秒系统自动 关机 ws.run“cmd /c rundll32.exe user32.dll,LockWorkStation“ 开机执行后自动锁 屏 answer=InputBox(“今天工作吗?:Y/N“,“工作查询“) 人机交互用于确认 是否上班 if answer=pass then 若在人机交互中输入 y ws.run“cmd /c echo y|at /delete“ ,0,true 撤销所有的计划任务,包括 上面的定时关机 end if 后续:第二天上班时,你将来到登陆屏,登陆后,计划需要提前执行的程 序已经执行,然后还有一个需要确认你是否上班的对话框如下:请在对话框中输入 y 以确认今天要上班,否则就会在上午 9 点 15 分 1 秒 系统自动关机。程序还有一些 bug,比如 echo y|at /delete 会删除所有 at 命令所加的计划。 希望大家来完善此程序。

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 生活休闲 > 社会民生

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号