中国DOS联盟论坛

中国DOS联盟

-- 联合DOS 推动DOS 发展DOS --
联盟域名:www.cn-dos.net 论坛域名:www.cn-dos.net/forum
游客 | 登录 | 注册 | 会员 | 搜索 | 中国DOS联盟
中国DOS联盟论坛
现在时间是 2026-08-04 14:19
48,038 主题排行 / 350,123 发帖 / 今日 0 篇 / 48,251 会员排行
DOS批处理 & 脚本技术(批处理室) » [求助]批量压缩解压XX_(CAB格式)文件及VBS问题求助
可打印版本  1,288 / 9
第1楼 wangjf 发表于 2007-05-13 16:02
中级用户 发帖 63 积分 254
[求助]批量压缩解压XX_(CAB格式)文件及VBS问题求助
在压缩CAB格式文件时,发现使用MakeCAB.EXE压缩文件后,文件的时间属性都会改变,另外凡是基于MakeCAB.EXE的压缩程序都有这个改变时间属性的现象。后经试用发现CABARC.EXE和 Cabinet Manager2003 不会改变压缩后的文件时间属性。
因为经常进行批量压缩操作,就在网上找到了这个软件ExMk_CAB.EXE。它是利用VBS调用CABARC.EXE来压缩和解压的,可以点击右键实现批量压缩和解压,并且在Win2003系统中可以压缩成包含目录的文件。可是前几天一下就无法使用了,窗口提示如图。那位大侠能帮小弟解惑,不胜感谢。
ExMk_CAB.EXE下载地址:
http://zhenlove.com.cn/cndos/fileup/files/ExMk_CAB.zip
出错截图:


===============================================
Cab_Make.VBS脚本:

==============================================
Cab_Exct.VBS脚本:


===============================================

另外有没有更好的使用右键调用CABARC.EXE批量压缩CAB的批处理程序。自己写了很简单的供大家参考。
===============================================



  1. REM Run @ NT/2000/WinXP/Win2003
  2. @ECHO OFF
  3. COLOR 21

  4. TITLE 批量压制当前目录中的所有文件为*.XX_(CAB格式)文件
  5. IF EXIST %CD%\XX_ RD /S /Q %CD%\XX_
  6. IF NOT EXIST %CD%\XX_ MD %CD%\XX_

  7. FOR /F %%i IN ('dir/B/O "%CD%"\*.*') DO CABARC -m LZX:21 N %CD%\XX_\%%i "%CD%"\%%i
  8. REN %CD%\XX_\*.* *.??_
  9. ::REG ADD HKCR\*\shell\压制为*.XX_文件(CAB格式)\Command /ve /d MAkeCABs /f
  10. goto :EOF
无奈何发表于: 2007-05-15 00:01
===============================================


[ Last edited by wangjf on 2007-5-15 at 12:03 AM ]
第2楼 baomaboy 发表于 2007-05-13 16:07
银牌会员 发帖 554 积分 1,513
把Cab_Make.VBS 发上来看看
第3楼 wangjf 发表于 2007-05-13 16:18
中级用户 发帖 63 积分 254
已经上传了

[ Last edited by wangjf on 2007-5-15 at 12:02 AM ]
第4楼 baomaboy 发表于 2007-05-13 16:52
银牌会员 发帖 554 积分 1,513
看图的样子你要重新安装一下wsh了,或者是你的杀毒软件控制了FSO

在我这里运行很正常,只是压完的扩展名居然要手动改成cab,不过解压还是很顺利的。所以那个东西应该没问题啊。要考虑系统环境了。
第5楼 wangjf 发表于 2007-05-13 18:02
中级用户 发帖 63 积分 254
谢谢baomaboy兄,想要生成的就是*.XX_文件。我把标题改了一下。

我对VBS一点也不了解,所以不知道WSH和FSO指什么,还请仁兄多指点一二。:)
第6楼 baomaboy 发表于 2007-05-13 18:18
银牌会员 发帖 554 积分 1,513
WSH简说就是VBS所需的运行环境你可以搜一下这方面的帮助或教程看具体解释,FSO就是这个环境中被调用来操作文件的对象(Scripting.FileSystemObject)

看那出错提示是文件系统对象出错,所以后面所有用到FSO的语句都瘫痪。
你可以先关了杀毒软件再试试,如果你没装杀毒软件重装wsh或重注册DLL试试

[ Last edited by baomaboy on 2007-5-13 at 06:24 PM ]
第7楼 wangjf 发表于 2007-05-13 20:07
中级用户 发帖 63 积分 254
Originally posted by baomaboy at 2007-5-13 06:18 PM:
WSH简说就是VBS所需的运行环境你可以搜一下这方面的帮助或教程看具体解释,FSO就是这个环境中被调用来操作文件的对象(Scripting.FileSystemObject)

看 ...


下载WindowsServer2003-Script56-KB917344-x86-chs.exe,安装后CAB_Make.VBS正常了(我的系统是Win2003)。
但这个VBS脚本:

出现下图的错误
第8楼 wudixin96 发表于 2007-05-13 20:14
银牌会员 发帖 931 积分 1,928


引号问题。
第9楼 baomaboy 发表于 2007-05-13 21:17
银牌会员 发帖 554 积分 1,513
不要用输入法状态的引号
第10楼 wangjf 发表于 2007-05-13 21:28
中级用户 发帖 63 积分 254
多谢楼上两位,的确是引号的问题。
[ 联系联盟系统管理团队 - 中国DOS联盟 - 标准版 ]
Sponsored by ifanr Inc | © 2001–2023