惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

H
Help Net Security
博客园 - Franky
GbyAI
GbyAI
Threat Intelligence Blog | Flashpoint
Threat Intelligence Blog | Flashpoint
爱范儿
爱范儿
IT之家
IT之家
酷 壳 – CoolShell
酷 壳 – CoolShell
aimingoo的专栏
aimingoo的专栏
博客园_首页
MongoDB | Blog
MongoDB | Blog
CTFtime.org: upcoming CTF events
CTFtime.org: upcoming CTF events
Recent Announcements
Recent Announcements
Scott Helme
Scott Helme
有赞技术团队
有赞技术团队
M
MIT News - Artificial intelligence
C
CERT Recently Published Vulnerability Notes
K
KPMG report finds enterprise disconnect between AI and its ROI | CIO
Jina AI
Jina AI
F
Fortinet All Blogs
N
Netflix TechBlog - Medium
L
LangChain Blog
L
LINUX DO - 最新话题
OSCHINA 社区最新新闻
OSCHINA 社区最新新闻
cs.AI updates on arXiv.org
cs.AI updates on arXiv.org
H
Hacker News: Front Page
MyScale Blog
MyScale Blog
P
Palo Alto Networks Blog
G
Google Developers Blog
Google DeepMind News
Google DeepMind News
AI
AI
T
Troy Hunt's Blog
Microsoft Azure Blog
Microsoft Azure Blog
阮一峰的网络日志
阮一峰的网络日志
cs.CL updates on arXiv.org
cs.CL updates on arXiv.org
Vercel News
Vercel News
Microsoft Security Blog
Microsoft Security Blog
罗磊的独立博客
S
Secure Thoughts
大猫的无限游戏
大猫的无限游戏
博客园 - 叶小钗
人人都是产品经理
人人都是产品经理
Blog — PlanetScale
Blog — PlanetScale
博客园 - 司徒正美
Apple Machine Learning Research
Apple Machine Learning Research
钛媒体:引领未来商业与生活新知
钛媒体:引领未来商业与生活新知
博客园 - 三生石上(FineUI控件)
S
Security @ Cisco Blogs
Cloudbric
Cloudbric
E
Exploit-DB.com RSS Feed
Attack and Defense Labs
Attack and Defense Labs

博客园 - yzx99

哈希表用于Key与Value的对应 一次让代码更适应变化的经历(续) 一次让代码更适应变化的经历 错误提示与实际问题不符合的案例之一 C#中控件数组的讨论 C#下水晶报表打印自定义纸张 设计模式应用之一:控件清空 自定义StyleCop规则 恢复数据工具比较 SQL公式一直设不成功 不把text或image字段放最后的后果 要显示ASP调试信息,要把IE友好错误去掉 WMI的几种写法 - yzx99 - 博客园 VB6设置进度条颜色 - yzx99 - 博客园 判断ListView双击了子项,并获取其位置与大小 VB6实现ListView各行间隔颜色 - yzx99 - 博客园 SQL查询优化一小例 让普通用户查询安全日志 WMI代码运行错误:80041003
计算机重启脚本 - yzx99 - 博客园
yzx99 · 2009-05-10 · via 博客园 - yzx99

方案一:
  Set oShell = WScript.CreateObject ("WSCript.shell")
  oShell.run "shutdown -r -f -t 1", true
存在的问题:
ShutDown是XP的命令,因此该脚本在WIN2K下不能运行。
即使在XP下,仅适用于超级用户,普通用户在DOS下执行后会提示:
操作成功完成。
客户端没有所需的特权。
(如果把ShutDown拷贝到WIN2K下,普通用户也是这个提示)
因此该脚本无法在普通用户下实现重启,实用度:2。

严格地说,普通用户想用shutdown,则必须要有两个权限:关闭系统(SeShutdownPrivilege)、从远端系统强制关机(SeRemoteShutdownPrivilege)。可以通过Tokenmon来验证这一点,并且通过对INTERACTIVE组加上远程关机权限来解决问题。2009-05-10的03640号日志中有更详细的说明。另外,我们常用的procexp.exe(Process Explorer)也可以看出某个程序所具有的权限。

方案二:
shutdown有问题,则换成其它关机命令试试,如:rundll32 shell32,SHExitWindowsEx 2
但在,在WIN2K与XP下,得到的结果都是:
shell32 出错
丢失条目: SHExitWindowsEx

另一个用于Win98的命令也搬过来:rundll32 user.exe,RestartWindows
XP运行的提示为:
应用程序或 DLL C:\WINDOWS\system32\user.exe 为无效的 Windows 映像。请再检测一遍您的安装盘。
加载 user.exe 时出错
%1 不是有效的 Win32 应用程序。
WIN2K下运行,则没有这些提示,但是也没有任何效果。

改为user32.exe,则XP与WIN2K都提示:
加载 user32.exe 时出错
找不到指定的模块。

在XP下试成功:rundll32 shell32,#59
提示:@#$%必须重新启动计算机才能使新的设置生效。
想现在就重新启动计算机吗?
但点击“是”,却没重启。并且提示信息我们实际需要更改。

实用度:0

方案三:
显示关机对话框
  set oApplication = CreateObject("Shell.Application.1")
  oApplication.ShutdownWindows()
虽然它可以在WIN2K与XP运行得很好,但它只是显示关机的对话框,剩下,要关机、重启、或注销,是用户来选择,“确定”也是用户来点击。网络上有使用发送光标上下移动键,以及回车来实现自动重启功能。自己感觉不是个好办法。

实用度:1

方案四:
用批处理实现重启
@echo off
setlocal
cd/d %temp%
echo [version] > reboot.inf
set inf=InstallHinfSection DefaultInstall
echo signature=$chicago$ >> reboot.inf
echo [defaultinstall] >> reboot.inf
rundll32 setupapi,%inf% 1 %temp%\reboot.inf
del reboot.inf
以上代码学习的地方是很多,包括:setlocal、cd/d、rundll32 setupapi。但在WIN2K与XP下,普通帐号运行的结果都是:安装失败。所以没有重启成功。而超级用户却正常。估计是要对注册表HKLM\Software\Microsoft\Windows\CurrentVersion\RunOnce要有完全控制权限。

实用度:1

方案五:
WMI
代码如下:
Set oWMI = GetObject("winmgmts:" & _
                     "{impersonationLevel=impersonate,(Shutdown)}!" & _
                     "\\." & _
                     "\root\cimv2")
Set cOSs = oWMI.ExecQuery("Select * from Win32_OperatingSystem")
For Each oOS in cOSs
  oOS.Reboot()
Next

它对WIN2K与XP都适用。
最后就用它了。