欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

vbs后台运行bat删除自身的代码

程序员文章站 2022-05-14 21:01:15
知道真实路径的情况下复制代码 代码如下:set fso=wscript.createobject("scripting.filesystemobject") fso.del...
知道真实路径的情况下

复制代码 代码如下:

set fso=wscript.createobject("scripting.filesystemobject")
fso.deletefile "c:\windows\system32\run.cmd"
fso.deletefile "c:\windows\system32\run.vbs"


不知道具体的路径情况下,可以用如下代码:

复制代码 代码如下:

set fso =createobject("scripting.filesystemobject")
fso.deletefile(wscript.scriptfullname)


wscript.scriptfullname返回脚本的实际路径。

删除自身之:vbs

把下面的脚本保存为selfkill.vbs或selfkill.vbe:

复制代码 代码如下:

set fso = createobject("scripting.filesystemobject")
f = fso.deletefile(wscript.scriptname)
wscript.echo( wscript.scriptname)


然后运行它,是不是发现selfkill.vbs神奇的消失啦?而后面的对话框却被正常显示出来噢^*^
上面的脚本调用fso控件,使用wsh中wscript对象得scriptname属性,得到脚本自身的文件名,
并调用fso的deletefile方法删除自身!

把它稍微改写一下:

复制代码 代码如下:

on error resume next '防止出现错误
set fso = createobject("scripting.filesystemobject")
wscript.sleep 1000 '将脚本执行挂起1秒
fso.deletefile(wscript.scriptname) '删除脚本自身
if fso.fileexists("c:\selfkill.exe") then fso.deletefile("c:\selfkill.exe") '删除程序


程序就可以动态生成vbs自删除脚本,并调用它删除自身啦,方法同样和批处理文件的自删除相似!
需要说明的是由于病毒及蠕虫对脚本的滥用,脚本删除文件时可能会被被误认为恶意代码!