常見軟件故障及處理方法
2019-09-10 09:09:15
供稿:網(wǎng)友
軟件故障的原因 軟件發(fā)生故障的原因有幾個(gè),丟失文件、文件版本不匹配、內(nèi)存沖突、內(nèi)存耗盡,具體的情況不同,也許只因?yàn)檫\(yùn)行了一個(gè)特定的軟件,也許很嚴(yán)重,類似于一個(gè)的系統(tǒng)級故障?! 榱吮苊膺@種錯(cuò)誤的出現(xiàn),我們可以仔細(xì)研究一下每種情況發(fā)生的原因,看看怎樣檢測和避免。丟失文件 你每次啟動(dòng)計(jì)算機(jī)和運(yùn)行程序的時(shí)候,都會(huì)牽扯到上百個(gè)文件,絕大多數(shù)文件是一些虛擬驅(qū)動(dòng)程序virtual device drivers (VxD),和應(yīng)用程序非常依賴的動(dòng)態(tài)鏈接庫dynamic link library (DLL)。VXD允許多個(gè)應(yīng)用程序同時(shí)訪問同一個(gè)硬件并保證不會(huì)引起沖突,DLL則是一些獨(dú)立于程序、單獨(dú)以文件形式保存的可執(zhí)行子程序,它們只有在需要的時(shí)候才會(huì)調(diào)入內(nèi)存,可以更有效地使用內(nèi)存。當(dāng)這兩類文件被刪除或者損壞了,依賴于它們的設(shè)備和文件就不能正常工作。 要檢測一個(gè)丟失的啟動(dòng)文件,可以在啟動(dòng)PC的時(shí)候觀察屏幕,丟失的文件會(huì)顯示一個(gè)“不能找到某個(gè)設(shè)備文件”的信息和該文件的文件名、位置,你會(huì)被要求按鍵繼續(xù)啟動(dòng)進(jìn)程。 造成類似這種啟動(dòng)錯(cuò)誤信息的絕大多數(shù)原因是沒有正確使用卸載軟件。如果你有一個(gè)在WINDOWS啟動(dòng)后自動(dòng)運(yùn)行的程序如Norton Utilities、 Nuts and Bolts等,你希望卸載它們,應(yīng)該使用程序自帶的“卸載”選項(xiàng),一般在“開始”菜單的“程序”文件夾中該文件的選項(xiàng)里會(huì)有,或者使用“控制面板”的“添加/卸載”選項(xiàng)。如果你直接刪除了這個(gè)文件夾,在下次啟動(dòng)后就可能會(huì)出現(xiàn)上面的錯(cuò)誤提示。其原因是WINDOWS找不到相應(yīng)的文件來匹配啟動(dòng)命令,而這個(gè)命令實(shí)際上是在軟件第一次安裝時(shí)就已經(jīng)置入到注冊表中了。你可能需要重新安裝這個(gè)軟件,也許丟失的文件沒有備份,但是至少你知道了是什么文件受到影響和它們來自哪里?! ξ募A和文件重新命名也會(huì)出現(xiàn)問題,在軟件安裝前就應(yīng)該決定好這個(gè)新文件所在文件夾的名字。 如果你刪除或者重命名了一個(gè)在“開始”菜單中運(yùn)行的文件夾或者文件,你會(huì)得到另外一個(gè)錯(cuò)誤信息,在屏幕上會(huì)出現(xiàn)一個(gè)對話框,提示“無效的啟動(dòng)程序”并顯示文件名,但是沒有文件的位置。如果桌面或者“開始”菜單中的快捷鍵指向了一個(gè)被刪除的文件和文件夾,你會(huì)得到一個(gè)類似的“丟失快捷鍵”的提示。 丟失的文件可能被保存在一個(gè)單獨(dú)的文件中,或是在被幾個(gè)出品廠家相同的應(yīng)用程序共享的文件夾中,例如文件夾/SYMANTEC就被Norton Utilities、Norton Antivirus和其他一些 Symantec 出品的軟件共享,而對于/WINDOWS/SYSTEM來說,其中的文件被所有的程序共享。你最好搜索原來的光盤和軟盤,重新安裝被損壞的程序。文件版本不匹配 絕大多數(shù)的WIN 9X用戶都會(huì)不時(shí)地向系統(tǒng)中安裝各種不同的軟件,包括WINDOWS的各種補(bǔ)丁例如Y2K,或者將WIN 95 升級到WIN 98,這其中的每一步操作都需要向系統(tǒng)拷貝新文件或者更換現(xiàn)存的文件。每當(dāng)這個(gè)時(shí)候,就可能出現(xiàn)新軟件不能與現(xiàn)存軟件兼容的問題?! ∫?yàn)樵诎惭b新軟件和WINDOWS升級的時(shí)候,拷貝到系統(tǒng)中的大多是DLL文件,而DLL不能與現(xiàn)存軟件“合作”是產(chǎn)生大多數(shù)非法操作的主要原因,即使會(huì)快速關(guān)閉被影響的程序,你也沒有額外的時(shí)間來保存尚未完成的工作?! INDOWS的基本設(shè)計(jì)使得上述DLL錯(cuò)誤頻頻發(fā)生。和其他版本不同,WIN 95允許多個(gè)文件共享/WINDOWS /SYSTEM文件夾的所有文件,例如可以有多個(gè)文件使用同一個(gè)Whatnot.dll,而不幸的是,同一個(gè)DLL文件的不同版本可能分別支持不同的軟件,很多軟件都堅(jiān)持安裝適合它自己的Whatnot.dll版本來代替以前的,但是新版本一定可以和其他軟件“合作愉快”嗎?如果你運(yùn)行了一個(gè)需要原來版本的DLL的程序,就會(huì)出現(xiàn)“非法操作”的提示。 在安裝新軟件之前,先備份/WINDOWS/SYSTEM 文件夾的內(nèi)容,可以將DLL錯(cuò)誤出現(xiàn)的幾率降低,既然大多數(shù)DLL錯(cuò)誤發(fā)生的原因在此,保證DLL運(yùn)行安全是必要的。而絕大多數(shù)新軟件在安裝時(shí)也會(huì)觀察現(xiàn)存的DLL,如果需要置換新的,會(huì)給出提示,一般可以保留新版,標(biāo)明文件名,以免出現(xiàn)問題。 絕大多數(shù)卸載軟件也可以用來監(jiān)視安裝,這些監(jiān)視記錄可以保證在以后的卸載時(shí)更加準(zhǔn)確,另外你也可以知道哪些文件被修改了,如果提供備份功能,可以保存舊版本的文件和安裝過程中被置換的文件。 WIN 98和WIN 95有所不同,它在將WINDOWS升級和安裝新軟件時(shí)自動(dòng)備份被置換的文件,如果在WIN98安裝后出現(xiàn)問題,你可以使用Version Conflict Manager(VCM)幫助你發(fā)現(xiàn)哪些文件被改變了,可以從WIN 98的備份中將原來的版本恢復(fù)出來,而VCM可以從“開始”菜單、附件、系統(tǒng)工具或者安裝WIN 98的光盤中尋找?! ×硪粋€(gè)避免出現(xiàn)DLL引起的非法操作的辦法是不同時(shí)運(yùn)行不同版本的同一個(gè)軟件,即使你為新版本軟件準(zhǔn)備了另一個(gè)新文件夾,如果你一定要同時(shí)使用兩個(gè)版本,就會(huì)出現(xiàn)非法錯(cuò)誤信息。非法操作 非法操作會(huì)讓很多用戶覺得很迷惑,如果你仔細(xì)研究的話會(huì)就發(fā)現(xiàn)軟件才是真兇,每當(dāng)有非法操作信息出現(xiàn),相關(guān)的程序和文件都會(huì)和錯(cuò)誤類型顯示在一起,如果在WINDOWS 3.1中可能是一般保護(hù)性錯(cuò)誤(GPF),一般是由于有兩個(gè)軟件同時(shí)使用了內(nèi)存的同一個(gè)區(qū)域,但是即使知道原因也無法避免這一類錯(cuò)誤?! ∮脩艨梢酝ㄟ^錯(cuò)誤信息列出的程序和文件來研究錯(cuò)誤起因,因?yàn)殄e(cuò)誤信息并不直接指出實(shí)際原因,如果給出的是“未知”信息,可能數(shù)據(jù)文件已經(jīng)損壞,看看有沒有備份或者看看廠家是否有文件修補(bǔ)工具?! ∪绻荕icrosoft的軟件,你可以將程序名和錯(cuò)誤信息作為關(guān)鍵字在Microsoft的站點(diǎn)進(jìn)行搜索。例如我們到微軟的基本知識(shí)站點(diǎn)http://support.microsoft.com/search中輸入“WORD97的非法操作輸入”,可以找到50多個(gè)文檔,說明可能產(chǎn)生的原因。也可以將文件名、錯(cuò)誤操作和比較準(zhǔn)確的原因做為關(guān)鍵字進(jìn)行輸入,例如搜尋WORD 97、非法操作和kernel32.dll三項(xiàng),就只會(huì)返回9條信息。 從微軟的站點(diǎn)返回的信息大約是DLL錯(cuò)誤、軟件的BUG、在低端RAM運(yùn)行或者是磁盤空間等問題,具體的彌補(bǔ)方法會(huì)因?yàn)閱栴}的不同而有所區(qū)別,例如下載并安裝軟件的補(bǔ)丁、卸載并重新安裝特定的程序,或者不能同時(shí)運(yùn)行某些程序等。藍(lán)屏錯(cuò)誤信息 要確定出現(xiàn)藍(lán)屏的原因需要仔細(xì)檢查錯(cuò)誤信息,很多藍(lán)屏發(fā)生在安裝了新軟件以后,是新軟件和現(xiàn)行的WINDOWS設(shè)置發(fā)生沖突直接引起的?! 〕霈F(xiàn)藍(lán)屏的真正原因不容易搞清楚,最好的辦法是把錯(cuò)誤信息保留下來,然后用“blue screen”和文件名、“fatal exception”代碼到微軟的站點(diǎn)搜索,以便確定原因。不幸的是,即使一個(gè)特定的軟件被破壞,藍(lán)屏也不能確定引起問題的文件是什么,如果在藍(lán)屏上顯示了多個(gè)信息,那么首先應(yīng)該搜索第一條。 很多藍(lán)屏可以用改變WINDOWS設(shè)置來解決,大多數(shù)情況下需要下載安裝一個(gè)更新的驅(qū)動(dòng)程序,一些藍(lán)屏與版本有關(guān),應(yīng)該確定你使用的WINDOWS版本,查看WIN 9X的設(shè)備管理程序可以確定這些信息。資源耗盡 經(jīng)常有人會(huì)問,既然有了更多的內(nèi)存,是不是可以運(yùn)行更多程序,大多數(shù)用戶對此限制有些模糊。 一些Windows程序需要消耗各種不同的資源組合,GDI(圖形界面)集中了大量的資源,這些資源用來保存菜單按鈕、面板對象、調(diào)色板等等;第二個(gè)積累較多的資源則是USER(用戶),用來保存菜單和窗口的信息,第三個(gè)是SYSTEM(系統(tǒng)資源),是一些通用的資源?! ∵@些資源在win3.x中受到的限制是很大的,在不發(fā)生GPE(一般保護(hù)性錯(cuò)誤)和其他錯(cuò)誤導(dǎo)致的資源耗盡的情況下只允許幾個(gè)為數(shù)不多的程序同時(shí)運(yùn)行。WIN 9X由于限制放寬了許多,所以可以有很多程序同時(shí)運(yùn)行,而WIN NT才是唯一的對絕大多數(shù)資源完全不加以限制的微軟的操作系統(tǒng)?! ≡诔绦虼蜷_和關(guān)閉之間都會(huì)消耗資源,一些在程序打開時(shí)被占用的資源在程序關(guān)閉時(shí)可以被恢復(fù),但并不都是這樣,一些程序在運(yùn)行時(shí)可能導(dǎo)致GDI和USER資源喪失,這也就是為什么在機(jī)器運(yùn)行一段時(shí)間以后最好重新啟動(dòng)一次補(bǔ)充資源的原因?! Q大多數(shù)用戶希望在出現(xiàn)非法操作或者藍(lán)屏之前能夠被提示資源占用嚴(yán)重的情況,WINDOWS帶有一個(gè)資源測量儀(打開“開始”菜單,選擇程序、附件、系統(tǒng)工具)可以放置在工具欄上實(shí)時(shí)顯示關(guān)于GDI、USER和一些系統(tǒng)資源的占用情況。防止軟件故障的五個(gè)注意事項(xiàng): 在安裝一個(gè)新軟件之前,考察一下它與你的系統(tǒng)的兼容性; 在安裝一個(gè)新的程序之前需要保護(hù)已經(jīng)存在的被共享使用的DLL文件,防止在安裝新文件時(shí)被其他文件覆蓋; 在出現(xiàn)非法操作和藍(lán)屏的時(shí)候仔細(xì)研究提示信息分析原因; 隨時(shí)監(jiān)察系統(tǒng)資源的占用情況; 使用卸載軟件刪除已安裝的程序。