无忧启动论坛

 找回密码
 注册
搜索
系统gho:最纯净好用系统下载站投放广告、加入VIP会员,请联系 微信:wuyouceo
查看: 27668|回复: 48
打印 上一主题 下一主题

针对WinRAR律师函事件,把CAB压缩文件夹集成到右键菜单

[复制链接]
跳转到指定楼层
1#
发表于 2007-7-15 00:25:12 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
经过对老毛桃CAB压缩P处理的研究,现将它集成到右键菜单(仅对文件夹有效)。由于挂接文件右键会导致双击未关联文件时会夺取默认的"打开方式"(网上广为流传的那个CAB注册表文件同样会夺取),所以暂时不挂接到文件右键菜单。
软件组成:
1、mkcab.txt——主P处理程序源代码,单独使用时可以支持单目录拖放。
2、inmkcab.cmd——安装程序。
3、unmkcab.cmd——卸载程序。
总体压缩率在一般情况下比rar最大压缩还高。

==============================
另外一个则是支持多文件、文件夹直接拖放的P处理,最近还没有解决参数在注册表传送的问题,一解决,将把这两个合并

[ 本帖最后由 netwinxp 于 2007-7-27 12:00 PM 编辑 ]

mkmaxcab.rar

1.07 KB, 下载次数: 2866, 下载积分: 无忧币 -2

其实是用自己压缩的CAB文件,居然不能上传@_@改名ing...

dragmkcab.rar

688 Bytes, 下载次数: 2693, 下载积分: 无忧币 -2

全拖放屁处理

2#
 楼主| 发表于 2007-7-15 00:28:37 | 只看该作者
板猪在吗?放错地方了,请帮我转到系统区:L(算了,不移了,反正毛桃的mkcab也在;P )

[ 本帖最后由 netwinxp 于 2007-7-15 12:23 PM 编辑 ]
回复

使用道具 举报

3#
 楼主| 发表于 2007-7-15 00:55:27 | 只看该作者
:D 嘿嘿,本来可以做成只有两个文件的,为了方便大家修改就把主P处理源代码也贴上。:lol

[ 本帖最后由 netwinxp 于 2007-7-16 06:17 PM 编辑 ]
回复

使用道具 举报

4#
 楼主| 发表于 2007-7-15 12:32:17 | 只看该作者
下一个版本将支持多文件夹同时操作,正在调试中....
回复

使用道具 举报

5#
发表于 2007-7-16 09:43:01 | 只看该作者
好 顶一下 好东西不可以不顶
回复

使用道具 举报

6#
发表于 2007-7-18 01:00:34 | 只看该作者
巨好的工具,感谢分享,支持原创。
回复

使用道具 举报

7#
发表于 2007-7-18 01:03:35 | 只看该作者
刚才试了一下,确实很好用,回头再顶。
回复

使用道具 举报

8#
发表于 2007-7-26 00:05:03 | 只看该作者
不错啊,压缩后的文件扩展名改为RAR更好
一些附件上传不支持CAB
回复

使用道具 举报

9#
 楼主| 发表于 2007-7-27 12:01:24 | 只看该作者
现在已经能支持全拖放了,下一步目标整合:)
回复

使用道具 举报

10#
 楼主| 发表于 2007-7-27 16:11:08 | 只看该作者
在DOS联盟论坛贴了第二个批处理,他们认为没有微软原装包的压缩率高,于是俺就做了个测试:
我们以office2000sch原装光盘里面的ofifice1.cab来做测试,原压缩包110M(115,385,377)内含252个文件,解压后210M(220,265,737)共252个文件,重新用上面的压缩后105M(110,611,933)内含252个文件,经解压进行文件对比,完全重合,用新压缩包替换老压缩包安装过程完全没问题。新包比原包少了5M:victory: ,也就是说微软的原装包并不全是最大压缩。
回复

使用道具 举报

11#
 楼主| 发表于 2007-7-27 16:18:13 | 只看该作者
突然发现,下载需要扣威望,于是我把第二个批处理源代码贴出来,对于威望不够的朋友,你只需

把黄框里面的代码复制到记事本,并另存为dragmkcab.cmd即可。下面是源码:
  1. @Echo Off
  2. Title CAB文件夹最大压缩工具—无忧启动
  3. Set Prestr=MAKECAB /v3 /D CompressionType=LZX /D CompressionMemory=21 /D MaxDiskSize=CDROM /D Cabinet=On /D Compress=On
  4. :begin
  5. Set fullname=%~1
  6. Set dirpath=%~dp1
  7. Set srcname=%~n1
  8. if exist "%fullname%" goto is_dir
  9. :is_file
  10. Set Cmdstr=%Prestr% "%fullname%" "%dirpath%%srcname%.CAB"
  11. %Cmdstr%
  12. Set Cmdstr=
  13. shift
  14. Set tmpstr=%1
  15. if not %tmpstr%=="" goto begin
  16. goto end
  17. :is_dir
  18. Set Cmdstr=%Prestr%  /D FolderSizeThreshold=5000000 /D DiskDirectoryTemplate="%dirpath%." /D CabinetNameTemplate="%srcname%.CAB"
  19. Set Tempfile=%TEMP%\mkcabtmp.tmp
  20. If Exist "%Tempfile%" Del "%Tempfile%" >NUL
  21. SETLOCAL ENABLEDELAYEDEXPANSION
  22. For /f "delims=" %%i In ('dir "%fullname%" /s /b /a-d') Do (
  23. Set subname=%%i
  24. Set "subname=!subname:%fullname%\=!"
  25. Echo "%%i" "!subname!">>%Tempfile%
  26. )
  27. ENDLOCAL
  28. %Cmdstr% /F %Tempfile%
  29. Del /F /S /Q "%Tempfile%" SETUP.INF SETUP.RPT >NUL
  30. Set Tempfile=
  31. Set Cmdstr=
  32. shift
  33. Set tmpstr=%1
  34. if not %tmpstr%=="" goto begin
  35. :end
  36. Set tmpstr=
  37. Set srcname=
  38. Set dirpath=
  39. Set fullname=
  40. Set Prestr=
复制代码

附:
Set Prestr=MAKECAB /v3 /D CompressionType=LZX /D CompressionMemory=21 /D MaxDiskSize=CDROM /D Cabinet=On /D Compress=On为一行。
Set Cmdstr=%Prestr%  /D FolderSizeThreshold=5000000 /D DiskDirectoryTemplate="%dirpath%." /D CabinetNameTemplate="%srcname%.CAB"也为一行。

[ 本帖最后由 netwinxp 于 2008-4-27 09:54 PM 编辑 ]
回复

使用道具 举报

12#
 楼主| 发表于 2007-7-27 16:39:28 | 只看该作者
原帖由 阿非 于 2007-7-26 00:05 发表
不错啊,压缩后的文件扩展名改为RAR更好
一些附件上传不支持CAB

你直接把源代码里面的CAB改成RAR就可以了,只不过实际上还是CAB包,压缩率比RAR的最大压缩率还高呢。
回复

使用道具 举报

13#
发表于 2007-7-28 05:51:25 | 只看该作者
原帖由 netwinxp 于 2007-7-27 04:39 PM 发表

你直接把源代码里面的CAB改成RAR就可以了,只不过实际上还是CAB包,压缩率比RAR的最大压缩率还高呢。


这个我知道,建议在附件中修改

另外,全拖放的那个P处理(附件中的),在我的系统中,运行后一闪而过,没有窗口,怎么拖放:lol
回复

使用道具 举报

14#
 楼主| 发表于 2007-7-28 09:02:59 | 只看该作者
原帖由 阿非 于 2007-7-28 05:51 发表


这个我知道,建议在附件中修改

另外,全拖放的那个P处理(附件中的),在我的系统中,运行后一闪而过,没有窗口,怎么拖放:lol

把要压缩的对象拖到P处理身上放开就可以了,一个对象一个包。

拖放.GIF (18.07 KB, 下载次数: 132)

拖放.GIF
回复

使用道具 举报

15#
发表于 2007-7-28 11:39:02 | 只看该作者
原帖由 netwinxp 于 2007-7-28 09:02 AM 发表

把要压缩的对象拖到P处理身上放开就可以了,一个对象一个包。


:L 原来是这样。

赶快完善右键吧,还是这个方便
回复

使用道具 举报

16#
发表于 2007-8-3 10:16:27 | 只看该作者
不错的工具,哈哈,帮你把第一个压缩文件夹的工具改动了一下,变成一个exe文件,自动判断是否已经安装,已安装就跳出卸载,反之则安装。

mkmaxcab.rar

49.71 KB, 下载次数: 451, 下载积分: 无忧币 -2

全自动批处理

回复

使用道具 举报

17#
发表于 2007-8-5 22:12:09 | 只看该作者
先顶一个,然后下载来研究一下
回复

使用道具 举报

18#
发表于 2007-8-5 22:17:39 | 只看该作者
好东西啊...
果然完美-0-

收藏了,谢谢LZ
回复

使用道具 举报

19#
发表于 2007-8-6 08:21:46 | 只看该作者
当来试一试,不知道怎么样
回复

使用道具 举报

20#
发表于 2007-8-21 02:38:34 | 只看该作者
好 顶一下 好东西不可以不顶
回复

使用道具 举报

21#
发表于 2007-8-29 13:23:24 | 只看该作者
安装后不知如何用!!!!!!!!!
回复

使用道具 举报

22#
发表于 2007-8-29 16:09:51 | 只看该作者
安装了,压缩率不错!!!!!!!!
回复

使用道具 举报

23#
发表于 2007-8-30 08:48:56 | 只看该作者
RAR到处发律师函呀                         
回复

使用道具 举报

24#
 楼主| 发表于 2007-8-31 10:01:41 | 只看该作者
原帖由 lisong 于 2007-8-29 13:23 发表
安装后不知如何用!!!!!!!!!

选个文件夹,按鼠标右键就有了:L
回复

使用道具 举报

25#
发表于 2007-8-31 20:58:18 | 只看该作者
给大家发一个我制作的吧。调用CABARC.EXE压缩和解压。支持右键菜单。为什么要用CABARC.EXE呢?因为MAKECAB.EXE压缩文件后老是把文件的时间属性改变。而CABARC.EXE不会。只要是调用MAKECAB.EXE进行压缩操作的程序好像都有这个现象。下面是我自己作的自解压文件。欢迎大家多多交流。怎么上穿不了附件呢。

[ 本帖最后由 wangjf 于 2007-8-31 08:59 PM 编辑 ]

CAB_ExMk.zip

77.1 KB, 下载次数: 490, 下载积分: 无忧币 -2

回复

使用道具 举报

26#
发表于 2007-11-19 21:14:46 | 只看该作者
好东西.不顶不行!!!
回复

使用道具 举报

27#
发表于 2007-12-22 23:56:31 | 只看该作者
原帖由 wangjf 于 2007-8-31 08:58 PM 发表
给大家发一个我制作的吧。调用CABARC.EXE压缩和解压。支持右键菜单。为什么要用CABARC.EXE呢?因为MAKECAB.EXE压缩文件后老是把文件的时间属性改变。而CABARC.EXE不会。只要是调用MAKECAB.EXE进行压缩操作的程序 ...



有图示中的问题

Snap5.gif (108.16 KB, 下载次数: 105)

Snap5.gif
回复

使用道具 举报

28#
发表于 2008-1-13 03:36:00 | 只看该作者
26楼的东西好呀,,,谢谢了
回复

使用道具 举报

29#
发表于 2008-1-13 14:16:09 | 只看该作者
原帖由 nonenever 于 2007-12-22 11:56 PM 发表



有图示中的问题



的确是这样

[ 本帖最后由 wanmm2001 于 2008-1-13 02:20 PM 编辑 ]
回复

使用道具 举报

30#
发表于 2008-1-13 14:16:38 | 只看该作者
楼主和26楼的都是好东西
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋|手机版|Archiver|捐助支持|无忧启动 ( 闽ICP备05002490号-1 )

闽公网安备 35020302032614号

GMT+8, 2025-12-16 14:26

Powered by Discuz! X3.3

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表