倍可親

回復: 0
列印 上一主題 下一主題

WinRAR不可思議之右鍵補完計劃

[複製鏈接]

1萬

主題

1萬

帖子

1萬

積分

八級貝殼核心

倍可親終生會員(廿一級)

Rank: 5Rank: 5

積分
18033
跳轉到指定樓層
樓主
kent 發表於 2006-8-14 12:15 | 只看該作者 回帖獎勵 |倒序瀏覽 |閱讀模式
當你需要壓縮或是解壓文件時,你會通過何種方式來完成呢?相信幾乎所有的人都會說「使用右鍵菜單」,相信用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_ROOTFoldershell]項下,可以自定義文件夾的右鍵菜單。

  下面我們就開始對WinRAR進行改造,讓它變得更為完美。

  1.更酷的解壓縮到上一級文件夾     

  在《潛入壓縮包的內部——文件壓縮高手速成班》一文中,我們學會了為WinRAR的右鍵菜單添加「解壓縮到上一級文件夾」的方法,但該方法有個不太舒服的地方——不管右擊何種文件,該選項都會在右鍵菜單中出現,這裡為大家介紹另外一種方法,只有當選中的文件是RAR或ZIP文件時才會出現。

  Step 1:打開註冊表編輯器,找到[HKEY_CLASSES_ROOTWinRARshell],在「Shell」項上右擊,選擇「新建→項」,並將其命名為「解壓到上一層文件夾」,然後在其下再新建「command」子項,這時雙擊右側窗格的「(默認)」,在「數值數據」中填入「"Crogram FilesWinRARWinrar.exe" x -o- -ibck -ILOGrar.log -y "%1" ..」(不含外側引號)。注意此處的"Crogram FilesWinRARWinrar.exe"要根據你電腦中的WinRAR安裝文件夾進行改變。

  Step 2:找到[HKEY_CLASSES_ROOTWinRAR.ZIPshell],用Step 1的方法建立同樣的項並修改「默認」的值即可。     

  現在右擊RAR格式及ZIP的壓縮包就可以看到需要的「解壓到上一層文件夾」選項了,而對於其他格式的文件,則不會出現此項。    

  小提示     

  「解壓到上一層文件夾」做了些什麼?     

  x:用絕對路徑解壓文件。     

  -o-:不覆蓋已存在文件。     

  -ibck:後台工作。     

  -ILOGrar.log:把錯誤寫到日誌文件,但只有註冊版本可用。

  -y:對全部詢問都回答是。     

  "%1":當前選中的文件。     

  ..:表示上一級目錄。     

  將這些參數整合到一起相信大家已經知道是「解壓到上一層文件夾」都做了些什麼了。

2.壓縮、自解壓輕鬆轉換     

  EXE格式的自解壓文件是每個菜鳥都喜歡的一種格式,但我們從網上下載的文件大都是RAR格式,需要進行轉換才能保存,對於這種情況我們需要手動轉換,但這樣比較麻煩,其實同樣也可以使用右鍵菜單來解決問題。

  Step 1:打開註冊表編輯器,在[HKEY_CLASSES_ROOTWinRARshell]及[HKEY_CLASSES_ROOTWinRAR.ZIPshel]下新建「轉換為自解壓文件」項,然後在其下建立「command」子項,接著在窗口右側修改「(默認)」的數值為「"Crogram FilesWinRARWinrar.exe" s -ibck -y "%1"」(不含外側的引號)。     

  Step 2:在[HKEY_CLASSES_ROOTexefileshell]下新建「轉換為壓縮文件」項,然後在其下建立「command」子項,接著窗口右側修改「(默認)」的數值為「"C:Program FilesWinRARWinrar.exe" s- -ibck -y "%1"」(不含外側的引號)。     

  現在右擊RAR或ZIP文件,就可以直接將其轉換為自解壓文件了,右擊EXE文件,就可以直接將其轉換為壓縮文件。  

  小提示     

  「轉換為自解壓文件」及「轉換為壓縮文件」做了些什麼?     

  這裡用到了兩個新參數——s及s-,在WinRAR里s表示「轉換壓縮文件為自解壓格式」,而s-表示「轉換回壓縮文件」。     
  3.所有文件 一次解壓     

  很多朋友從網上下載數據或是軟體后,都會把它們放到不同的文件夾下。當想解壓縮這些數據時,還需要進入每個文件夾,然後再解壓縮,非常麻煩。其實可以製作一個「解壓所有文件」項,用它來解壓縮某文件夾下的所有文件。     

  打開註冊表編輯器,在[HKEY_CLASSES_ROOTFoldershell]項下新建「解壓所有文件」項,在其下再建立「command」子項,接著在窗口右側修改「(默認)」的數值為「"C:Program fileswinrarWinRAR.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 fileswinrarWinRAR.exe" x -ibck -ILOGrar.log -y "%1" c: emp」(不含外側的引號)。     

  Step 2:在[HKEY_CLASSES_ROOT*shell]下新建「2.合併-合」項,然後在其下建立「command」子項,接著在窗口右側修改「(默認)」的數值為「"C:Program filesWinrarWinRAR.exe" a -r -df -cfg- -ibck 合併后 c: emp*.*」(不含外側的引號)。     

  Step 3:經過上面操作后,當需要合併壓縮文件時,只要先選中並右擊需要合併的文件,選擇「1.合併-解」,解壓縮完成後,進入需要保存該文件的目錄,右擊任意文件,選擇「2.合併-合」即可。合併后的文件名為「合併后.RAR」     

  小提示     

  WinRAR是如何實現合併的?     

  a:添加文件到壓縮文件。     

  -r:遞歸子目錄。     

  -df:壓縮后刪除文件。       

5.註釋文件快速添加

  看過了《解讀最昂貴的字元串——註冊碼全攻略》一文,大家一定會還記得保存註冊碼的方法之一就是放到WinRAR的註釋項中,那麼我們同樣也是可以將這個功能添加到右鍵菜單上的。

  Step 1:打開註冊表編輯器,在[HKEY_CLASSES_ROOTWinRARshell]下新建「添加註釋」項,然後在其下新建「command」子項,接著在窗口右側修改「(默認)」的數值為「"C:Program filesWinrar ar.exe" c "%1"」(不含外側引號)。     

  Step 2:找到[HKEY_CLASSES_ROOTWinRAR.ZIPshell],用Step 1的方法建立同樣的項並修改「默認」的值即可。     

  Step 3:現在打開「資源管理器」,右擊需要添加註釋的壓縮文件(RAR或ZIP格式),選擇「添加註釋」項,然後可添加註釋即可(RAR壓縮文件的最大註釋長度為62000位元組(31000個漢字),而ZIP壓縮文件則為32768位元組(16384個漢字))。

   6.快速壓縮指定文件     

  不知你是不是經常需要壓縮一個文件夾下的指定文件,比如僅壓縮某文件夾下的TXT文件,而去除如JPG、BMP等圖片文件進行壓縮,這麼常用的功能自然也要集成到右鍵菜單中。     

  打開註冊表編輯器,在[HKEY_CLASSES_ROOTFoldershell]下新建「提取TXT文件」項,然後在其下新建「command」子項,接著在窗口右側修改「(默認)」的數值為「"C:Program filesWinRARWinrar.exe" a -r -ep "%1" "%1*.txt"」(不含外側引號)。這樣以後只要右擊需要提取文件的文件夾,然後選擇「提取TXT文件」項即可把該目錄下的所有TXT文件都提取出來。這裡的-ep表示去除路徑壓縮,這樣以便收藏。     

  小編有話說:WinRAR還有很多功能,你只要把以前命令行的一些操作放到註冊表中就可以了,如果你有什麼好想法,也歡迎和小編交流,讓我們一起定製WinRAR的最強菜單^O^。 
您需要登錄后才可以回帖 登錄 | 註冊

本版積分規則

關於本站 | 隱私權政策 | 免責條款 | 版權聲明 | 聯絡我們

Copyright © 2001-2013 海外華人中文門戶:倍可親 (http://big5.backchina.com) All Rights Reserved.

程序系統基於 Discuz! X3.1 商業版 優化 Discuz! © 2001-2013 Comsenz Inc.

本站時間採用京港台時間 GMT+8, 2025-8-19 01:39

快速回復 返回頂部 返回列表