说三道四技术文摘-感悟人生的经典句子
说三道四 > 文档快照

VB如何在 VB 中使用 Winzip 来压缩文件?

HTML文档下载 WORD文档下载 PDF文档下载
VB如何在 VB 中使用 Winzip 来压缩文件?
版本:VB6 / VB5 / VB4-32

现在压缩软件一大堆,但是如果您想在 VB 程式中做文件压缩的功能,您知道要怎么做吗?

我不懂一些烦琐的压缩理论,但是我懂得利用现有的压缩软件来替我达到我想要的功能!

在这个例子中,我要使用 Winzip 来做,所以,如果您想用下面的示例来做练习的话,先決条件就是您的电脑中一定要有安装 Winzip 才行!

压缩文件 (加入文件):

语法:winzip[32].exe [-min] action [options] filename[.zip] files

参数说明:

-min 最小化
指定 Winzip 执行时为最小化。如果您要使用 -min 这个参数,它必须是命令列参数的第一个参数。

action 方法

-a add 加入文件
-f freshen 重新整理目前文件
-u update 更新文件
-m move 移动文件

options 选项

Directories 文件夹选项
-r Recurse Directories 含文件夹內內容。
-p Save Extra Directory Info 储存其他的文件夹信息。
method 決定压缩的方法选项
-ex eXtra 最大 (最慢)
-en Normal 一般 (默认值)
-ef Fast 快速
-es Super fast 最快速
-e0 no compression 不压缩
其他选项
-s 设定密码 密码必须使用双引号括起来。
例如:-s "Secret Password",不过要注意大小写是不同的!
-hs   包含符合条件的隐藏及系统文件。

filename.zip 压缩文件名
指定压缩后的文件名,要注意的是必须是全路径文件名 (含磁碟機代号及文件夹)。


files 所有原始文件
一个或多个文件,每一个文件写在獨立的一行,可以使用萬用字元,例如:*.bak。


解压缩文件:

语法:winzip[32].exe -e [options] filename[.zip] directory

参数说明:

-e 表示解压缩
是必要的参数!

options 选项

-o Overwrite existing files
without prompting 取代同名的文件。
-j Junk pathnames 跳過舊文件。
除非指定 -J 这个参数,否則会使用原本的文件夹名稱。
-s 设定密码 密码必须使用双引号括起来。
例如:-s "Secret Password",不过要注意大小写是不同的!
-hs   包含符合条件的隐藏及系统文件。

filename.zip 压缩文件名
指定压缩后的文件名,要注意的是必须是全路径文件名 (含磁碟機代号及文件夹)。

directory 文件夹
解压缩后的文件存放的文件夹。如果文件夹不存在便会自动建立。


注意事项:

※非常重要:永远使用全路径文件名 。
※若希望执行 Winzip 时是最小化,要使用 -min 这个参数,它必须是命令列参数的第一个参数。
※Winzip 內建只支援 zip 及 unzip 二种操作模式。
※若是長文件名的话,必须使用双引号括起来。
※在设定文件时,前面及最后的字元不可空白,也不可有空白行!
※在命令列中的方法及选项参数,至少要用一个以上的空白分隔。

※WinZip 可以用来配合 cc:Mail 压缩文件:
更改 WMAIL.INI 中的 [cc:Mail] section 的 compress= 这一行
指定 Winzip 的完整路径,并跟随着 "-a %1 @%2" 参数
例如:如果 Winzip 安装在 c:\winzip,則 compress= 这一行必须改成
compress=c:\winzip\winzip.exe -a %1 @%2


示例:
Private Sub Command1_Click()
Dim wzipexe As String ' winzip 执行文件的位置
Dim wsource As String ' 原始文件 (压缩前)
Dim wtarget As String ' 目地文件 (压缩后)
Dim wcmd As String ' Shell 指令
Dim retval As Double ' Shell 指令传回值

' Shell 指令
wzipexe = "C:\program files\winzip\WINzip32" ' winzip 执行文件的位置
wtarget = "d:\1.zip" ' 原始文件 (压缩前)
wsource = "d:\1.mbd" ' 目地文件 (压缩后)
wcmd = wzipexe & " -a " & wtarget & " " & wsource ' Shell 指令
retval = Shell(wcmd, 6) ' Shell 指令传回值


'上面的一大串可写成
'retval = Shell("C:\program files\winzip\WINzip32 -a _
'd:\1.zip d:\1.mdb", 6)
End Sub
打造完美用户体验:“天翼平台开放日”沙龙纪实 我的编程认知:多思考、多编码、多测试 聚焦应用开发 2014年微信开发者大会即将召开 继续补Bug,jQuery Mobile发布1.4.3版本 手游SDK服务商棱镜公司获A轮投资 东方弘道领投 广而告之:Databricks终止Shark项目,转至Spark SQL DeNA China副总裁黄雪斌:IP战国时代的生存法则 巴别时代首席执行官赵暕:从页游到手游的完美转身 Oracle借助RESTFUL API扩展移动端版图 优秀求职者应主动问的5个问题 高德LBS智能硬件编程马拉松:硬件复兴,等你挑战! 首届bong线上黑客马拉松:运动数据分析应用bong+获大奖 英特尔推出基于WebRTC的协同通讯方案 凸显本土创新“软”实力 一周消息树:不同设备不同界面的Windows 9正在逼近! 乐卓网络CEO李澄澄:移动游戏IP是把双刃剑 高性能动画!HTML5 Canvas JavaScript框架KineticJS Swift最酷炫的七大功能 微信开发者大会讲师介绍:柳峰与你一起玩转公众平台应用开发 TIOBE 2014年7月编程语言排行榜:仅发布1月,Swift进Top 20! 艾格拉斯CEO王双义:手游自研引擎的荣耀之路 以招行为例,深圳云软黄榕振谈微信公众帐号企业应用高级开发 来自前苹果高管Heidi Roizen的经验之谈 【短讯】Dropbox、微软OneDrive打不开,国内用户该如何应对? 5分钟弄懂Docker! RakNet:被OculusVR收购的跨平台游戏网络引擎 Qualcomm业务拓展副总裁沈劲:智能终端的延伸 苹果发布Xcode 6 Beta 3,Swift迎来重大更新! Linkedln技术高管Jay Kreps:Lambda架构剖析 《近匠》极光推送:聚焦巨头无法快速转身的领域 Babylon.js:拥有微软背景的开源3D游戏引擎 EMC 2014存储布局及十大新技术要点 怎样在数据库连接关闭后读出数据? 你知道扩展名为img是什么文件吗? 请问如何在Delphi中实现 AutoComplete(自动完成) 的功能?急!急!急! 请教一下在MDI的程序中pmyView->GetParent()->GetParent()->..... 都得到了什么?? 好奇怪的初始化问题。 一个RANDOMACCESSFILE的问题 急急急!!!VB中如何 实现多行删除表中数据???? 有关注册表的问题 ASP中用ADO连接SQL Server2000的连接字符串怎么写? 在画布上怎么实现滚动条 急~~~如何从文件中取值赋给动态数组?~~~~在线等待 到哪里能够下载 BCB6 Update 请问关于REDHAT下关于安装MYSQL 的问题 请问关于REDHAT下关于安装MYSQL 的问题 CreateFolder("name") 问题 name是变量怎么办???? 急!!! 如何做像 http://www.my0807.com/1.gif 的文字。。 请教真正的高手。 如何用TURBOC 2.0编程检测WINDOWS是否已在运行中? VS.NET能专Windows98中安装吗? 如何创建一个imagelist,用CImageList,可以记录24位色的位图 这个关于树的问题我越想越想不通,请手指点指点:) 用winsock控件设置client/server程序时,server端应怎样设置,请各位大虾帮帮小弟!!谢了! 从MIDI文件转换成简谱的问题? 请问谁有高招??????? SOS ,谁能帮帮我? 如何在一个程序中得知另一个指定的程序是否运行? 很急!!请教高手,这样的思路是否正确?(数据库方面)内有非常详细的说明,谢谢!! 我是处学者 这个关于树的问题我越想越想不通,请手指点指点:) 50小分征集C++的类和VBS的类的区别? hg0001(CoolFish) ,分已给!请发给我! 电脑上的时钟在关机之后就停止走动,下次开机时仍是上次的时间,是怎么回事?请教大家! 如何使用 WRITEFILE 函数将二进制数据写入文件? 我装的是XP,JDK1.3,无法编译程序 电脑上的时钟在关机之后就停止走动,下次开机时仍是上次的时间,是怎么回事?请教大家! 如下的演示光盘要实现的功能用什么软件开发比较好一个新手完成要多长时间? windows如何实现禁用状态文字? 输入不回显 你没有权限删除贴子!!!奇怪 Tc 那为用的是win XP,请进! 我输入的PYTHON怎么编译不出来? 问一个很弱的问题 为什么我的工具栏成了这个样子 哪里有讲MFC的书,Linux下GCC的书? 到底是什么问题啊?昏~~~(一定给分) 若干问题,请解惑。。。。。。 我这里的局域网是用win2000+sygate共享上网的,如何设置才能禁止局域网中其他计算机上OICQ或聊天室之类的网站? 如何遍历select下拉菜单中的内容,并显示在另一个select菜单中? 如何编写文档? 同样的程序连接SQLServer为什么比Access慢了几十倍 饮用水是否合乎标准,通常测定水中细菌总数和大肠杆菌菌群数?为什么……?大肠杆菌不也是好的嘛. 已知二次函数y=ax2+bx+c,当x=2时,有最大值2 ,其图像在x轴截得的线段长为2, 47.61.75除以同一个数,结果都余5 这个数是( )或( ) quan,xuan,juan,那么他们的U念“乌”还是念“淤”,宁夏人和山东人说念“乌”,请专家赐教一下.“泉”的拼音念“quan”,“旋”的念“xuan”,“卷”的念“juan”,那么他们的U念“乌”还是念“淤 棉的拼音an读什么音 用某数去除47、61、75结果都余5,这数是几?(提示:有两个答案) 卷的拼音 juan 那个是 ū ,还是 ǖ juan = j u an,J后边是乌?还是雨? 卷的拼音juan,ü和an是连读yuan的音还是应该分开读j-ü-an的音 用一个数去除47.61.75 其余数都是5 这个数是多少 拼音中xuan中的u,其本质上是“于”还是“无”? 已知二次函数y=ax²;+bx+c,当x=3时,函数取得最大值10,且它的图像在x轴上截得的线段长为4,求二次函数的解析式只说一下思路就可以了,数可以不用算! What will the weather - like tomorrowA be B being C is Dwill be应选哪一个 拼音(quan juan)的中文是什么? 在一个字母的右上角和右下角打出字母或数字也许你会说Ctrl+Shift+"+"和Ctrl+"+"但是这样的话打出来的是一个上和一个下分在两个间隔中而不是同一天竖直线上,如何把n右边的两个字母都打出来 在化学反应a+b=c+d中,若5克a和5克b恰好完全反应,生成8克c,则2.5克a完全反应,生成d的质量为 要详细点的步骤 千山鸟飞绝(今天) 万径人踪灭(明天)什么意思? 英文字母右上角的撇怎么打出来. 四年级作文想象的桥 你一出门,千山鸟飞绝,万径人宗灭什么意思 怎么把英文字母右上角加上数字5² 这种,我试过他们说的上标,但是虽然上了 可是复制到 网页上 QQ上的时候有变成普通的52 5²这种不一样 复制也不会变成52 还是保持原样 小学四年级写(桥)的作文 千山鸟飞绝,万径人中灭.描写的是什么季节 在AB+CD—AD+BC化学反应中,10gAB与6gCD恰好完全反应,其中生成2gAD,若要制取7gBC,则各需AB和CD各为 二次函数,x=1/2时得最大值25,f(x)=0时两根立方和等于19.求解析式 千山鸟飞绝,万尽人踪灭.是谁写的 请问下谁知道衣服38号欧洲码是s还是m还是别的什么号码啊? 四年级桥的作文怎么写? 我来自浙江湖州用英语怎么说? ‘‘千山鸟飞绝,万经人踪灭.’’是写那个季节的? 160/85是衣服尺码中的S还是M码? 翻译属于杂多糖的肽聚糖是细菌细胞壁的结构多糖 余式定理何处有? 师徒两人一共生产360个零件,师傅生产的零件比徒弟多2倍,师徒二人各生产了多少个零件? 肽聚糖 植物细胞壁成分为纤维素和果胶为全透膜,肽聚糖所构成的细菌细胞壁的透过性如何?全透或半透? 设二次函数y=ax^2+bx+c,当x=4时取得最大值16,且它的图像在X轴上截得的线段长4,求其解析式且它的图像在X轴上截得的线段长4 .这里我看不懂 word 字母正上面加数字怎么弄 如图所示 跪求 急. 用一个数分别除以31,61,76所的的商都余一,求这个数最大是? 设二次函数y=ax^2+bx+c,当x=4时取得最大值16,且它的图像在x轴上截得的线段长为4,求其解析式 word中如何在字母右下角插入数字 余式定理...设f(x)以x-1除之,余式为8,以x的平方+x+1除之的余式为7x+16,求x的三次方-1除之的余式为多少? 设y=ax*2+bx+c在x=1是取得最大值为3,它的图像在x轴上截得的线段长为4,求二次函数中的a,b,c的值? Word 文档中如何在文字的右上角加小的数字角标,急 余式定理一道题用(x+2)(x-1)除多项式p(x)=x^6+x^5+2x^3-x^2+3,所得余式为?为什么没人会啊啊 已知二次函数y=ax²+bx+c为x=2时有最大值2,其图像在x轴上截得的线段长2, 细菌的芽孢是____A休眠体 B营养繁殖体 C孢子 D营养体请问选什么?能简要地介绍一下以上4个概念吗? 荧光蛋白石蜡切片后还有荧光吗?植物组织做了石蜡切片以后,GFP蛋白还会发荧光吗?有没有确定一点的大侠? xuan,这个拼音的“u ”应该念“迂”还是“屋”?是 西屋安 还是 洗浴安 怎样在数字的右上角加一加号 电视机的屏幕上出现红色字母“FACTORY”该怎样清除? 同底同高的平行四边形面积相等,周长也相等不对那为什么等底等高的三角形面积一定相等就对呢 字母右上角有加号是什么意思?比如 I+,加号在I的右上角,这里I表示一个集合 电视屏幕上有个英文字母有次看电视,不小心按了遥控板上某个键,就出现了个英文字母,几秒钟不作任何按键的话,电视左上角就出现个FAC的字母,要是你随便按个键,完了几秒钟之内就显示个FA2T 等底等高的平行四边形和长方形的面积相等,周长也相等.判断对错 如何在字母上加个加号 大肠杆菌是不是细菌 同底等高的平行四边形面积相等,周长相等不相等 R﹢是什么意思啊?(加号是在R的右上角) 将一未知细菌与大肠杆菌混合后进行革兰氏染色并用显微镜观察,结果如下,判断未知细菌是G+ 还是G- (1)视野内只有红色细菌(2)视野内有红色和紫色细菌(3)视野内只有紫色细菌 已知二次函数y=ax^2+bx+c,当x=3时,函数取得最大值10,且它的图像在x轴上截得的线段长为4,求a.b.c的值 某数去除47、61、75,结果都余5,这个数是()或().
备案号:鲁ICP备13029499号-2 说三道四 www.s3d4.cn 说三道四技术文摘