Step 3:找到Step 2中對應的數據項,展開後,可以看到“shell”項,該項下面就是我們的右鍵菜單。一般默認已經有了一個“open”項(即幾乎每類文件都會有的“打開”項),在它下面有一個“command”子項,該項表示點擊“打開”後所運行的操作。我們下面操作也是針對它們來完成的。另外需要特別注意的是 [HKEY_CLASSES_ROOT\*]項,下定義了右鍵菜單中的公共項目,即不管右擊何種文件,都會顯示的項目,比如WinRAR的右鍵菜單就是在此定義的。
小提示
★多級菜單是如何建立的呢?
如果需要建立多級菜單,則需要使用DLL文件,比如像WinRAR的多級菜單,其實是通過注冊表調用RarExt.dll來實現的。
★在[HKEY_CLASSES_ROOT\Folder\shell]項下,可以自定義文件夾的右鍵菜單。
下面我們就開始對WinRAR進行改造,讓它變得更為完美。
1.更酷的解壓縮到上一級文件夾 中國公務網 2006-5-8 0:27:52
在本刊第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-表示“轉換回壓縮文件”。
3.所有文件 一次解壓
很多朋友從網上下載數據或是軟件後,都會把它們放到不同的文件夾下。當想解壓縮這些數據時,還需要進入每個文件夾,然後再解壓縮,非常麻煩。其實可以制作一個“解壓所有文件”項,用它來解壓縮某文件夾下的所有文件。
打開注冊表編輯器,在[HKEY_CLASSES_ROOT\Folder\shell]項下新建“解壓所有文件”項,在其下再建立“command” 子項,接著在窗口右側修改“(默認)”的數值為“C:\Program files\winrar\WinRAR.exe x -o- -cfg- -ibck -ILOGrar.log -y %1\*.* %1\”(不含外側的引號)。
小提示
★如果將命令最後的%1\改為%1\..\則可將所有的文件解壓至當前的文件夾中。
★用這種方法會解壓縮所有的文件,包括RAR、ZIP、ISO、EXE格式的自解壓縮包等。
現在右擊包含有壓縮文件的文件夾,選擇“解壓所有文件”項,就可以將所有的壓縮文件一些解壓了。
小提示
“解壓所有文件”做了些什麼?
-cfg-:禁用讀取配置。
%1\*.*:表示當前所選文件夾下所有的文件。
%1\:當前所選文件夾。
4.壓縮文件N合一
包括小特、Cornel等在內的小編們都希望WinRAR增加一個合並多個壓縮文件的功能,其實我們完全可以自己DIY,通過兩個菜單項來完成這個操作,一個用於解壓縮,一個用於合並,這樣的好處是,你可以在任意文件夾下完成合並操作,從而省去了拷貝的操作。
Step 1:打開注冊表編輯器,在[HKEY_CLASSES_ROOT\*\shell]下新建“1.合並-解”項,然後在其下建立“command”子項,接著在窗口右側修改“(默認)”的數值為“C:\Program files\winrar\WinRAR.exe x -ibck -ILOGrar.log -y %1 c:\temp”(不含外側的引號)。
Step 2:在[HKEY_CLASSES_ROOT\*\shell]下新建“2.合並-合”項,然後在其下建立“command”子項,接著在窗口右側修改 “(默認)”的數值為“C:\Program files\Winrar\WinRAR.exe a -r -df -cfg- -ibck 合並後 c:\temp\*.*”(不含外側的引號)。
Step 3:經過上面操作後,當需要合並壓縮文件時,只要先選中並右擊需要合並的文件,選擇“1.合並-解”,解壓縮完成後,進入需要保存該文件的目錄,右擊任意文件,選擇“2.合並-合”即可。合並後的文件名為“合並後.RAR” 中國公務網 2006-5-8 0:27:52
小提示
WinRAR是如何實現合並的?
a:添加文件到壓縮文件。
-r:遞歸子目錄。
-df:壓縮後刪除文件。
5.注釋文件快速添加
看過了2004年第3期的《解讀最昂貴的字符串——注冊碼全攻略》一文,大家一定會還記得保存注冊碼的方法之一就是放到WinRAR的注釋項中,那麼我們同樣也是可以將這個功能添加到右鍵菜單上的。
Step 1:打開注冊表編輯器,在[HKEY_CLASSES_ROOT\WinRAR\shell]下新建“添加注釋”項,然後在其下新建“command”子項,接著在窗口右側修改“(默認)”的數值為“C:\Program files\Winrar\rar.exe c %1”(不含外側引號)。
Step 2:找到[HKEY_CLASSES_ROOT\WinRAR.ZIP\shell],用Step 1的方法建立同樣的項並修改“默認”的值即可。
Step 3:現在打開“資源管理器”,右擊需要添加注釋的壓縮文件(RAR或ZIP格式),選擇“添加注釋”項,然後可按如圖2所示方法添加注釋即可(見圖2 RAR壓縮文件的最大注釋長度為62000字節(31000個漢字),而ZIP壓縮文件則為32768字節(16384個漢字))。
6.快速壓縮指定文件
不知你是不是經常需要壓縮一個文件夾下的指定文件,比如僅壓縮某文件夾下的TXT文件,而去除如JPG、BMP等圖片文件進行壓縮,這麼常用的功能自然也要集成到右鍵菜單中。
打開注冊表編輯器,在[HKEY_CLASSES_ROOT\Folder\shell]下新建“提取TXT文件”項,然後在其下新建 “command”子項,接著在窗口右側修改“(默認)”的數值為“C:\Program files\WinRAR\Winrar.exe a -r -ep %1 %1\*.txt”(不含外側引號)。這樣以後只要右擊需要提取文件的文件夾,然後選擇“提取TXT文件”項即可把該目錄下的所有TXT文件都提取出來。這裡的-ep表示去除路徑壓縮,這樣以便收藏。
小編有話說:WinRAR還有很多功能,你只要把以前命令行的一些操作放到注冊表中就可以了,如果你有什麼好想法,也歡迎和小特交流,讓我們一起定制WinRAR的最強菜單^O^。