如何隐藏或不显示压缩zip处理表单。扩展名可能使用*.dat,但仍然是Zip格式。
ArchiveFolder "sub\foo.zip", "..\baz"
Sub ArchiveFolder (zipFile, sFolder)
With CreateObject("Scripting.FileSystemObject")
zipFile = .GetAbsolutePathName(zipFile)
sFolder = .GetAbsolutePathName(sFolder)
With .CreateTextFile(zipFile, True)
.Write Chr(80) & Chr(75) & Chr(5) & Chr(6) & String(18, Chr(0))
End With
End With
With CreateObject("Shell.Application")
.NameSpace(zipFile).CopyHere .NameSpace(sFolder).Items
Do Until .NameSpace(zipFile).Items.Count = _
.NameSpace(sFolder).Items.Count
WScript.Sleep 1
Loop
End With
End Sub发布于 2018-02-06 21:57:04
CopyHere方法有一个可选的第二个参数,用于控制该方法行为的标志:
语法
Folder.CopyHere( vItem,vOptions )
参数
..。
vOptions可选
类型:变量
复制操作的选项。该值可以是零或下列值的组合。这些值基于为与C++ SHFILEOPSTRUCT结构的fFlags成员一起使用而定义的标志。每个Shell名称空间都必须提供这些标志的自己的实现,并且每个名称空间可以选择忽略这些标志中的一些甚至全部。对于Visual Basic、VBScript或JScript,这些标志不是按名称定义的,因此必须自己定义它们或使用它们的数值等效项。
注意:在某些情况下,例如压缩(.zip)文件,某些选项标志可能会被设计忽略。
(4)不显示进度对话框。
..。
试一试
.NameSpace(zipFile).CopyHere .NameSpace(sFolder).Items, 4但要注意,对于zip文件,该标志可能会被忽略(不确定)。
https://stackoverflow.com/questions/48642097
复制相似问题