开机时间巧控制 刘景超 2001年 48期 出于数据安全的考虑,相信很多朋友都有着这样的需要:自己的电脑也要遵循时间原则,如果没到开机时间,它就不能使用。经过实践,笔者在Windows 98SE中用“VFP 6.0+Wscript”实现了这一功能,具体编制如下:   1.首先,我们建立关机程序,利用Windows中的Wscript脚本程序,用记事本写入如下代码,取名为restart.vbs:   Set f=Wscript.CreateObject(“Wscript.Shell”)   f.Run(“Rundll32.exe User.exeexitwindows”)   2.新建表单取名为window.scx,其属性设为:   BackColor=rgb(192,192,192)   Caption=“warning”   TitleBar选择“0 - 关闭” &&关闭标题栏   WindowState选择“2 - 最大化”   ShowWindow选择“2 - 作为顶层表单”   AlwaysOnTop=.t. &防止被其它对象遮档   这样,别人就没法通过其它方法来关闭当前程序的运行。接下来,在Show方法中加入如下代码:   if val(left(time(),2))<10.or.;   val(left(time(),2))>12.and.   val(left(time(),2))<19.or.   val(left(time(),)2))>22 &&时间的控制可自由更改   ThisForm.closec.Visible=.t.   else   This.openc.Visible=.t.   endif   3.加入三个标签(三个标签放入中间位置就行,其中label3放下面一点),本例中其name属性分别为closec、openc、label3,相关代码如下:   WITH ThisForm.closec   .Caption=“对不起,Windows 暂时不能启动!”   .ForeColor=rgb(255,0,0)   .FontSize=24   .Visible=.f.   ENDWITH   WITH Fhisform.openc   .Caption=“Open the windows……”   .ForeColor=rgb(0,0,255)   .FontSize=24   .Visible=.t.   ENDWITH   ThisForm.label3.Caption=“5” &用于显示暂停进程   ThisForm.label3.FontSize=9   4.加入一个Timer控件timer1,其属性为:   WITH ThisForm.timer1   .Comment='5' &&设置暂停的时间(秒)   .Enabled=.t.   .Interval=1000   ENDWITH   其Timer事件程序如下:   If This.Comment='0'   If ThisForm.closec.Visible=.t.   If MessageBox(“关闭计算机!”)=1   Clear Events   Run Wscript d:\asm\restart.vbs &调用关机程序   EndIf   EndIf   Clear Events &清除事件循环   ThisForm.Release   EndIf   ThisForm.label3.Caption=This.Comment   a=val(This.Comment)   a=a-1   This.Comment=str(a,1)   5.接下来保存好表单,只要创建一个主程序就行了。main.prg其代码为:   Clear all   Close all   Set Talk Off   Set Sysmenu Off   Set Status Bar On   Zoom Window Screen MAX   Do Form window.scx   Read Events   6.新建项目文件:把window.scx,main.prg,restart.vbs加入到项目文件中,以main.prg为主文件,编译生成可执行文件,取名为window.exe。   7.把window.exe拖入到开始菜单的启动中去,就样大功告成了,如果不是开机时间,则整个屏幕显示“Windows暂时不能启动!”,过了5秒后出现一个“确定”的关机信息框,一点确定就马上关机。如果可以开机则显示“Open the windows...”,过5秒完毕。