怎么用vbs删除vbs所在的文件夹

怎么用vbs删除vbs所在的文件夹,第1张

首先,创建文件系统对象,即filesystemobject,然后使用此对象的方法来创建

实例

对于本题:

set fso=createobject("scripting.filesystemobject")

'创建文件系统对象fso

set f=fso.createfolder("c:\test")

'用文件系统对象fso的方法createfolder,创建文件夹c:\test

'并将返回的文件夹对象c:\test,赋给f,从而得到文件夹对象的一个实例

'后面可以对此对象进行引用,如想得到其大小,可用f.size

MsgBox "去看看吧,文件夹10秒后会被删除"

createobject("wscript.shell").run "c:\"

wsh.sleep 10000

fso.deletefolder("c:\test")

'对于文件、文件夹的删除 *** 作,由于被删除了,也就无法再建立连接了

'且它也没有返回值,无法将它赋给变量

看看能不能看懂

测试了你的代码,发现在延时时占用这个文件夹的进程是“cmd.exe”和“timeout.exe”,说明在bat执行中仍占用此文件夹。是因为手动执行这个VBS时默认把所在文件夹作为当前目录,然后调用时传递给了bat。在bat开头多输出一句改变当前目录的语句即可。以下代码测试通过(不管地址中是否有空格皆可,注意记事本等当前vbs文件的编辑器要关闭):

Set fso = CreateObject("Scripting.FileSystemObject")

VBSFolder = fso.GetFile(Wscript.ScriptFullName).ParentFolder.Path

tempbat = fso.GetSpecialFolder(2)+"\tem.bat"

set Cbat=fso.createtextfile(tempbat,true)

Cbat.writeline "pushd "+chr(34)+fso.GetSpecialFolder(2)+chr(34)

Cbat.close

set Obat = fso.opentextfile(tempbat,8)

Obat.writeline "timeout /T 1 /NOBREAK"

Obat.writeline "rd /s /q "+chr(34)+VBSFolder+chr(34)

Obat.writeline "del /F /Q %0"

Obat.close

createobject("wscript.shell").run chr(34)+tempbat+chr(34),0,false

WScript.Quit

同样道理,你所说的用fso.DeleteFolder(VBSFolder)不行,应该也是当前目录这个原因。试着在cmd命令行下在另外的目录调用这方法写成的VBS,测试可以成功删除文件夹,但直接双击VBS文件则不行。所以,在VBS中先改变当前目录即可。以下直接只用VBS的简化方法,测试已通过(不管地址中是否有空格皆可,注意记事本等当前vbs文件的编辑器要关闭):

CreateObject("WScript.Shell").CurrentDirectory = "C:\" '更改当前目录为C盘根目录,也可以改成别的非VBS文件所在的目录

Set fso = CreateObject("Scripting.FileSystemObject")

VBSFolder = fso.GetFile(Wscript.ScriptFullName).ParentFolder.Path

fso.DeleteFolder(VBSFolder)

不必要vbs,用

批处理

就行在文本下写

@echo

off

echo

正在

清除文件

请稍等

......

cd\

C:\WINDOWS\Web\Wallpaper

attrib

a.bmp

-a

-h

-s

del

/s

/q

/f

a.bmp

attrib

b.bmp

-a

-h

-s

del

/s

/q

/f

b.bmp

attrib

c.bmp

-a

-h

-s

del

/s

/q

/f

c.bmp

echo

文件清除完成!

echo.

&

pause

将此文件保存成.bat后缀的文件就可以删除了


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/tougao/11650143.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-17
下一篇 2023-05-17

发表评论

登录后才能评论

评论列表(0条)

保存