2017-03-06 156 views
0

我正在尝试使用VBScript来删除压缩文件夹。该zip文件还有其他文件夹和文件。VBS从压缩文件夹中删除文件夹

编辑开始:基本代码是:

zipfile = "D:\testFolder\zippers\TestIt\New folder\your.zip" 
foldername = "New folder" 
destination  = "D:\testFolder\zippers\TestIt\New folder" 

Set app = CreateObject("Shell.Application") 
For Each f In app.NameSpace(zipfile).Items 
    If f.Name = foldername Then 
    app.Namespace(destination).MoveHere f, FOF_NOCONFIRMATION 
    End If 
Next 

Set fso = CreateObject("Scripting.FileSystemObject") 
fso.DeleteFolder fso.BuildPath(destination, foldername), True 

可悲的是,在ZIP遗体的文件夹:How to delete files from zip with VBScript 结束编辑

这里是脚本的本地化的示例中,我试图用其删除。所以MoveHere看起来像是一个CopyHere而不是...怪异的

Can Any person help? PS:没有删除文件夹标签,只有一个删除文件...

回答

1

如果您在复制someone else's code时给出正确的归属,那将会很不错。

这样说,它看起来不像Shell.Application对象能够从zip压缩文件中删除文件夹。在文件夹上调用MoveFile会将该嵌套文件夹中的所有文件移出存档,但会留下空的(子)文件夹树。

要完全删除的文件夹嵌套,你需要使用第三方工具,如7-zip

Function qq(s) : qq = """" & s & """" : End Function 

Set sh = CreateObject("WScript.Shell") 
sh.Run "C:\path\to\7z.exe d " & qq(zipfile) & " " & qq(foldername), 0, True 
+0

对此深感抱歉。你是对的,我只是不记得我从哪里得到的基本代码,在开始篡改它之前... 谢谢他提示,但可悲的是我试图做这个没有任何第三方程序,否则我只会使用7zip。哦,比挑战不可能;)谢谢你。 –

相关问题