纯vbs实现zip压缩与unzip解压缩函数代码
来源: 阅读:1197 次 日期:2016-07-07 15:02:44
温馨提示: 小编为您整理了“纯vbs实现zip压缩与unzip解压缩函数代码”,方便广大网友查阅!

用VBS解压ZIP文件,网上搜到的多数是调用WinRAR,一点技术含量也没有。听说可以用纯vbs实现,特整理给大家,已经过测试。喜欢的朋友可以测试下。

压缩代码:

代码如下:

Zip "D:\test.iso", "D:\test.zip"

Zip "D:\test", "D:\test.zip"

Msgbox "OK"

Sub Zip(ByVal mySourceDir, ByVal myZipFile)

Set fso = CreateObject("Scripting.FileSystemObject")

If fso.GetExtensionName(myZipFile) <> "zip" Then

Exit Sub

ElseIf fso.FolderExists(mySourceDir) Then

FType = "Folder"

ElseIf fso.FileExists(mySourceDir) Then

FType = "File"

FileName = fso.GetFileName(mySourceDir)

FolderPath = Left(mySourceDir, Len(mySourceDir) - Len(FileName))

Else

Exit Sub

End If

Set f = fso.CreateTextFile(myZipFile, True)

f.Write "PK" & Chr(5) & Chr(6) & String(18, Chr(0))

f.Close

Set objShell = CreateObject("Shell.Application")

Select Case Ftype

Case "Folder"

Set objSource = objShell.NameSpace(mySourceDir)

Set objFolderItem = objSource.Items()

Case "File"

Set objSource = objShell.NameSpace(FolderPath)

Set objFolderItem = objSource.ParseName(FileName)

End Select

Set objTarget = objShell.NameSpace(myZipFile)

intOptions = 256

objTarget.CopyHere objFolderItem, intOptions

Do

WScript.Sleep 1000

Loop Until objTarget.Items.Count > 0

End Sub

解压缩代码:

代码如下:

UnZip "D:\test.iso", "D:\test.zip"

Msgbox "OK"

Sub CopyFolder(ByVal mySourceDir, ByVal myTargetDir)

Set fso = CreateObject("Scripting.FileSystemObject")

If NOT fso.FolderExists(mySourceDir) Then

Exit Sub

ElseIf NOT fso.FolderExists(myTargetDir) Then

fso.CreateFolder(myTargetDir)

End If

Set objShell = CreateObject("Shell.Application")

Set objSource = objShell.NameSpace(mySourceDir)

Set objFolderItem = objSource.Items()

Set objTarget = objShell.NameSpace(myTargetDir)

intOptions = 256

objTarget.CopyHere objFolderItem, intOptions

End Sub

用VBS解压ZIP文件,网上搜到的多数是调用WinRAR,一点技术含量也没有。Google一下“VBS 解压ZIP”,第二是搜搜问问“vbs实现解压缩zip文件”,满意答案是“所以想用vbs来解压这两种格式的文件,至少要有两种命令行解压工具,否则是绝对不可以的”。绝对不可以的,回答的人好自信啊,笑而不语~

更多信息请查看脚本栏目
由于各方面情况的不断调整与变化, 提供的所有考试信息和咨询回复仅供参考,敬请考生以权威部门公布的正式信息和咨询为准!
关于我们 | 联系我们 | 人才招聘 | 网站声明 | 网站帮助 | 非正式的简要咨询 | 简要咨询须知 | 加入群交流 | 手机站点 | 投诉建议
工业和信息化部备案号:滇ICP备2023014141号-1 云南省教育厅备案号:云教ICP备0901021 滇公网安备53010202001879号 人力资源服务许可证:(云)人服证字(2023)第0102001523号
云南网警备案专用图标
联系电话:0871-65317125(9:00—18:00) 获取招聘考试信息及咨询关注公众号:hfpxwx
咨询QQ:526150442(9:00—18:00)版权所有:
云南网警报警专用图标
Baidu
map