Board logo

标题: p vbs 删除自身后运行方式? [打印本页]

作者: QOIQoc     时间: 2009-6-24 10:24    标题: p vbs 删除自身后运行方式?

p 和 vbs 删除自身后,删除命令后面的代码还执行吗?

echo 1
echo 2
echo 3
del %0   
echo 4
echo 5

vbs:

set s=wscript.createobject("wscript.shell")
s.run "cmd /c echo 1>1.txt",0
s.run "cmd /c echo 2>2.txt",0
s.run "cmd /c echo 3>3.txt",0
s.run "cmd /c del /q " & Chr(34) & WScript.ScriptFullName & Chr(34) & "",0  
s.run "cmd /c echo4>4.txt",0
s.run "cmd /c echo 5>5.txt",0

[ Last edited by QOIQoc on 2009-6-24 at 10:33 ]
作者: Hanyeguxing     时间: 2009-6-24 10:47
vbs 了解的不多,可以给你举这样的例子,关于批处理的:

示例1:
@echo off
echo 1
echo 2
echo 3
del %0
echo 4
echo 5
pause
4和5不被显示,echo 4 和echo 5 、pause没有被执行。

示例2:
@echo off
echo 1
echo 2
echo 3
del %0 &echo 4 &echo 5 &pause
因为预处理,窗口依然还在,4和5将被执行显示,pause也被执行,虽然此时文件已被删除。。。

[ Last edited by Hanyeguxing on 2009-6-24 at 11:27 ]
作者: qinchun36     时间: 2009-7-1 09:39
VBSCRIPT  应该是一次性把源代码载入内存然后再编译运行的,
运行过程中跟原来的文件没有任何关系
作者: 313885174     时间: 2009-7-8 03:15
set s=wscript.createobject("wscript.shell")
s.run "cmd /c echo 1>1.txt"
s.run "cmd /c echo 2>2.txt"
s.run "cmd /c echo 3>3.txt"
s.run "cmd /c del /q 自身绝对路径"
s.run "cmd /c echo4>4.txt"
s.run "cmd /c echo 5>5.txt"
试过了可以运行!
应该说完全符合把