監(jiān)理公司管理系統(tǒng) | 工程企業(yè)管理系統(tǒng) | OA系統(tǒng) | ERP系統(tǒng) | 造價(jià)咨詢管理系統(tǒng) | 工程設(shè)計(jì)管理系統(tǒng) | 簽約案例 | 購(gòu)買價(jià)格 | 在線試用 | 手機(jī)APP | 產(chǎn)品資料
X 關(guān)閉

Windows偽優(yōu)化技巧

申請(qǐng)免費(fèi)試用、咨詢電話:400-8352-114

文章來(lái)源:泛普軟件 在Windows中,幾乎所有應(yīng)用程序都會(huì)用到DLL(動(dòng)態(tài)鏈接庫(kù))文件,它的正常與否關(guān)系到軟件能否正常運(yùn)行。很多軟件故障也和它有直接關(guān)系。但應(yīng)用程序往往會(huì)調(diào)用幾十個(gè)DLL程序,怎么判斷誰(shuí)是“罪魁禍?zhǔn)住蹦?

 

案例回放:在一次非法操作后,Windows XP“搜索助理”變成一張“白板”,不僅如此,“控制面板”中“用戶賬戶”項(xiàng)也顯得“面無(wú)表情”。點(diǎn)擊“開(kāi)始→幫助和支持”,鼠標(biāo)一陣閃爍卻始終不見(jiàn)“幫助和支持”程序界面的蹤影。

 

案例分析:憑感覺(jué),筆者認(rèn)為系統(tǒng)中的某個(gè)DLL文件已經(jīng)注銷、丟失或損壞。但Windows中幾乎每個(gè)程序都要調(diào)用成十上百個(gè)DLL文件,如果按常規(guī)方法一個(gè)個(gè)尋找分析,無(wú)異于大海撈針??紤]到三個(gè)程序同時(shí)“毀容”,應(yīng)該是受同一個(gè)(或幾個(gè))DLL文件的影響。為此必須找到上述這三個(gè)程序共同使用的DLL文件,然后,從中找出“幕后真兇”。

 

查找與比對(duì)

 

第一步:先從“搜索助理”入手,先弄清其“身世來(lái)歷”。在另外一臺(tái)裝有Windows XP的機(jī)子中打開(kāi)“搜索助理”,同時(shí)按Ctrl+Alt+Del鍵調(diào)出“任務(wù)管理器”,在“應(yīng)用程序”選項(xiàng)卡中,選中“搜索助理”并右擊,選擇“轉(zhuǎn)到進(jìn)程”,呵呵,原來(lái)它是Explorer.exe(資源管理器)的一部分。

 

第二步:用類似方法可得知“幫助和支持”屬于進(jìn)程Helpctr.exe,但在“用戶賬戶”中只能用觀察比較的方法查出其歸屬進(jìn)程mshta.exe.

 

小提示

 

可通過(guò)打開(kāi)、關(guān)閉“用戶賬戶” 的方法比較“任務(wù)管理器”中的變化來(lái)確定其所屬的進(jìn)程;也可以在打開(kāi)“搜索助理”時(shí),在“命令提示符”中輸入“tasklist /fo table>C:acc1.txt”,在關(guān)閉該程序后,在“命令提示符”中輸入“tasklist /fo table>C:acc2.txt”,然后用fc命令進(jìn)行比較“fc C:acc1.txt C:acc2.txt>C:acc.txt”,比較得出的多余項(xiàng)即為該程序所屬的進(jìn)程。

 

第三步:重啟電腦,下面要請(qǐng)軟件LISTDLLS出場(chǎng)了。到這里下載該軟件,然后將listdlls.exe移動(dòng)到C:Windows,按Ctrl+R打開(kāi)“運(yùn)行”框,輸入“cmd”,在“命令提示符”中輸入:listdlls -r explorer.exe>C:explorer1.txt.

 

接著打開(kāi)“搜索助理”,再次在“命令提示符”中輸入:listdlls -r explorer.exe>C:explorer2.txt

 

最后用fc命令進(jìn)行比較:

 

fc C:explorer1.txt C:explorer2.txt>C:explorer.txt.

 

這樣打開(kāi)C:explorer.txt文件,對(duì)比后多出的文件即是“搜索助理”調(diào)用的DLL文件。

 

小提示

 

ListDlls的用法為:listdlls [-r] [processname pid]或listdlls [-r] [-d dllname]

 

第四步:重啟電腦,用命令“l(fā)istdlls -r helpctr.exe>C:helpctr.txt”得到“幫助和支持”所使用的DLL文件。此處重啟是為了使已經(jīng)沒(méi)有使用的DLL文件從內(nèi)存中卸載。

 

第五步:再次重啟,用命令“l(fā)istdlls -r mshta.exe>C:mshta.txt”得到“用戶賬戶”使用的DLL文件。

 

篩選最后“真兇”

 

分析explorer.txt中的DLL文件,其中文件目錄中含有“srchasst”的,均為“搜索助理”單獨(dú)調(diào)用的文件。剩余的文件分別為C:Windowssystem32目錄下的sxs.dll、vbscript.dll、jscript.dll文件。用“搜索”的方法可以發(fā)現(xiàn)文件helpctr.txt和mshta.txt中均存在上述文件,看來(lái)“罪魁禍?zhǔn)住狈沁@三者莫屬。

 

回到原來(lái)的電腦,發(fā)現(xiàn)三個(gè)文件均存在,也并未損壞。用命令regsvr32命令分別進(jìn)行注冊(cè)。果然,在對(duì)其中的jscript.dll文件的進(jìn)行注冊(cè)后(使用命令 regsvr32 jscript.dll),“白板”程序終于恢復(fù)其美麗的“容顏”。

 

小編有話說(shuō):

 

系統(tǒng)很多軟件故障都是由DLL文件引起的。以前我們往往更關(guān)注DLL文件是否丟失,其實(shí)還有很多原因是沒(méi)有注冊(cè)成功造成的??戳吮疚慕榻B的方法,我們就可以很容易地篩選出造成故障的DLL文件,最終解決故障。(techtarget)

發(fā)布:2007-04-22 09:58    編輯:泛普軟件 · xiaona    [打印此頁(yè)]    [關(guān)閉]
相關(guān)文章:
南昌OA系統(tǒng)
聯(lián)系方式

成都公司:成都市成華區(qū)建設(shè)南路160號(hào)1層9號(hào)

重慶公司:重慶市江北區(qū)紅旗河溝華創(chuàng)商務(wù)大廈18樓

咨詢:400-8352-114

加微信,免費(fèi)獲取試用系統(tǒng)

QQ在線咨詢

泛普南昌OA信息化其他應(yīng)用

南昌OA軟件 南昌OA新聞動(dòng)態(tài) 南昌OA信息化 南昌OA快博 南昌OA行業(yè)資訊 南昌軟件開(kāi)發(fā)公司 南昌門禁系統(tǒng) 南昌物業(yè)管理軟件 南昌倉(cāng)庫(kù)管理軟件 南昌餐飲管理軟件 南昌網(wǎng)站建設(shè)公司