不使用zip32.dll打包的方法

Dim fso As New Scripting.FileSystemObject
Dim Shell As Object
Dim zFolder As Object
Dim sFolder As Object
Dim zipFile As String
Dim f As Object
Dim FileName As String
Dim sFolderItem As Object
zipFile = "Sample" & ".zip"
FSO.CreateTextFile(zipFile, False).Write "PK"&Chr(5)&Chr(6)&String(18, 0)
Set Shell = CreateObject("Shell.Application")
Set zFolder = Shell.Namespace(FSO.GetAbsolutePathName(zipFile))
set sFolder = Shell.Namespace(FSO.GetAbsolutePathName(sourcePath))

For Each f In FSO.GetFolder(sourcePath).Files
	FileName = FSO.GetFileName(f)
	Set sFolderItem = Shell.Namespace(FSO.GetParentFolderName(FSO.GetAbsolutePathName(f))).ParseName(FileName)
	zFolder.CopyHere sFolderItem
Next

For Each XXX.SubFOlders
	Application.Wait Now+TimeSerial(0, 0, 1)	//如果没有这句话,会生成空白文件
	----------------------------------------------------------------------------------------------------------
	//以下的写法更标准
	Set zFolderItem zFolder.ParseName(FileName)
	If zFolderItem Is Nothing Then
		Count = zFolder.Items.Count
		zFolder.CopyHere sFolderItem
		Do While zFolder.Items().Count = Count
			Application.wait Now + TimeSerial(0, 0, 1)
		Loop
	End If
Next

...


7-ZIP32.DLL 是一个供第三方软件调用进行压缩7z 或解压7z 的动态链接库。 2014/6/25 Version 9.22.00.01 新增的API。 (SevenZipGetLastError) 新增的API。 (SevenZipSfxConfigDialog) 新增的API。 (SevenZipSfxFileStoring) 支持长路径名。 (仅适用于基于NT的,在某种程度上是7-zip的本家兼容) 更改为返回FALSE,如果密码是错误指定CHECKARCHIVE_FULLCRC标志SevenZipCheckArchive。 加强错误处理。固定在没有返回现场应该返回一些错误。 定,如果缓冲区耗尽SevenZipGetArcFileName等来返回一个错误。 SevenZipGetMethod的略作修改的规范。相应的缓冲区不足的时间变化。 支持M_CHECK_FILENAME_ONLY国旗和M_CHECK_ALL_PATH在SevenZipOpenArchive。固定M_CHECK_FILENAME_ONLY的(“-R-”),是一个M_CHECK_ALL_PATH(“-R”)的默认状态。还可以支持(“-R0”)通过使用在同一时间的两个标志。 修正了无法显示的密码窗口时没有任何窗口的应用程序处理加密文件中的错误。 固定有在那里当然对话框的处理速度的项目显示100倍的情况。 修正了SevenZipGetArcAccessTimeEx必须得到更新的日期和时间的错误。 未安装-SLP到非支持的DLL,就像因此不能使用开关,一旦7-Zip文件管理器。 (您可以使用) 重建在7-ZIP9.22。 - 我可以在MF= FilterID开关指定压缩过滤器。下面的例子。 A-MF= BCJ2 a.7z a.tar A-MF=三角洲:4 a.7z a.wav A-MF= BCJ a.tar.xz a.tar - 我可以用最好的4GB内存在64位版本的Windows。 - 修正了几个错误。...
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值