Board logo

标题: [问题求助] VBS脚本如何结束OEXEC的代码? [打印本页]

作者: lqh123108    时间: 2012-2-8 11:42     标题: VBS脚本如何结束OEXEC的代码?

  1. SET WshShell = CreateObject("WScript.Shell")
  2. WshShell.Run cmd /c ping /n 3 127.1&&for /f "skip=3 tokens=3 delims=. " %%a in ('tasklist /fi "windowtitle eq c:\windows\system32\cmd.exe"') do taskkill /f /pid %%a
  3. Set oexec = WshShell.Exec("cmd /c ping /n 100 127.1") '用上面的批结束本行
复制代码
上面是我写的,但第二行总是引号使用不对,哪位朋友帮忙改一下..
作者: Demon    时间: 2012-2-8 12:58

不伦不类
作者: ivor    时间: 2012-2-8 13:31

' 注释掉了后面的语句
作者: lqh123108    时间: 2012-2-9 10:59     标题: 引号已解决,但新问题是..

本帖最后由 lqh123108 于 2012-2-9 11:57 编辑

SET WshShell = CreateObject("WScript.Shell")
ml="cmd /c ping 127.1 /n 5&&for /f " & """" & "skip=3 tokens=3 delims=. " & """" & " %a in ('tasklist /fi " & """" & "windowtitle eq C:\windows\system32\cmd.exe" & """" & "') do taskkill /f /pid %a"
WshShell.Run ml
Set oexec = WshShell.Exec("cmd /c ping /n 100 127.1") '用上面的批结束本行

想用第二行提前结束第三行命令,但不行
作者: samsinn    时间: 2012-2-9 13:08

本帖最后由 samsinn 于 2012-2-9 13:10 编辑
  1. SET WshShell = CreateObject("WScript.Shell")
  2. Set oexec = WshShell.Exec("ping /n 100 127.1") '用上面的批结束本行
  3. wsh.Sleep 3000
  4. oexec.Terminate
复制代码
你的意思是不是想设置几秒后结束exec的进程
作者: lqh123108    时间: 2012-2-10 11:00

回复 5# samsinn


是一个好方法,竟然不知道,多谢

不过,我的命令为什么无法结束呢?呵呵,爱钻牛角尖了..
作者: samsinn    时间: 2012-2-10 11:41

因为taskkill也是CMD命令,它先结束了自己的窗口,那它还怎么能结束别人的窗口?




欢迎光临 批处理之家 (http://www.bathome.net/) Powered by Discuz! 7.2