|
kich
中级用户
积分 397
发帖 168
注册 2006-10-8
状态 离线
|
『楼 主』:
[VBS]如果调用Winrar并执行压缩操作?
用的是VBS脚本,想针对某个文件夹(特定的文件夹,事先定义好了)进行压缩处理!假设这个文件夹有20个DOC文档吧!
怎么调用WinRar呢,压缩后的文件名就以该文件夹命名!
Ps:在对这个文件夹压缩的时候,有两个方式,一个是压缩里面的所有文件,不包括文件夹本身,还有个就是直接压缩文件夹本身,哪个简单,就用哪个吧!!
谢谢!!
|
|
2007-4-5 06:30 |
|
|
baomaboy
银牌会员
积分 1513
发帖 554
注册 2005-12-30
状态 离线
|
|
2007-4-5 06:36 |
|
|
kich
中级用户
积分 397
发帖 168
注册 2006-10-8
状态 离线
|
『第
3 楼』:
查它就可以解决吗??查查看,谢谢
|
|
2007-4-5 09:40 |
|
|
kich
中级用户
积分 397
发帖 168
注册 2006-10-8
状态 离线
|
『第
4 楼』:
看不明白,能不能提示一下,比如说举个例子!!
|
|
2007-4-6 01:37 |
|
|
mygoldnet
初级用户
积分 90
发帖 32
注册 2007-1-14
状态 离线
|
『第
5 楼』:
RAR压缩的同步文件夹
'电脑爱好者专用版 编写:李兴旺 E-MAIL:wors_hip*163.com
MsgBox_Title_Text = "压缩的同步文件夹"
CompressionFolder = InputBox("请输入即将压缩的文件夹路径:", MsgBox_Title_Text, "C:\PHP")
If CompressionFolder = "" Then WScript.Quit
Function Interrogation(Contents)
Dim intButton
intButton = MsgBox(Contents, vbQuestion + vbYesNo, MsgBox_Title_Text )
Interrogation = intButton = vbYes
End Function
Function Compression(CompressionFolder)
FileName = "压缩的同步文件夹.vbs"
Set fso = CreateObject("Scripting.FileSystemObject")
Destination = UCase(fso.GetFile(FileName).Drive) & "\"
DIM cmd
set fso= wscript.CreateObject("wscript.shell")
cmd = "WINRAR A -IBCK -R " & Destination & "压缩的同步文件夹.RAR " & CompressionFolder
fso.run cmd
MsgBox "成功把 " & CompressionFolder & " 文件夹压缩到 " & Destination, vbInformation, MsgBox_Title_Text
End Function
If Interrogation("定时压缩文件夹,同步数据到闪盘,请点击“是”!" & vbCrLf & "马上压缩文件夹,同步数据到闪盘,请点击“否”!") Then
Savetime = InputBox("请输入24 小时格式 (hh:mm) 的时间:", MsgBox_Title_Text, "11:30")
If Savetime = "" Then WScript.Quit
MsgBox "已经运行了定时压缩文件夹,请不要重复运行!", vbExclamation, MsgBox_Title_Text
Dim Check
Check = True
Do
HHMM = FormatDateTime(Time, 4)
If HHMM = Savetime Then
Compression(CompressionFolder)
Exit Do
End If
Loop Until Check = False
Else
Compression(CompressionFolder)
End If
|
|
2007-4-6 01:41 |
|
|
baomaboy
银牌会员
积分 1513
发帖 554
注册 2005-12-30
状态 离线
|
『第
6 楼』:
Quote: | Originally posted by mygoldnet at 2007-4-6 01:41:
RAR压缩的同步文件夹
[code]
'电脑爱好者专用版 编写:李兴旺 E-MAIL:wors_hip*163.com
MsgBox_Title_Text = "压缩的同步文件夹"
CompressionFolder = InputBox ... |
|
代码可当参考范例。
不过眇第一眼时发现了"fso.run cmd"吃了一惊,FSO(FileSystemObject)什么时候多出个.run的方法啊,又仔细看了看
Set fso = CreateObject("Scripting.FileSystemObject")
然后
set fso= wscript.CreateObject("wscript.shell")
虽然可以但很使得代码可读性变差了(太容易产生歧意了)不如用个wshshell
|
好多菩提树,好多明镜台。本来好多物,好多的尘埃。 |
|
2007-4-6 03:18 |
|
|
manxisuosy
新手上路
积分 7
发帖 4
注册 2007-4-6
状态 离线
|
|
2007-4-6 10:18 |
|
|
kich
中级用户
积分 397
发帖 168
注册 2006-10-8
状态 离线
|
『第
8 楼』:
首先感谢mygoldnet提供代码,回去好好研究下!
baomaboy说的有道理,哪怕写简单点,写成 "Ws" 也OK啊
谢谢各位
|
|
2007-4-7 05:03 |
|
|
wjq0886
新手上路
积分 13
发帖 7
注册 2006-12-1
状态 离线
|
|
2007-5-24 22:19 |
|
|
xswdong
中级用户
积分 216
发帖 129
注册 2007-2-14
状态 离线
|
『第
10 楼』:
我是用最笨的方法.
regedit /s D:\m\Settings.reg
"C:\Program Files\WinRAR\WinRAR.exe" "-cp新建配置 6"
regedit /s "D:\m\删除Settings.reg"
其中Settings.reg就是事先导出的WinRAR注册表文件
删除Settings.reg就是删除cp新建配置 6的注册表文件,以前写的用习惯了.
|
|
2007-5-25 12:16 |
|
|
zhoushijay
高级用户
Autowalk
积分 845
发帖 375
注册 2007-3-3
状态 离线
|
『第
11 楼』:
汗 fso.run是什么?
还是在CMD里操作,还不如直接用BAT
[ Last edited by zhoushijay on 2007-5-25 at 05:21 PM ]
|
你好,脚本专家!
<a target=blank href=tencent://message/?uin=29654761&Site=www.111.com&Menu=yes><img border="0" SRC=http://wpa.qq.com/pa?p=1:29654761:5 alt="点击这里给我发消息"></a> |
|
2007-5-25 17:17 |
|