如何利用VB调用WinRAR压缩某文件夹下某几个文件 近日,在网上找了相关的资料,进行了实验,但是报错,错误附件截图,请高手指教: 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 '先将rar.exe 拷到共用路径 windows或system32 下'我还有一些winrar的帮助材料,有需要的话给我邮箱吧.'压缩 d:\pintu 文件夹下的*.gif 到 c:\test.rarOption ExplicitDim wsource$, wtarget$, aa$Private Sub Command1_Click() wsource = "d:\pintu\*.gif" ' Text1.Text ' 原始文件 wtarget = "c:\test.rar" 'Text2.Text ' 目地文件 aa = "rar.exe " & "a " & wtarget & " " & wsource Call Shell(aa, vbHide) MsgBox "压缩完成!"End Sub 首先感谢cbm的分享!按照您的方法,我做了实验!‘--------------------------------------------------Option Explicit Dim wsource$, wtarget$, aa$ Private Sub Command1_Click() wsource = "d:\pintu\1.doc d:\pintu\1.txt " ' Text1.Text ' 原始文件由1.txt和1.doc组成 wtarget = "d:\test.rar" 'Text2.Text ' 目地文件 aa = "rar.exe " & "a " & wtarget & " " & wsource Call Shell(aa, vbHide) MsgBox "压缩完成!" End Sub ’--------------------------------------------------但是我还有些疑问:1. 如果原始文件在别的盘符下都没有问题,但是怎么使压缩文件中只有所压缩的文件,而没有文件夹!也就是点开压缩文件就能看到文件;2. 当原始文件在桌面上时,该程序能够执行,但是找不到压缩后的压缩文件! 我桌面的地址是:C:\Documents and Settings\Administrator\桌面请不吝指教!再次感谢! Private Sub Command1_Click() '压缩 wsource = "e:\music\*.mp3" wtarget = "c:\test.rar" aa = "rar a -ep " & wtarget & " " & wsource '-ep 就是不会带文件夹,直接只有文件 Call Shell(aa, vbHide) 'starttm = Timer 'Do ' DoEvents ' If Isrunexe("rar.exe") = False Then Exit Do 'Loop Until Timer > starttm + 60 MsgBox "压缩完成!"End Sub 谢谢!不带文件夹的问题解决了!只是当文件在桌面上时,压缩后的文件不知道跑那去了?就算是把目标.RAR 文件地址不是在桌面也找不到!不知为何?再次麻烦cbm666帮忙看看,分析一下原因!(*^__^*) cbm666真是厉害啊!问题已经快解决了!真是开心啊! 现在在cbm666的大力帮助下终于解决了!加分啊!满分奉上啊! 我需要一个判断是否是当天得文件夹(文件夹是日期为名),如果是则不压缩,反之压缩,压缩得文件名以获取的文件夹为名,压缩后并删除文件夹,这样得一个程序,不知道怎么写。请指教我得邮箱是[email protected] 新手问:如何让一个变量滚动地和自身比大小?? supergrid 实现其在表格末尾,回车键加一行的事件,该如何编写? text控件的什么属性可以让它只读? 请问如何实现检验文本框内是否输入正确的EMAIL格式? 那些字符是Windows认为的非法字符呢? 水晶报表的.rpt文件内嵌的数据库路径能用控件动态修改吗? 高手请进! 两张表之间怎么建立连接 这个软件是用VB编写的吗 打印的问题... 如何复制剪切板内容到word VB中函数怎样返回数组
'我还有一些winrar的帮助材料,有需要的话给我邮箱吧.'压缩 d:\pintu 文件夹下的*.gif 到 c:\test.rarOption Explicit
Dim wsource$, wtarget$, aa$
Private Sub Command1_Click()
wsource = "d:\pintu\*.gif" ' Text1.Text ' 原始文件
wtarget = "c:\test.rar" 'Text2.Text ' 目地文件
aa = "rar.exe " & "a " & wtarget & " " & wsource
Call Shell(aa, vbHide)
MsgBox "压缩完成!"
End Sub
按照您的方法,我做了实验!
‘--------------------------------------------------
Option Explicit
Dim wsource$, wtarget$, aa$
Private Sub Command1_Click()
wsource = "d:\pintu\1.doc d:\pintu\1.txt " ' Text1.Text ' 原始文件由1.txt和1.doc组成
wtarget = "d:\test.rar" 'Text2.Text ' 目地文件
aa = "rar.exe " & "a " & wtarget & " " & wsource
Call Shell(aa, vbHide)
MsgBox "压缩完成!"
End Sub
’--------------------------------------------------
但是我还有些疑问:
1. 如果原始文件在别的盘符下都没有问题,但是怎么使压缩文件中只有所压缩的文件,而没有文件夹!也就是点开压缩文件就能看到文件;
2. 当原始文件在桌面上时,该程序能够执行,但是找不到压缩后的压缩文件!
我桌面的地址是:C:\Documents and Settings\Administrator\桌面
请不吝指教!再次感谢!
wsource = "e:\music\*.mp3"
wtarget = "c:\test.rar"
aa = "rar a -ep " & wtarget & " " & wsource '-ep 就是不会带文件夹,直接只有文件
Call Shell(aa, vbHide)
'starttm = Timer
'Do
' DoEvents
' If Isrunexe("rar.exe") = False Then Exit Do
'Loop Until Timer > starttm + 60
MsgBox "压缩完成!"
End Sub
只是当文件在桌面上时,压缩后的文件不知道跑那去了?就算是把目标.RAR 文件地址不是在桌面也找不到!不知为何?再次麻烦cbm666帮忙看看,分析一下原因!(*^__^*)