扫一扫
分享文章到微信
扫一扫
关注官方公众号
至顶头条
作者:右键 来源:右键 2007年11月27日
关键字: 右鍵 WinRAR Windows Windows xp
当你需要压缩或是解压文件时,你会通过何种方式来完成呢?相信几乎所有的人都会说“使用右键菜单”,相信用WinRAR的就没有不和右键菜单打交道的,可是你在使用时有没有发现,在进行某些常用的操作时,WinRAR的右键菜单还是有些不方便,那么我们如何修改呢?来看看下面的介绍吧。
芝麻开门
Windows的右键菜单
WinRAR的右键菜单是大家最常用的功能,可能很多朋友还不知道其实这个菜单是由注册表来定义的,为什么右击不同的文件,Windows的菜单就会不同呢?Windows是如何判断的呢?其实很简单。
Step 1:打开注册表编辑器。找到[HKEY_CLASSES_ROOT]项,在此项的前半部分以“.”开头的(如“.avi”、“.bmp”等)项目,包含了你电脑中所有支持的扩展名。
Step 2:选中任意以“.”开头的文件,在窗口右侧“默认”的“数据”项下就是此类扩展名文件对应的一个注册表“项”,此项是可以在[HKEY_CLASSES_ROOT]项下找到的(见图1)(图1 比如点击“.rar”后,我们就会在“默认”的“数据”项下看到“WinRAR”,在[HKEY_CLASSES_ROOT]项下我们是可以找到“WinRAR”项的)。
Step 3:找到Step 2中对应的数据项,展开后,可以看到“shell”项,该项下面就是我们的右键菜单。一般默认已经有了一个“open”项(即几乎每类文件都会有的“打开”项),在它下面有一个“command”子项,该项表示点击“打开”后所运行的操作。我们下面操作也是针对它们来完成的。另外需要特别注意的是[HKEY_CLASSES_ROOT\*]项,下定义了右键菜单中的公共项目,即不管右击何种文件,都会显示的项目,比如WinRAR的右键菜单就是在此定义的。
小提示
★多级菜单是如何建立的呢?
如果需要建立多级菜单,则需要使用DLL文件,比如像WinRAR的多级菜单,其实是通过注册表调用RarExt.dll来实现的。
★在[HKEY_CLASSES_ROOT\Folder\shell]项下,可以自定义文件夹的右键菜单。
下面我们就开始对WinRAR进行改造,让它变得更为完美。
1.更酷的解压缩到上一级文件夹
在本刊第10期的《潜入压缩包的内部——文件压缩高手速成班》一文中,我们学会了为WinRAR的右键菜单添加“解压缩到上一级文件夹”的方法,但该方法有个不太舒服的地方——不管右击何种文件,该选项都会在右键菜单中出现,这里为大家介绍另外一种方法,只有当选中的文件是RAR或ZIP文件时才会出现。
Step 1:打开注册表编辑器,找到[HKEY_CLASSES_ROOT\WinRAR\shell],在“Shell”项上右击,选择“新建→项”,并将其命名为“解压到上一层文件夹”,然后在其下再新建“command”子项,这时双击右侧窗格的“(默认)”,在“数值数据”中填入“"C:\Program Files\WinRAR\Winrar.exe" x -o- -ibck -ILOGrar.log -y "%1" ..\”(不含外侧引号)。注意此处的"C:\Program Files\WinRAR\Winrar.exe"要根据你电脑中的WinRAR安装文件夹进行改变。
Step 2:找到[HKEY_CLASSES_ROOT\WinRAR.ZIP\shell],用Step 1的方法建立同样的项并修改“默认”的值即可。
现在右击RAR格式及ZIP的压缩包就可以看到需要的“解压到上一层文件夹”选项了,而对于其他格式的文件,则不会出现此项。
小提示
“解压到上一层文件夹”做了些什么?
x:用绝对路径解压文件。
-o-:不覆盖已存在文件。
-ibck:后台工作。
-ILOGrar.log:把错误写到日志文件,但只有注册版本可用。
-y:对全部询问都回答是。
"%1":当前选中的文件。
..\:表示上一级目录。
将这些参数整合到一起相信大家已经知道是“解压到上一层文件夹”都做了些什么了。
2.压缩、自解压轻松转换
EXE格式的自解压文件是每个菜鸟都喜欢的一种格式,但我们从网上下载的文件大都是RAR格式,需要进行转换才能保存,对于这种情况我们需要手动转换,但这样比较麻烦,其实同样也可以使用右键菜单来解决问题。
Step 1:打开注册表编辑器,在[HKEY_CLASSES_ROOT\WinRAR\shell]及[HKEY_CLASSES_ROOT\WinRAR.ZIP\shel]下新建“转换为自解压文件”项,然后在其下建立“command”子项,接着在窗口右侧修改“(默认)”的数值为“"C:\Program Files\WinRAR\Winrar.exe" s -ibck -y "%1"”(不含外侧的引号)。
Step 2:在[HKEY_CLASSES_ROOT\exefile\shell]下新建“转换为压缩文件”项,然后在其下建立“command”子项,接着窗口右侧修改“(默认)”的数值为“"C:\Program Files\WinRAR\Winrar.exe" s- -ibck -y "%1"”(不含外侧的引号)。
现在右击RAR或ZIP文件,就可以直接将其转换为自解压文件了,右击EXE文件,就可以直接将其转换为压缩文件。
小提示
“转换为自解压文件”及“转换为压缩文件”做了些什么?
这里用到了两个新参数——s及s-,在WinRAR里s表示“转换压缩文件为自解压格式”,而s-表示“转换回压缩文件”。
如果您非常迫切的想了解IT领域最新产品与技术信息,那么订阅至顶网技术邮件将是您的最佳途径之一。
现场直击|2021世界人工智能大会
直击5G创新地带,就在2021MWC上海
5G已至 转型当时——服务提供商如何把握转型的绝佳时机
寻找自己的Flag
华为开发者大会2020(Cloud)- 科技行者