用VB编写定时关闭计算机的程序
微软的VB以简单易用,功能强大而著称,使用VB可以很容易地编写出定时关闭计算机的程序。以下是一个简单的定时关闭计算机的程序,供各位使用VB的朋友参考,如有何不适之处,请多指点!
定时关闭计算机,很显然,有两个关键点:
1.定时。可以用VB中的Timer控件结合计算机的系统时间来进行精确的定时。
2.关闭计算机。这可以调用Win32 API函数ExitWindowsEx 来关闭计算机。
下面首先来说明一下ExitWindowsEx 函数,该函数在VB中的声明如下:
Declare Function ExitWindowsEx Lib user32 Alias ExitWindowsEx (ByVal uFlags As Long, ByVal dwReserved As
Long) As Long
【返回值】
Long,非零表示成功,零表示失败。
【参数表】
uFlags --------- Long,
指定下述一个或多个标志(用OR运算符合并到一起)EWX_FORCE=4
强迫中止没有响应的进程
EWX_LOGOFF=0
中止进程,然后注销
EWX_SHUTDOWN=1
关掉系统电源(如果可能的话,ATX电源就可以)
EWX_REBOOT=2 重新引导系统
dwReserved ----- Long,保留,设为零
好了,现在可以开始编程了。
1. 新建一个标准EXE工程。
2. 在窗体上放置一个TextBox控件,用以输入定时时间。
3. 在TextBox控件之下放置两个OptionButton控件,组成控件数组,用以选择定时模式。
4. 在OptionButton控件之下放置一个CommandButton.
5. 随便在窗体的某地方放置一Timer控件。
以上控件了需要设置的属性值如下:
对象属性设置
Text1 Text 空
Option1(0) Caption 在指定时间关机
Option1(1) Caption 延迟指定的时间关机
Command1 Caption 确定
Timer1 Interval 15000(精确到1/4分钟,
如要更精确可减少该值)
Enabled False
增加代码如下:
标准模块:
Option Explicitvb所有代码
Public Const EWX_SHUTDOWN = 1 '关闭系统Declare Function ExitWindowsEx Lib
user32 (ByVal uFlags As Long, ByVal
dwReserved As Long) As Long
窗体模块:
Option Explicit
Dim txtTime '保存输入时间
Dim nowTime '保存实时时间
Dim oldTime '保存开始定时时间
Private Sub Command1_Click()
oldTime = Time
If Not IsDate(Text1.Text) Then
'用IsData函数判断输入的时间格式
MsgBox 你所输入的不是时间格式,请重试! , , Wrong Else
txtTime = TimeValue(Text1.Text)
End If
Timer1.Enabled = True
'启动定时器
Me.WindowState = 1
'最小化窗体
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论