一般保護錯誤和疑難排解提示的原因

文章翻譯 文章翻譯
文章編號: 82710 - 檢視此文章適用的產品。
如果本文未描述您收到錯誤訊息,檢視下列微軟知識庫文件,以檢視更多說明錯誤訊息的文件:
315854Windows 98 和 Windows Me 錯誤訊息資源中心
全部展開 | 全部摺疊

在此頁中

結論

當程式執行某些動作時可以偵測 Intel 80286,80386 和 80486 CPU 錯誤。最常見的問題都是堆疊錯誤、 不正確的指示、 除法錯誤 (除數為零) 和一般保護錯誤。這些通常指示在程式中使用非標準的程式碼。

其他相關資訊

可能的錯誤類型

在 Windows 架構的程式、 Windows 本身,或者 Windows 裝置驅動程式 (比方說視訊介面卡驅動程式),就會發生下列的錯誤。

堆疊錯誤 (插斷 12)

堆疊錯誤的原因包括:
  • 一個指示嘗試存取的堆疊區段限制以外的記憶體 (POP、 PUSH、 ENTER、 休假或堆疊相對存取: MOV AX、 [BP + 6])。
  • 載入 SS 以標記選取器沒有顯示出來,但否則有效 (這應該不會發生在 Windows 之下)。
堆疊錯誤一定是嚴重 Windows 中目前的程式。

無效的指令 (插斷 6)

CPU 偵測大部分無效的指示,並會產生插斷。

這一定是嚴重到程式。這應該永遠不會發生,這通常是藉由執行資料,而不是程式碼而造成。

除錯誤 (插斷 0)

當目的地暫存器無法容納除法運算的結果時,就會發生這個問題。這可能被因為嘗試除以零或除法溢位。

一般保護性錯誤 (插斷 13)

不會導致另一個例外狀況的所有保護違規會都導致一般保護例外狀況。這包括,但不限於:
  • 使用 [CS]、 [DS]、 [ES]、 [完成-開始,] 或 [GS 區段時,請超過區段限制。這是很常見的問題,在程式中 ; 它通常因 miscalculating 配置中需要多少記憶體。
  • 將執行轉送到不是可執行檔 (例如,跳到包含記憶體回收的位置) 的區段。
  • 寫入至一個唯讀] 或 [程式碼區段。
  • 將區段登錄載入有錯誤的值。
  • 使用 Null 指標。0 的值被定義為 Null 指標。在受保護模式下無效一定要使用包含 0 的區段暫存器。

疑難排解一般保護錯誤

第一次,縮小錯誤的來源。因為一般保護錯誤的原因可能是軟體或硬體,第一個步驟就是 「 安全模式 」 重新啟動您的電腦。重新啟動在安全模式中,可讓您測試您的電腦在只有基本元件的 Windows 會載入的狀態。如果您以安全模式重新啟動電腦,而且不會發生錯誤訊息原點會更有驅動程式。如果您以 「 安全模式重新啟動和測試您的電腦,不會出現錯誤訊息,問題更可能是硬體或損毀的 Windows 核心檔案。
  1. Windows 95 重新啟動電腦,當您看到 「 正在啟動 Windows 95 」 的訊息,然後選擇 [安全模式 時,請按下 F8。

    對於 Windows 98 重新啟動您的電腦、 按下並按住 CTRL 鍵,直到看到 [Windows 98 開機] 功能表然後選擇 「 安全模式]。
  2. 在安全模式中測試您的電腦。如果仍未發生錯誤使用您的作業系統下面適當的步驟。如果不會發生錯誤,可能有您的 Windows 安裝有問題,或者您可能會遇到的硬體錯誤的徵狀。請參閱本文 < 測試硬體] 一節。

    Windows 98

    以安全模式重新啟動電腦之後使用 「 系統組態編輯程式 」 工具 (Msconfig.exe) 可能會造成問題的衝突降到最低:

    1. 按一下 [開始],指向 [程式集]、 指向 [附屬應用程式]、 指向 [系統工具,然後再按一下 [系統資訊]。
    2. 在 [工具] 功能表上按一下 [系統組態編輯程式]。
    3. 在 [一般] 索引標籤上按一下 [選擇式啟動],並按一下以清除下列核取方塊:
      • 處理程序 Config.sys 檔案
      • 處理 Autoexec.bat 檔
      • 處理 Winstart.bat 檔 (如果有的話)
      • 處理 System.ini 檔案
      • 處理 Win.ini 檔案
      • 載入啟動群組項目
    4. 按一下 [確定],並重新啟動您的電腦通常當您接到提示時。在您重新啟動,並測試您的電腦,如果您仍然沒有收到錯誤訊息之後,繼續執行下一個步驟。
    5. 執行系統設定公用程式 」 工具]、 按一下 [若要在 [選擇式啟動] 方塊中選取一個項目,請按一下 [確定],],然後重新啟動電腦並測試]。
    6. 請繼續此程序,直到選取所有 [選擇式啟動] 方塊中的項目。如果您選擇的項目時,您的問題 reoccurs,按一下 [選擇式啟動] 中相對應的項目] 的索引標籤、 清除一半的核取方塊,按一下 [確定],並重新啟動您的電腦。請繼續此程序,直到您縮小該設定會造成問題的原因。
    7. 如果取所有項目時,可以順利重新開機,執行 「 系統組態編輯程式 」 工具,按一下以選取 [正常啟動,請按一下 [確定],然後重新啟動您的電腦。
    如需有關使用 Msconfig.exe 的詳細資訊,按一下下面的文件編號,檢視 「 Microsoft 知識庫 」 中的發行項:
    192926如何執行初始狀態開機疑難排解的 Windows 98

    Windows 95

    下列步驟可以協助您判斷您所遇到的問題是否因到您電腦的真實模式設定。這可能包括從 Config.sys 和 Autoexec.bat 檔案載入的驅動程式。

    1. 重新啟動電腦。顯示正在啟動 Windows 95 」 訊息時按 F8 鍵,然後再按一下 [從 [啟動] 功能表的 [逐步確認
    2. 當系統提示您載入下列項目 (如果系統提示您載入任何其他項目,按 N):
      • Dblspace 驅動程式。
      • Himem.sys。
      • Ifshlp.sys。
      • Dblbuff.sys。
      • 載入 Windows 95 圖形化使用者介面 (GUI) 選擇要載入所有的 Windows 驅動程式。
      注意: Windows 95 不需要 「 Config.sys 」 和 「 Autoexec.bat 」 檔案,但是在電腦上安裝某些工具可能會需要它們。直到您執行成功的互動式開機來驗證不需要,您應該永遠不會重新命名 Config.sys 和 Autoexec.bat 檔。

      如果初始狀態開機的真實模式的設定會消除問題,請使用逐步確認函數隔離與終止和-保持-常駐 (TSR) 或真實模式裝置驅動程式發生衝突。

      藉由開機到命令提示字元並鍵入 贏得,按住 SHIFT 鍵,以在開機期間來啟動 Windows 95 載入 Windows 95。這可防止任何程式啟動時自動載入。

      如果問題已解決,防止在啟動時載入的程式,調查下列可能的來源。

    Winstart.bat 檔案

    Winstart.bat 檔案用來載入常駐程式所需的 Windows 程式及不需要在 MS-DOS 工作階段中。

    如需 Winstart.bat 檔案的詳細資訊,請按一下下面的文件編號,檢視 「 Microsoft 知識庫 」 中的發行項:
    134402在安裝期間從 Autoexec.bat 移至 Winstart.bat 有些常駐程式
    啟動群組

    如果問題已解決由略過 [啟動] 群組,移除每個程式分別來隔離造成問題的程式的 [啟動] 群組中。

    執行機碼,在登錄中

    警告: 如果您未正確使用登錄編輯程式可能會導致嚴重的問題,甚至必須重新安裝作業系統。Microsoft 不保證您可以解決因不當使用 「 登錄編輯器 」 的問題。使用 「 登錄編輯程式 」,請自行負擔相關的風險。

    您可以防止程式載入程式的字串移除下列登錄機碼:
    HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Run

    HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\RunServices
    從下列登錄機碼,可能也載入程式:
    HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Run
    Win.ini 檔案

    在"負載 ="和"執行 ="這個檔的 [視窗] 區段中的行可以自動啟動程式。請參閱下列的一節,如需詳細資訊。

    測試 Windows 組態檔

    若要測試 Windows 設定檔,請使用下列步驟:

    1. 開機到命令提示字元。
    2. 輸入下列命令,重新命名 Win.ini 檔案:
      ren c:\windows\win.ini *.bak
    3. Windows 95 請先鍵入 就能獲勝。如果此程序已修正該問題,確保"負載 ="和"執行 ="Win.ini 檔的 [視窗] 區段中的線會是空白或前面以分號 (;) 來防止載入的項目上。
    4. 輸入下列命令,重新命名 System.ini 檔案:
      ren c:\windows\system.ini *.bak
    5. Windows 95 需要 System.ini 檔載入圖形使用者介面。鍵入下列命令來取代原始檔:
      複製 c:\windows\system.cb c:\windows\system.ini
      注意: 啟動 Windows 95 與 System.cb 檔案並不會載入滑鼠的驅動程式。編輯加入下列幾行該新 System.ini 檔案:
      [386Enh]
      滑鼠 = * vmouse,msmouse.vxd

      [開機]
      drivers=mmsystem.dll
      mouse.drv=mouse.drv
    6. Windows 95 請先在命令提示字元下輸入 就能獲勝。如果原始的 System.ini 檔案更換 System.cb 檔案修正該問題,很可能是問題所在的任一個 [開機] 或 [386Enh] 區段的 System.ini 原始檔案。還原原本的檔案,對它進行疑難排解。
    7. 若要找出問題的原因,將置於分號 (;) 以避免載入的項目行的開頭。
    如需 System.ini 檔和其預設的項目相關的詳細資訊,按一下下面的文件編號,檢視 「 Microsoft 知識庫 」 中的發行項:
    140441建立新 System.ini 檔而不需協力廠商驅動程式
    受保護模式裝置驅動程式

    安全模式中,會停用所有受保護模式裝置驅動程式的 Windows 95。您可以進行藉由停用保護模式裝置驅動程式在 「 裝置管理員 」 中測試不相容的元件和資源衝突。

    正在移除受保護模式來找出衝突的裝置驅動程式

    1. 按一下 [開始],指向 [設定]、 按一下 [控制台],然後再連按兩下 [系統]。
    2. 在 [裝置管理員] 索引標籤上按一下 [依類型檢視裝置]。
    3. 停用每個受保護模式裝置驅動程式。例如:
      1. 按兩下 軟碟機控制器 分支以展開它。
      2. 按一下 標準軟碟機控制器,然後再按一下 [內容]
      3. 在 [一般] 索引標籤上按一下以清除 [原始設定 (目前)] 核取方塊,然後再按一下 [確定]

        注意: 如果啟用硬體設定檔為每個組態設定] 核取方塊。清除核取方塊,在您進行疑難排解的硬體設定檔。
      4. 重複步驟 A 至 C 為每個裝置在 「 裝置管理員 」 中。
    4. 按一下 [關閉],並重新啟動電腦。
    如果您藉由停用保護模式驅動程式在 「 裝置管理員 」 中解決問題,您可能有硬體衝突或驅動程式可能與您的硬體不相容。如需有關疑難排解在 Windows 95 中的資源衝突的詳細資訊,按一下下面的文件編號,檢視 「 Microsoft 知識庫 」 中的發行項:
    133240使用 [裝置管理員進行裝置衝突的疑難排解
    如果您決定 Windows 95 保護模式裝置驅動程式是與您的硬體不相容,請連絡硬體製造商以判斷新的驅動程式的可用性。

    變更 [視訊驅動程式] 以標準的 VGA 驅動程式

    注意: 如果您依照本文 < 移除保護模式驅動程式來找出衝突 > 一節中的指示,VGA 來變更視訊驅動程式,而且您可以直接跳到下一節。停用視訊介面卡會將您的視訊,設定為 VGA 驅動程式。

    安全模式啟動 Windows 95,並 VGA 視訊驅動程式。要判斷您遇到的問題是否與您的視訊驅動程式有關,變更 VGA 驅動程式供測試之用。

    注意:為了安全返回您先前組態使用下列步驟:

    1. 備份 System.ini 檔。
    2. 請注意目前的桌面區域 (解析度) 和色彩調色盤。
    3. 錄製您目前的視訊介面卡的名稱。
    若要變更為 VGA 視訊驅動程式,請依照下列步驟執行:

    1. 在 「 安全模式 」 中啟動 Windows 95。
    2. 按一下 [開始]、 指向 [設定]、 按一下 [控制台],然後再按兩下 [顯示]。
    3. 在 [設定] 索引標籤上按一下 [變更顯示類型]。
    4. 在 [介面卡類型] 區域中,按一下 [變更]。
    5. 按一下 [顯示所有裝置]。
    6. 在 [製造商] 方塊中,按一下 [(標準顯示器類型)]。在 [型號] 方塊按一下 [標準顯示介面卡 (VGA),再按 [確定]
    7. 按一下 [確定] 或 [關閉] 直到返回 [控制台]。
    8. 重新啟動電腦。
    如果您判斷您的視訊驅動程式不相容的 Windows 95,請連絡硬體製造商以判斷新的驅動程式的可用性。

    登錄殺傷力

    當以安全模式啟動 Windows 95 是最少式讀取登錄。登錄損毀在安全模式中執行時,可能無法明顯 ; 您可能需要取代現有的登錄 (System.dat) 用來決定是否問題因損毀的登錄備份。若要排解損壞的登錄的問題使用下列步驟:

    1. 開機到命令提示字元。
    2. 從登錄的備份移除檔案屬性,輸入下列命令:
      -h-s-r c:\system.1st c:\windows\command\attrib
    3. 從目前的登錄移除檔案屬性,輸入下列命令:
      -h-s-r c:\windows\system.dat c:\windows\command\attrib
    4. 重新命名登錄,輸入下列命令:
      ren c:\windows\system.dat *.dax
    5. 將備份檔案複製到目前的登錄中,輸入下列命令:
      複製 c:\system.1st c:\windows\system.dat
    6. 重新啟動電腦。
    注意: [System.1st 檔案是在 Windows 95 安裝程式的最後階段期間建立的登錄的備份。因此,"執行 Windows 95 的 「 第一個時間"橫幅顯示,而對做最 Windows 95 後處理設定好像被安裝。

    如果以 System.1st 檔案取代 System.dat 檔案可以解決問題,問題可能與登錄損壞。程式及安裝 Windows 95 之後加入的裝置驅動程式可能需要重新安裝更新新的登錄。

    如果問題仍未解決,請使用下列步驟還原原始登錄:

    1. 重新啟動電腦,以命令提示字元。
    2. 輸入下列命令在每一行命令後按下 ENTER 鍵:
      c:\windows\command\attrib-s-h-r c:\windows\system.dat

      複製 c:\windows\system.dax c:\windows\system.dat
      注意: 覆寫現存的 System.dat 檔案,如果系統提示您執行這項操作。

    3. 重新啟動電腦。
    Windows 95 光碟片包括備份您的系統檔案,以及登錄的工具。 如需有關這些工具的詳細資訊,按一下 [下面的文件編號,檢視 「 Microsoft 知識庫 」 中發行項]:
    139437Windows 95 緊急修復公用程式
    135120設定備份 」 工具來備份登錄

測試硬體

若要測試您的硬體,最有效率的方法是在新,] 或 [初始狀態,資料夾安裝 Windows。如果您有全新安裝之後,就會發生此問題,您的問題是有瑕疵的硬體。請連絡您的硬體製造商,或由硬體專家檢查您的硬體。若要在新的資料夾中安裝 Windows,使用 [其中一個下列 「 Microsoft 知識庫 」 文件中的 [步驟]:
193902如何在新的資料夾中安裝 Windows 98
142096如何在新的資料夾中安裝 Windows 95
如果您的問題已經解決了全新的資料夾中安裝 Windows 時,可能是損毀您的 Windows 核心檔案,或沒有發生問題的您原始安裝中的設定。您可以選擇使用新的 Windows,安裝,但您必須重新安裝程式。如果要回到原始的 Windows 安裝,然後繼續疑難排解使用 [下列 「 Microsoft 知識庫 」 文件的 [步驟]:
193902如何在新的資料夾中安裝 Windows 98
142096如何在新的資料夾中安裝 Windows 95
192926如何執行初始狀態開機疑難排解的 Windows 98
243039如何在 Windows 95 中執行初始狀態開機

屬性

文章編號: 82710 - 上次校閱: 2007年1月18日 - 版次: 1.2
這篇文章中的資訊適用於:
  • Microsoft Windows 95
  • Microsoft Windows 98 Standard Edition
關鍵字:?
kbmt kbgpf kbinfo KB82710 KbMtzh
機器翻譯
重要:本文是以 Microsoft 機器翻譯軟體翻譯而成,而非使用人工翻譯而成。Microsoft 同時提供使用者人工翻譯及機器翻譯兩個版本的文章,讓使用者可以依其使用語言使用知識庫中的所有文章。但是,機器翻譯的文章可能不盡完美。這些文章中也可能出現拼字、語意或文法上的錯誤,就像外國人在使用本國語言時可能發生的錯誤。Microsoft 不為內容的翻譯錯誤或客戶對該內容的使用所產生的任何錯誤或損害負責。Microsoft也同時將不斷地就機器翻譯軟體進行更新。
按一下這裡查看此文章的英文版本:82710
Microsoft及(或)其供應商不就任何在本伺服器上發表的文字資料及其相關圖表資訊的恰當性作任何承諾。所有文字資料及其相關圖表均以「現狀」供應,不負任何擔保責任。Microsoft及(或)其供應商謹此聲明,不負任何對與此資訊有關之擔保責任,包括關於適售性、適用於某一特定用途、權利或不侵權的明示或默示擔保責任。Microsoft及(或)其供應商無論如何不對因或與使用本伺服器上資訊或與資訊的實行有關而引起的契約、過失或其他侵權行為之訴訟中的特別的、間接的、衍生性的損害或任何因使用而喪失所導致的之損害、資料或利潤負任何責任。

提供意見

 

Contact us for more help

Contact us for more help
Connect with Answer Desk for expert help.
Get more support from smallbusiness.support.microsoft.com