【参加讨论】 当你需要压缩或是解压文件时,你会通过何种方式来完成呢?相信几乎所有的人都会说“使用右键菜单”,相信用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.更酷的解压缩到上一级文件夹
在《潜入压缩包的内部——文件压缩高手速成班》一文中,我们学会了为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格式,需要进行转换才能保存,对于这种情况我们需要手动转换,但这样比较麻烦,其实同样也可以使用右键菜单来解决问题。