DOS下對(duì)注冊(cè)表的編程的方法
在DOS方式下也能對(duì)注冊(cè)表進(jìn)行編程?是的。當(dāng)您的Windows95/98因注冊(cè)表問(wèn)題而無(wú)法啟動(dòng)到圖形界面時(shí),您此時(shí)只有在DOS下對(duì)注冊(cè)表進(jìn)行手術(shù)了。因?yàn)樽?cè)表編輯器Regedit.exe其實(shí)是一個(gè)雙棲型的程序,既可在DOS下運(yùn)行,也可在Windows95/98下運(yùn)行。許多用戶可能已經(jīng)知道在Windows下使用Regedit的方法,那么,要掌握DOS方式下對(duì)注冊(cè)表的編程,首先要了解在DOS下如何使用注冊(cè)表編輯器。
在DOS提示符下鍵入Regedit命令,將出現(xiàn)一個(gè)幫助屏幕。此屏幕給出了其命令行參數(shù)及其使用方法。
語(yǔ)法:
Regedit [/L:system] [/R:user] filename1
Regedit [/L:system] [/R:user] /C filename2
Regedit [/L:system] [/R:user] /E filename3 [regpath]
其中:
/L:system 指定system.dat文件的存放位置。
/R:user 指定user.dat文件的存放位置。
filename1 指定引入注冊(cè)表數(shù)據(jù)庫(kù)的文件名。
/C filename2 指定形成注冊(cè)表數(shù)據(jù)庫(kù)的文件名。
/E filename3 指定導(dǎo)出注冊(cè)表文件的文件名。
regpath 指定導(dǎo)出注冊(cè)表文件的開(kāi)始關(guān)鍵字(缺省為全部關(guān)鍵字)
現(xiàn)舉幾個(gè)例子說(shuō)明regedit.exe在DOS下的使用方法。
【例1】 將系統(tǒng)注冊(cè)表數(shù)據(jù)庫(kù)registry導(dǎo)出到reg1.reg文件中。
regedit /E reg1.reg
【例2】 reg1.reg形成系統(tǒng)注冊(cè)表數(shù)據(jù)庫(kù)registry(全部)中。
regedit /C reg1.reg
【例3】 將reg.dat引入系統(tǒng)注冊(cè)表數(shù)據(jù)庫(kù)中(部分)。
regedit reg.dat
【例4】 將CJH開(kāi)始的關(guān)鍵字導(dǎo)出注冊(cè)表數(shù)據(jù)庫(kù),并命名為cjh.reg。
regedit /E cjh.reg cjh
【例5】 指定system/dat存放在D:\PWIN中和user.dat存放在E:\PWIN中,將reg.dat數(shù)據(jù)文件形成一個(gè)新的注冊(cè)表數(shù)據(jù)庫(kù)registry。
regedit /L:D:\PWIN /R:E:\PWIN /C reg.dat
有了以上這些知識(shí),結(jié)合在《對(duì)注冊(cè)表進(jìn)行編程的“捷徑”》里講過(guò)的關(guān)于導(dǎo)入或?qū)С龅淖?cè)表文件(*.REG),我們就可以在DOS方式下對(duì)注冊(cè)表進(jìn)行編程了。
我們還是以更改“*.txt”文件的默認(rèn)打開(kāi)方式——“記事本”為“寫(xiě)字板”為例。首先在MS-DOS提示符下導(dǎo)出“HKEY_CLASSES_ROOT\txtfile”子鍵這一分支,即執(zhí)行命令:
regedit /E txt.reg HKEY_CLASSES_ROOT\txtfile
然后用DOS下的EDIT編輯器打開(kāi)txt.reg文件進(jìn)行編輯:將其中所有的“C:\\WINDOWS\\NOTEPAD.EXE”全部改成“C:\\WINDOWS\\WRITE.EXE”,存盤(pán)退出EDIT,再在命令行下執(zhí)行命令:
regedit txt.reg
便大功告成了。
當(dāng)然,嚴(yán)格來(lái)說(shuō),這并不是編程。如果一定要編程實(shí)現(xiàn)的話,我們可以將以上過(guò)程寫(xiě)成一批處理文件chang.bat:
? ?@echo?off ???path=c:\windows;c:\windows\command;c:\dos ???cls ???echo?正在導(dǎo)出注冊(cè)表…… regedit?/E?txt.reg?HKEY_CLASSES_ROOT\txtfile ???echo. ???echo?注冊(cè)表導(dǎo)出完畢!按任一鍵開(kāi)始編輯注冊(cè)表…… ???echo. ???pause ???edit?txt.reg ???echo?正在將修改后的注冊(cè)表導(dǎo)入…… ???regedit?txt.reg ???echo?恭喜您!在MS-DOS方式下成功修改了注冊(cè)表! ???pause ???cls ???@echo?on
充分發(fā)揮EDIT編輯器的強(qiáng)大功能,我們可以在遵循導(dǎo)出的注冊(cè)表文件的格式的前提下,對(duì)注冊(cè)表進(jìn)行隨心所欲的修改、刪除或者增加任一子鍵。如果覺(jué)得這還不夠程序化,您可以發(fā)揮DOS環(huán)境下各種程序設(shè)計(jì)語(yǔ)言的優(yōu)勢(shì),加上交互性的界面,將這一過(guò)程真正的程序化,應(yīng)該絲毫不亞于Windows狀態(tài)下的利用API函數(shù)做出來(lái)的效果。有興趣的朋友可以試一試。
相關(guān)文章
斷開(kāi)網(wǎng)絡(luò)聯(lián)結(jié)的bat文件
斷開(kāi)網(wǎng)絡(luò)聯(lián)結(jié)的bat文件...2007-08-08批處理將字符串或日期輸出到Windows剪貼板的實(shí)現(xiàn)方法
這篇文章主要介紹了批處理將字符串或日期輸出到Windows剪貼板的實(shí)現(xiàn)方法,主要是借助系統(tǒng)自帶的clip.exe,這里為大家介紹一下,需要的朋友可以參考下2020-08-08批處理入門(mén)手冊(cè)之批處理常用DOS命令篇(find findstr)
這篇文章主要介紹了批處理入門(mén)手冊(cè)之批處理常用DOS命令篇(find findstr),需要的朋友可以參考下2016-11-11用批處理實(shí)現(xiàn)的刪除特定時(shí)間以前的文件
這篇文章主要為大家介紹一下用批處理實(shí)現(xiàn)的刪除特定時(shí)間以前的文件的實(shí)現(xiàn)代碼,需要的朋友可以參考一下。2007-03-03