VB/我要一段关机代码
发布网友
发布时间:2024-10-04 23:10
我来回答
共4个回答
热心网友
时间:2024-10-05 09:25
ExitWindowsEX()函数用来退出、重启或注销系统。 函数原型: BOOL ExitWindowsEx( UINT uFlags, // 关闭参数 DWORD dwReserved // 系统保留,一般取0 ); 参数:uFlags 指定关闭的类型。此参数必须有下列值的组合: 1.EWX_FORCE 强制终止进程。当此标志设置,Windows不会发送消息WM_QUERYENDSESSION和WM_ENDSESSION的消息给目前在系统中运行的程序。这可能会导致应用程序丢失数据。因此,你应该只在紧急情况下使用此标志。 2.EWX_LOGOFF 关闭所有进程,然后注销用户。 3.EWX_POWEROFF 关闭系统并关闭电源。该系统必须支持断电。 Windows要求: Windows NT中调用进程必须有 SE_SHUTDOWN_NAME 特权。 Windows 9X中:可以直接调用。 4.EWX_REBOOT 关闭系统,然后重新启动系统。 Windows要求: Windows NT中:调用进程必须有SE_SHUTDOWN_NAME特权。 Windows 9X中:可以直接调用。 5.EWX_SHUTDOWN 关闭系统,安全地关闭电源。所有文件缓冲区已经刷新到磁盘上,所有正在运行的进程已经停止。 Windows要求: Windows NT中:调用进程必须有SE_SHUTDOWN_NAME特权。 Windows 9X中:可以直接调用。 参数:dwReserved 保留,这参数被忽略。一般取0。 返回值 如果函数成功,返回值为非零。 如果函数失败,返回值是零。想获得更多错误信息,请调用GetLastError函数。 备注 ExitWindowsEx函数返回后,启动了关闭。关闭或注销。 在关机或登录操作中,应用程序在允许关闭的时间具体数额内回应关机请求。如果时间到期时,Windows会显示一个对话框,允许用户强行关闭应用程序:关闭、重试,或取消关机要求。如果存在EWX_FORCE指定值,Windows会关闭应用程序而不显示该对话框。 Windows NT中:关闭或重新启动系统,调用进程必须使用AdjustTokenPrivileges函数使SE_SHUTDOWN_NAME特权。Windows 95中:安全特权,不支持或需要。
例子ExitwindowsEX
'模块
Public Declare Function ExitWindowsEx Lib "user32" (ByVal uFlags As Long, ByVal dwReserved As Long) As Long
Public Opt As String
Public Const EWX_SHUTDOWN = 1
Public Const EWX_REBOOT = 2
Public Const EWX_LOGOFF = 0
Public Function HandeOpt()
Select Case Opt
Case "shutdown" '关闭计算机
ExitWindowsEx EWX_SHUTDOWN, 1
Case "restart" '重新启动
ExitWindowsEx EWX_REBOOT, 0
Case "logoff" '注销当前用户
ExitWindowsEx EWX_LOGOFF, 0
End Select
End Function
'EWX_SHUTDOWN
'EWX_REBOOT
'EWX_LOGOFF
'窗体
Option1.caption=关闭计算机 Option1.caption=重新启动 Option1.caption=注销用户
command1.caption = 确定
'*****************************************
' 注销重启和关闭计算机
'*****************************************
Private Sub Command1_Click()
HandeOpt
End Sub
Private Sub Form_Load()
Opt = "shutdown"
Me.Icon = LoadPicture("")
End Sub
Private Sub Option1_Click()
Opt = "shutdown"
End Sub
Private Sub Option2_Click()
Opt = "restart"
End Sub
Private Sub Option3_Click()
Opt = "logoff"
End Sub
cmd shutdown执行时可能会有DOS窗口,且只可以用于XP
热心网友
时间:2024-10-05 09:23
直接在事件里加个下面的函数就行了 -s是关机 如果想重启就改成-r,-c 后面是说明
shell("cmd/c shutdown -s -t 60 -c 1分钟后关机")
热心网友
时间:2024-10-05 09:24
shell "shutdown -s -t 0"
XP上绝对能用
热心网友
时间:2024-10-05 09:25
Dim WSHshellA
Set WSHshellA = wscript.CreateObject("wscript.shell")
WSHshellA.run "cmd.exe /c shutdown -r -t 120 "
以上代码为设置电脑2分钟后关机,其中参数为:
-r 关闭并重启 若为-s 直接关闭
-t 120 设置关机时间
其它参数你在MS-DOS中键入 “ shutdown /?”就能知道的很清楚。