当前位置: 首页 > 图文教程 > 脚本技术 > VBScript > vbs实现的eMule电驴自动关机脚本代码

VBScript
vbs 列出该目录下所有文件和文件夹的类型,大小,和所有者
雷客图 站长安全助手 vbs版代码(asp 木马查找)
discuz 任意管理员密码漏洞利用工具 vbs代码
添加网站到安全站点.设置安全站点打开ActiveX时提示.去页眉页脚的vbs代码
文件夹定时自动备份 AutoBackUpFolder.vbs
iis PHP安装脚本 PHPInstall.vbs V3.1
HTA文件去除html控件认证和接收命令行参数
vbs 更改环境变量
excel2access vbs脚本
VBS 下载方法(CDO.MESSAGE)
vbs实现myipneighbors 域名查询结果整理
修改 Gateway和DNS的vbs脚本
VBS sendkeys 模拟击键操作 问题解决
用vbscript来添加ip策略 自动封IP
vbs,hta中选择文件夹对话框实现代码
WMI 脚本高手不完全手册
vbscript语句中“&H”专用于16进制数表示
URL 筛选小工具 提取网页中的链接地址
VBScript 文件操作代码小结
vbs 错误捕获器,用于捕获内部错误并进行手工处理

VBScript 中的 vbs实现的eMule电驴自动关机脚本代码


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-09-11   浏览: 70 ::
收藏到网摘: n/a

Set fso = CreateObject("Scripting.FileSystemObject")
Set ws = WScript.CreateObject("WScript.Shell")
Count = 0
Do Until Count< -1
chksize = fso.GetFolder("C:\Program Files\eMule\Temp").Size
If chksize = 0 Then
WScript.Sleep 120000
'ws.run "shutdown -p", 0 '这句还是不太好使
ws.run "tsshutdn 60 /delay:0 /powerdown",0 '这个是在一个批处理关机程序里看到的,非常强,试了很多次,各种情况下都能关机(2003系统,其它系统未测)
End If
WScript.Sleep 120000
Loop
将以上代码保存为文本文件,将"C:\Program Files\eMule\Temp"改成你自己的emule临时文件目录,并将后缀改成vbs运行即可。
此脚本的作用是每2分钟检测一次temp文件夹,若emule下载完成,则temp为空,脚本等待2分钟后强行关闭本地计算机,没有超时或警告。
不过本人非常配服作者的见解,作者太有才了,能想出这种办法来。
非常感谢对我的评价,作者的生气是可以理解的,我也不多做解释了,因为我不在您的网站上看到这内容,且,我看了您的代码,是可以正常工作的
现在说下我的观点:
1。我在网上看到的内容是提示是在do里边的,所以这个方法是不行的。
2。shutdown 的参数,我是不怎么了解,我用的系统是2003+sp2这个上的shutdown 是有-p属性的,不过看了您的文章知道了,还有个-f属性,我这个版本也有,所以您的代码通用性比较强。
3。至于 ,脚本等待2秒后强行关闭本地计算机,没有超时或警告。这个是本人粗心所致(应该是2分钟120000=120*1000),此文会改正。
作者对他写的文章如此关注,实在令人敬佩,
另:您的网站没法进行留言,我试了很多都不行,您还是处理一下吧,或网站上加上一个联系方式,这个以便和您联系。
贴上作者原代码:
通用信很强的
dir=”E:\Temp”
Set fso=CreateObject(”Scripting.FileSystemObject”)
cmd=”shutdown -s -f -t 60″
Set ws=WScript.CreateObject(”WScript.Shell”)
Wscript.Echo “emule自动关机脚本已运行……”
count=0
do until count<-1
chksize = fso.GetFolder(dir).Size
If chksize=0 Then
ws.run cmd,0
End If
WScript.Sleep 120000
loop因为好多人都不设置存放文件的路径所以,给个比较直接的
Dir = "C:\Program Files\eMule\Temp"
Set fso = CreateObject("Scripting.FileSystemObject")
cmd = "shutdown -s -f -t 60"
Set ws = WScript.CreateObject("WScript.Shell")
Wscript.Echo "emule自动关机脚本已运行……"
Count = 0
Do Until Count< -1
chksize = fso.GetFolder(Dir).Size
If chksize = 0 Then
ws.run cmd, 0
End If
WScript.Sleep 120000
Loop本人修改的:
Set fso = CreateObject("Scripting.FileSystemObject")
Set ws = WScript.CreateObject("WScript.Shell")
Count = 0
Do Until Count< -1
chksize = fso.GetFolder("C:\Program Files\eMule\Temp").Size
If chksize = 0 Then
WScript.Sleep 120000
ws.run "tsshutdn 60 /delay:0 /powerdown", 0 '这个是在一个批处理关机程序里看到的,非常强,试了很多次,各种情况下都能关机(2003系统,其它系统未测)
End If
WScript.Sleep 120000
Loop