文件關(guān)聯(lián)及應(yīng)用—注冊(cè)表使用全攻略之二
更新時(shí)間:2006年10月23日 00:00:00 作者:
注冊(cè)表的文件關(guān)聯(lián)及應(yīng)用—注冊(cè)表使用全攻略之二 喜歡使用Windows右鍵快捷菜單的朋友可能知道,當(dāng)你選擇了一個(gè)文件(或者是文件夾或是系統(tǒng)圖標(biāo))再單擊鼠標(biāo)右鍵,系統(tǒng)就會(huì)彈出一個(gè)菜單,菜單上面的各種“功能”(或稱“操作”)任你選擇,但是你是否注意到,當(dāng)你安裝一些應(yīng)用軟件之后,你的右鍵菜單是不是膨脹,以winzip為例,安裝winzip之后,文件或文件夾的右鍵菜單當(dāng)中就增加了功能選擇項(xiàng)"Add to Zip"和"Add to xxx.zip",如圖一,看到這個(gè)變化,我們不禁要問,這些選擇項(xiàng)是怎么加入的,可不可以自己來添加。帶著這些問題,我們?cè)賮砜碬indows的文件關(guān)聯(lián)。 圖一 什么是文件關(guān)聯(lián)呢?通俗地說,就是選擇不同類型的文件時(shí),在其右鍵菜單上顯示的各功能項(xiàng)。每個(gè)功能項(xiàng)即對(duì)應(yīng)一個(gè)關(guān)聯(lián)。選擇了某一功能(操作),系統(tǒng)就去執(zhí)行相應(yīng)的處理程序。至于對(duì)什么文件的什么操作對(duì)應(yīng)什么樣的處理程序,那都記錄在系統(tǒng)注冊(cè)表中。因此,要真正弄清文件關(guān)聯(lián),必須深入研究注冊(cè)表。這個(gè)問題解決了,我們就可以利用注冊(cè)表隨心所欲地為文件建立,修改,刪除關(guān)聯(lián)。 既然關(guān)聯(lián)信息都寫在注冊(cè)表中,那么它在注冊(cè)表中又是怎樣構(gòu)成的呢?我們不妨打開注冊(cè)表,觀察根鍵HKEY_CLASSES_ROOT之下的各個(gè)主鍵。(這樣或許更易說明這一點(diǎn))你是不是看到了很多前面有一個(gè)點(diǎn)(.),后面好象是文件擴(kuò)展名的主鍵,如圖二所示 圖二 如.bat,.txt,.lnk,.bmp等。我們把這一類的主鍵稱之為“擴(kuò)展名主鍵”,每個(gè)擴(kuò)展名主鍵都有一個(gè)默認(rèn)鍵值。如:主鍵.bat的默認(rèn)值為batfile; .lnk主鍵的默認(rèn)值為lnkfile。舉了這兩個(gè)例子,你是否看出了其中的規(guī)律。即:若“擴(kuò)展名主鍵”名為.xxx(xxx為某一類文件的擴(kuò)展名),那么它的默認(rèn)鍵值就為xxxfile。當(dāng)然并不是所有的默認(rèn)值都是這樣,也可能多個(gè)主鍵對(duì)應(yīng)同一默認(rèn)值。比如:主鍵.jpeg和主鍵.jpg,它們的默認(rèn)值jpgfile;.html和htm的默認(rèn)值都為htmlfile。為什么要說這么多的擴(kuò)展名主鍵的默認(rèn)值呢?其中原因且聽我慢慢道來。這個(gè)默認(rèn)鍵值的作用就非同小可了,它可是文件關(guān)聯(lián)的橋梁和紐帶,是它將文件的類型(以擴(kuò)展名來標(biāo)識(shí)文件類型)與文件的關(guān)聯(lián)聯(lián)系起來。不信,你可以將某一“擴(kuò)展名主鍵”的默認(rèn)鍵值亂改一通,你就會(huì)發(fā)現(xiàn),該類文件的許多關(guān)聯(lián)項(xiàng)在右鍵菜單中消失了。既然這個(gè)重要的默認(rèn)鍵值起了一個(gè)橋梁的作用,那么橋梁的另一端——文件的關(guān)聯(lián)又是如何定義的呢?我們繼續(xù)看注冊(cè)表,讓它來給我們解釋。依然是在HKEY_CLASSES_ROOT根鍵之下。我們可以看到該根鍵之下有如下主鍵。如:batfile,txtfile,lnkfile 等。(如圖三) 圖三 這些主鍵好象都是剛才我們所說的“擴(kuò)展名主鍵”的默認(rèn)值。不錯(cuò),上述默認(rèn)值在此處正好變成了主鍵名——這就是橋梁。我們把這一類的主鍵稱為“標(biāo)識(shí)主鍵”。一般而言,在“標(biāo)識(shí)主鍵”之下有以下幾個(gè)重要主鍵:(如圖四) 如圖四 DefaultIcon主鍵,它的功能是定義該類文件的默認(rèn)圖標(biāo)。
Shell主鍵,它的功能是本文討論的中心——文件關(guān)聯(lián)之“命根”所在。文件的各種關(guān)聯(lián)都寄生在此“根”之下,正是它定義了該類文件與多個(gè)程序相關(guān)聯(lián)。它的默認(rèn)值也很有用,你是否還記得雙擊文件可以將文件打開(對(duì)于已注冊(cè)的文件),這種打開就是利用了系統(tǒng)注冊(cè)表所設(shè)定的默認(rèn)打開方式,即由shell主鍵的默認(rèn)鍵值來控制。它之下的每個(gè)主鍵,都可稱作是“關(guān)聯(lián)主鍵”(如圖四)?!瓣P(guān)聯(lián)主鍵”的鍵名是任意的(建議用英文),它的默認(rèn)鍵值也是我們感興趣的。因?yàn)檫@一默認(rèn)鍵值會(huì)直接顯示在右鍵菜單中,并且每個(gè)“關(guān)聯(lián)主鍵”之下都有一個(gè)command主鍵,這個(gè)主鍵定義的就是“該關(guān)聯(lián)對(duì)應(yīng)的執(zhí)行程序”。如圖五所示,到此文件關(guān)聯(lián)已昭然若揭。 圖五 下面我們就以.reg文件(注冊(cè)表的腳本文件)為例來說明其關(guān)聯(lián)過程。 首先.reg文件在HKEY_CLASSES_ROOT根鍵之下有一個(gè)“擴(kuò)展名主鍵”。.reg其默認(rèn)值為regfile,說明reg類型文件關(guān)聯(lián)的主鍵是regfile。再在該根鍵之下找“標(biāo)識(shí)主鍵”regfile,regfile主鍵之下有一個(gè)DfaultIcon主鍵,作用是定義reg文件的默認(rèn)圖標(biāo)。其默認(rèn)鍵就是圖標(biāo)的全路徑文件名。如: C:\windows\regedit.exe,1(表示的是regedit.exe中的第2個(gè)圖標(biāo))。regfile主鍵之下還有一個(gè)上文稱之為“命根”的主鍵shell,reg文件的關(guān)聯(lián)就記錄在shell之中。下面我們就為regt建立一個(gè)關(guān)聯(lián)。步驟為:在shell主鍵之下,新建主鍵xxf(名任意),置其默認(rèn)值為:“徐喜峰的文本編輯器”,再在xxf主鍵之下新建主鍵command,置其默認(rèn)值為C:\Windows\Notepad.exe %1,該默認(rèn)值的意義為:用記事本來打開當(dāng)前reg文件。若沒有%1參數(shù),則只運(yùn)行記事本程序,而不打開當(dāng)前文件。設(shè)置完畢,你再看看reg文件的“右鍵菜單”,是不是多了一個(gè)“徐喜峰的文本編輯器”選項(xiàng)(如圖六),爽吧!~
圖六 以上所說的只是作用于普通文件的關(guān)聯(lián),然而在Windows中,除了文件,還有文件夾及特殊的文檔(如我的電腦,驅(qū)動(dòng)器,回收站等)。那么這些又該如何設(shè)置關(guān)聯(lián)呢?那就請(qǐng)大家記住在HKEY_CLASSES_ROOT根鍵之下還有以下幾個(gè)重要的系統(tǒng)關(guān)聯(lián)主鍵: *:作用于所有文件,它與“標(biāo)識(shí)主鍵”的關(guān)聯(lián)方法一樣。
Directory:作用于一般文件夾。
Folder:作用于所有文件夾,包括特殊文件,如:控制面板,回收站等。
Drive:作用于驅(qū)動(dòng)器,如A驅(qū),B驅(qū),C驅(qū)。
Unknow:作用于系統(tǒng)不能識(shí)別的文件類型,即沒有注冊(cè)的文件類型。 最基本的文件關(guān)聯(lián)就談到此處,下面來看看文件關(guān)聯(lián)的應(yīng)用。 應(yīng)用之一:讓MS-DOS方式無處不在。 經(jīng)常用到DOS方式的朋友可能有些厭煩,因?yàn)槊看芜M(jìn)入DOS方式,都要選擇“開始\程序\MS-DOS方式”。利用文件關(guān)聯(lián),我們可以將MS-DOS方式添加到任何文件的“右鍵菜單”中,這樣就省事多了,方法為:
將注冊(cè)表展開到HKEY_CLASSES_ROOT\*\shell分支。(在所有文件的“右鍵菜單”中添加MS-DOS方式)新建主鍵“MS-DOS",置其默認(rèn)值為“進(jìn)入MS-DOS方式”,在MS-DOS主鍵之下新建command主鍵,置其默認(rèn)值為:“C:\Windows\command.com”。
另注冊(cè)表展開到HKEY_CLASSES_ROOT\Folder\shell分支,(在所有文件夾的“右鍵菜單”中添加MS-DOS方式)設(shè)置同上。 應(yīng)用之二:隱去快捷方式圖標(biāo)中的小箭頭。 如果你覺得快捷方式圖標(biāo)中的小箭頭有點(diǎn)障眼,那么利用關(guān)聯(lián),可以將之去掉,將注冊(cè)表展開到HKEY_CLASSES_ROOT\lnkfile分支,將lnkfile主鍵之下的鍵值Isshortcut刪除,再將注冊(cè)表展開到HKEY_CLASSES_ROOT\piffile分支,將piffile主鍵之下的鍵值Isshortcut刪除,即大功告成。 應(yīng)用之三:用記事本來編輯bat文件。 有時(shí)想編輯bat文件,而習(xí)慣性地雙擊它,這一雙擊,并沒有將它打開編輯,而是將它執(zhí)行,讓人甚為惱火。利用注冊(cè)表的文件關(guān)聯(lián),可以將之改變。將注冊(cè)表展開到HKEY_CLASSES_ROOT\batfile\shell分支,將shell主鍵的默認(rèn)值由open改為edit即可。 應(yīng)用之四:更改某類文件的默認(rèn)圖標(biāo)。 以txt文件為例,將txt文件的圖標(biāo)改為“我的電腦”的圖標(biāo)。將注冊(cè)表展開到HKEY_CLASSES_ROOT\txtfile\DefaultIcon分支,將主鍵DefautIcon的默認(rèn)鍵值改為:"C:\Windows\explorer.exe,0" 即可。 應(yīng)用之五:為所有文件增加“打開方式”。 將注冊(cè)表展開到HKEY_CLASSES_ROOT\*\shell分支,新建主鍵open_as,置其默認(rèn)值為“選擇打開方式”,在Open_As主鍵之下新建主鍵command,置其默認(rèn)值為:"C:Windows\rundll32.exe shell32.dll , openAs_RunDll %1" 應(yīng)用之六:將“關(guān)機(jī)”加入到右鍵菜單。 將注冊(cè)表展開到HEKY_CLASSES_ROOT\Directory\shell分支,新建主鍵close,置其默認(rèn)值為“關(guān)閉系統(tǒng)”,再在close主鍵之下,新建主鍵command,置其默認(rèn)值為:"C:\Windows\rundll32.exe user.exe, exitwindows" 以上六例應(yīng)用,總體上能夠概述文件關(guān)聯(lián)的基本結(jié)構(gòu)和基本框架,弄清了文件關(guān)聯(lián)的結(jié)構(gòu)與框架,自己再增加關(guān)聯(lián)就是小菜一碟了。只要你有興趣,你可以將你的右鍵菜單加得滿滿的。如果你想了解更深一層次的文件關(guān)聯(lián),那就請(qǐng)你參閱有關(guān)windows注冊(cè)表方面的書籍與資料,或與我聯(lián)系,我的Email是amen.twty@china.net。在文章結(jié)束之前,還告訴大家一點(diǎn)小小的訣竅:那就是注冊(cè)表在作過修改之后,很多場合需要重新啟動(dòng)才能生效。這里我告訴大家一個(gè)不需要重啟但又能快速更改注冊(cè)表的方法:選擇“開始\關(guān)閉系統(tǒng)”,在彈出“關(guān)閉系統(tǒng)”框之后,按Ctrl+Alt+Del 組合鍵,出現(xiàn)“結(jié)束任務(wù)”框,選擇其中的“Explorer”,再單擊“結(jié)束任務(wù)”,等待一會(huì)兒(10秒左右),就會(huì)出現(xiàn)一個(gè)“結(jié)束任務(wù)”確認(rèn)框,點(diǎn)擊“結(jié)束任務(wù)”按鈕即可。(出處:viphot)
相關(guān)文章
被惡意網(wǎng)站擊中的解決辦法——注冊(cè)表使用全攻略之六
被惡意網(wǎng)站擊中的解決辦法——注冊(cè)表使用全攻略之六...2006-10-10巧用注冊(cè)表輕松修改Win 2k/XP的默認(rèn)刷新率
巧用注冊(cè)表輕松修改Win 2k/XP的默認(rèn)刷新率...2006-10-10我教你學(xué)之系統(tǒng)性能優(yōu)化注冊(cè)表修改實(shí)例(1)
我教你學(xué)之系統(tǒng)性能優(yōu)化注冊(cè)表修改實(shí)例(1)...2006-10-10一個(gè)匹配重復(fù)字符正規(guī)表達(dá)式
一個(gè)匹配重復(fù)字符正規(guī)表達(dá)式...2007-01-01