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