开机时间巧控制

Author: 刘景超 Date: 2001年 48期

?牐牫鲇谑莅踩目悸牵嘈藕芏嗯笥讯加凶耪庋男枰鹤约旱牡缒砸惨裱奔湓颍绻坏娇奔洌筒荒苁褂谩>导收咴赪indows 98SE中用“VFP 6.0+Wscript”实现了这一功能,具体编制如下:
  ?牐?1.首先,我们建立关机程序,利用Windows中的Wscript脚本程序,用记事本写入如下代码,取名为restart.vbs:
  ?牐燬et f=Wscript.CreateObject(“Wscript.Shell”)??
  ?牐爁.Run(“Rundll32.exe User.exeexitwindows”)
  ?牐?2.新建表单取名为window.scx,其属性设为:
  ?牐燘ackColor=rgb(192,192,192)
  ?牐燙aption=“warning”
  ?牐燭itleBar选择“0 - 关闭” &&关闭标题栏
  ?牐燱indowState选择“2 - 最大化”
  ?牐燬howWindow选择“2 - 作为顶层表单”
  ?牐燗lwaysOnTop=.t. &防止被其它对象遮档
  ?牐犝庋鹑司兔环ㄍü渌椒ɡ垂乇盏鼻俺绦虻脑诵小=酉吕矗赟how方法中加入如下代码:
  ?牐爄f val(left(time(),2))<10.or.;
  ?牐爒al(left(time(),2))>12.and.??
  ?牐爒al(left(time(),2))<19.or.??
  ?牐爒al(left(time(),)2))>22 &&时间的控制可自由更改
  ?牐燭hisForm.closec.Visible=.t.
  ?牐爀lse
  ?牐燭his.openc.Visible=.t.
  ?牐爀ndif
  ?牐?3.加入三个标签(三个标签放入中间位置就行,其中label3放下面一点),本例中其name属性分别为closec、openc、label3,相关代码如下:
  ?牐燱ITH ThisForm.closec
  ?牐?.Caption=“对不起,Windows 暂时不能启动!”
  ?牐?.ForeColor=rgb(255,0,0)??
  ?牐?.FontSize=24
  ?牐?.Visible=.f.
  ?牐燛NDWITH
  ?牐燱ITH Fhisform.openc
  ?牐?.Caption=“Open the windows……”
  ?牐?.ForeColor=rgb(0,0,255)??
  ?牐?.FontSize=24
  ?牐?.Visible=.t.
  ?牐燛NDWITH
  ?牐燭hisForm.label3.Caption=“5” &用于显示暂停进程
  ?牐燭hisForm.label3.FontSize=9
  ?牐?4.加入一个Timer控件timer1,其属性为:
  ?牐燱ITH ThisForm.timer1
  ?牐?.Comment='5' &&设置暂停的时间(秒)
  ?牐?.Enabled=.t.
  ?牐?.Interval=1000
  ?牐燛NDWITH
  ?牐犉銽imer事件程序如下:
  ?牐營f This.Comment='0'
  ?牐營f ThisForm.closec.Visible=.t.
  ?牐營f MessageBox(“关闭计算机!”)=1
  ?牐燙lear Events
  ?牐燫un Wscript d:\asm\restart.vbs &调用关机程序
  ?牐燛ndIf
  ?牐燛ndIf
  ?牐燙lear Events &清除事件循环
  ?牐燭hisForm.Release
  ?牐燛ndIf
  ?牐燭hisForm.label3.Caption=This.Comment
  ?牐燼=val(This.Comment)
  ?牐燼=a-1
  ?牐燭his.Comment=str(a,1)??
  ?牐?5.接下来保存好表单,只要创建一个主程序就行了。main.prg其代码为:
  ?牐燙lear all
  ?牐燙lose all
  ?牐燬et Talk Off
  ?牐燬et Sysmenu Off
  ?牐燬et Status Bar On
  ?牐燴oom Window Screen MAX
  ?牐燚o Form window.scx
  ?牐燫ead Events
  ?牐?6.新建项目文件:把window.scx,main.prg,restart.vbs加入到项目文件中,以main.prg为主文件,编译生成可执行文件,取名为window.exe。
  ?牐?7.把window.exe拖入到开始菜单的启动中去,就样大功告成了,如果不是开机时间,则整个屏幕显示“Windows暂时不能启动!”,过了5秒后出现一个“确定”的关机信息框,一点确定就马上关机。如果可以开机则显示“Open the windows...”,过5秒完毕。