设为首页收藏本站Access中国

Office中国论坛/Access中国论坛

 找回密码
 注册

QQ登录

只需一步,快速开始

12下一页
返回列表 发新帖
查看: 2396|回复: 16
打印 上一主题 下一主题

[其它] 请教~!如何用代码重新启动电脑?

[复制链接]
跳转到指定楼层
1#
发表于 2015-3-6 14:47:19 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
同题!
Private Declare Function ExitWindowsEx Lib "user32" (ByVal uFlags As Long, ByVal dwReserved As Long) As Long
Private Sub Command0_Click()
ExitWindowsEx EWX_SHUTDOWN, 0 '关闭计算机
ExitWindowsEx EWX_REBOOT, 0  '重新启动
ExitWindowsEx EWX_LOGOFF, 0  '注销用户
End Sub
论坛里找到的,可只能注销不重新启动,我哪里做的不对吗?
再!如何能先关闭了本mde再重新启动电脑?
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏1 分享分享 分享淘帖 订阅订阅

点击这里给我发消息

2#
发表于 2015-3-6 15:43:19 | 只看该作者
Sub 关机()                                                             '这部分代码应放在标准模块中
On Error Resume Next
Dim WSHshellA
Set WSHshellA = CreateObject("wscript.shell")
WSHshellA.Run "cmd.exe /c shutdown -s -t 60 -c ""关机吧!"" ", 0, True
End Sub   

点击这里给我发消息

3#
发表于 2015-3-6 15:44:11 | 只看该作者
还有一种VBA代码实现 关机 重启 锁屏
关机

Public Declare Function SHShutDownDialog Lib "shell32" Alias "#60" (ByVal YourGuess As Long) As  Long
Function 关机()
SHShutDownDialog (0)
关机 = "You have canceled shutdown"
End Function
重启

Private Declare Function SHRestartSystemMB Lib "shell32" Alias "#59" (ByVal hOwner As Long, ByVal sExtraPrompt As String, ByVal uFlags As Long) As Long
Private Const SystemChangeRestart = 4

Public Function 重启()
SHRestartSystemMB 0, vbNullString, SystemChangeRestart
End Function

锁屏
Public Function 锁机()
AppActivate (Shell("c:\windows\system32\rundll32.exe user32.dll,LockWorkStation"))
End Function
4#
 楼主| 发表于 2015-3-6 17:18:48 | 只看该作者
谢谢站长!!!
我试了您提供的重启方法,可结果还是注销啊!我想要冷启动那样的。另,注销前有提示,需要点确定才可以!
麻烦您看看,能有别的方法吗?
5#
 楼主| 发表于 2015-3-6 17:20:48 | 只看该作者
tmtony 发表于 2015-3-6 15:44
还有一种VBA代码实现 关机 重启 锁屏
关机

谢谢站长!!!
我试了您提供的重启方法,可结果还是注销啊!我想要冷启动那样的。另,注销前有提示,需要点确定才可以!
麻烦您看看,能有别的方法吗?

点击这里给我发消息

6#
发表于 2015-3-6 18:32:03 | 只看该作者
WSHshellA.Run "cmd.exe /c shutdown -s -t 60 -c ""关机吧!"" ", 0, True
这个不可能是注销吧?
7#
发表于 2015-3-6 18:40:26 | 只看该作者
1楼的代码早不好使了,估计是工作机制变了
8#
 楼主| 发表于 2015-3-7 19:09:06 | 只看该作者
tmtony 发表于 2015-3-6 15:43
Sub 关机()                                                             '这部分代码应放在标准模块中
...

这个可以 关机 ,可我需要的是重启电脑,如何做啊?
我用的是XP+OFF2003
9#
发表于 2015-3-7 22:30:26 | 只看该作者
sxgaobo 发表于 2015-3-7 19:09
这个可以 关机 ,可我需要的是重启电脑,如何做啊?
我用的是XP+OFF2003

实在不行,就自动执行DOS提示符下如下命令吧:
shutdown -r -t 0
10#
 楼主| 发表于 2015-3-7 23:33:28 | 只看该作者
koutx 发表于 2015-3-7 22:30
实在不行,就自动执行DOS提示符下如下命令吧:
shutdown -r -t 0

可以了,谢谢您!!!
为什么说 实在不行?这方法有什么负面作用?还是不安全?
您需要登录后才可以回帖 登录 | 注册

本版积分规则

QQ|站长邮箱|小黑屋|手机版|Office中国/Access中国 ( 粤ICP备10043721号-1 )  

GMT+8, 2024-5-5 05:44 , Processed in 0.129855 second(s), 36 queries .

Powered by Discuz! X3.3

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表