共用方式為


如何讀取 Windows 在當機時所建立的小型記憶體轉儲檔案

本文說明如何檢查小型記憶體轉儲檔案。 小型記憶體轉儲檔案可協助您判斷計算機失敗的原因。

適用於所有支援的 Windows 用戶端和 Windows Server 版本

原始 KB 編號: 315263

注意

如果您要尋找 Windows 8 或更新版本的偵錯資訊,請參閱適用於 Windows 的偵錯工具(WinDbg、KD、CDB、NTSD)。 如需小型記憶體轉儲的詳細資訊,請參閱 小型記憶體轉儲

小型記憶體轉儲檔案

如果您的計算機失敗,如何判斷發生什麼事、修正問題,並防止它再次發生? 在此情況下,您可能會發現小型記憶體轉儲檔案很有用。 小型記憶體轉儲檔案包含最少的實用資訊,可協助您識別計算機失敗的原因。 記憶體轉儲檔案包含下列資訊:

  • Stop 訊息、其參數和其他數據
  • 載入的驅動程式清單
  • 已停止之處理器的處理器內容 (PRCB)
  • 已停止之進程的進程資訊和核心內容 (EPROCESS)
  • 停止線程的進程資訊和核心內容 (ETHREAD)
  • 停止線程的核心模式呼叫堆疊

若要建立記憶體轉儲檔案,Windows 在開機磁碟區上需要至少 2 MB 的分頁檔案。 在執行Microsoft Windows 2000 或更新版本的 Windows 電腦上,每次發生電腦失敗時,都會建立新的記憶體轉儲檔案。 這些檔案的歷程記錄會儲存在資料夾中。 如果發生第二個問題,而且如果 Windows 建立第二個小記憶體轉儲檔案,Windows 會保留先前的檔案。 Windows 會為每個檔案提供不同的日期編碼檔名。 例如, Mini022900-01.dmp 是 2000 年 2 月 29 日產生的第一個記憶體轉儲檔案。 Windows 會保留 %SystemRoot%\Minidump 資料夾中所有小型記憶體轉儲檔案的清單。

如果硬碟空間有限,小型記憶體轉儲檔案可能會很有用。 不過,由於包含的資訊有限,因此無法透過分析此檔案來探索未直接由問題時執行之線程所造成的錯誤。

設定傾印類型

若要設定啟動和復原選項以使用小型記憶體轉儲檔案,請遵循下列步驟。

注意

視 Windows 版本而定,下列步驟在您的電腦上可能會有所不同。 如果不同,請參閱您的產品檔以完成這些步驟。

  1. 選取 [開始]>[控制台]

  2. 按兩下 [系統],然後選取 [進階系統設定>] [進階]。

  3. 在 [啟動和復原] 底下,選取 [設定]。

  4. 在 [寫入偵錯資訊] 列表中,選取 [小型記憶體傾印][256k]。

    [啟動和復原] 視窗中 [寫入偵錯資訊] 清單中的 [小型記憶體傾印 (256k)] 選項螢幕快照。

若要變更小型記憶體轉儲檔案的資料夾位置,請在 [傾印檔案] 方塊或 [小型傾印目錄] 方塊中輸入新路徑(視您的 Windows 版本而定)。

用來讀取小型記憶體傾印檔案的工具

使用傾印檢查公用程式 (Dumpchk.exe) 讀取記憶體轉儲檔案,或確認檔案已正確建立。

注意

傾印檢查公用程式不需要存取偵錯符號。 符號檔會保存執行二進位檔時實際不需要的各種數據。 不過,這項數據在偵錯方面可能非常有用。

如需如何在 Windows NT、Windows 2000、Windows Server 2003 或 Windows Server 2008 中使用傾印檢查公用程式的詳細資訊,請參閱 使用Dumpchk.exe檢查記憶體轉儲檔案

如需如何在 Windows XP、Windows Vista 或 Windows 7 中使用傾印檢查公用程式的詳細資訊,請參閱 如何使用 Dumpchk.exe 檢查記憶體轉儲檔案

或者,您可以使用 Windows 調試程式 (WinDbg.exe) 工具或核心調試程式 (KD.exe) 工具來讀取小型記憶體轉儲檔案。 WinDbg.exe和KD.exe隨附於最新版的 Windows 偵錯工具套件中。

若要安裝偵錯工具,請參閱 下載及安裝適用於 Windows 網頁的偵錯工具。 選取 [ 一般 安裝]。 安裝程式預設會在下列資料夾中安裝偵錯工具:

C:\Program Files\Debugging Tools for Windows

工具網頁也可讓您存取適用於 Windows 的可下載符號套件。 如需 Windows 符號的詳細資訊,請參閱 使用符號進行偵錯,以及 下載 Windows 符號套件 網頁。

如需 Windows 中傾印檔案選項的詳細資訊,請參閱 Windows 記憶體傾印檔案選項概觀。

開啟傾印檔案

若要在安裝完成之後開啟傾印檔案,請遵循下列步驟:

  1. 選取 [啟動>執行],輸入 cmd,然後選取 [確定]。

  2. 變更為 [適用於 Windows 的偵錯 工具] 資料夾。 若要這樣做,請在命令提示字元中輸入下列命令,然後按 ENTER:

    cd C:\Program Files\Debugging Tools For Windows
    
  3. 若要將傾印檔案載入調試程式,請輸入下列其中一個命令,然後按 ENTER:

    windbg -y SymbolPath -i ImagePath -z DumpFilePath
    
    kd -y SymbolPath -i ImagePath -z DumpFilePath
    

下表說明使用這些命令中使用的佔位元。

預留位置 說明
SymbolPath 已下載符號檔的本機路徑或符號伺服器路徑,包括快取資料夾。 由於小型記憶體轉儲檔案包含有限的資訊,因此必須一起載入實際的二進位檔與符號,才能正確讀取傾印檔案。
ImagePath 這些檔案的路徑。 這些檔案包含在 Windows XP CD-ROM 上的 I386 資料夾中。 例如,路徑可能是 C:\Windows\I386
DumpFilePath 您要檢查之傾印檔案的路徑和檔名。

範例命令

您可以使用下列範例命令來開啟傾印檔案。 這些命令假設下列各項:

  • Windows CD-ROM 上 I386 資料夾的內容會複製到 C:\Windows\I386 資料夾。
  • 傾印檔案名為 C:\Windows\Minidump\Minidump.dmp

範例 1 (命令行):

kd -y srv*C:\Symbols*https://msdl.microsoft.com/download/symbols -i C:\Windows\i386 -z C:\Windows\Minidump\minidump.dmp

範例 2 (圖形化 UI)。 如果您偏好使用調試程式的圖形化版本,而不是命令行版本,請改為輸入下列命令:

windbg -y srv*C:\Symbols*https://msdl.microsoft.com/download/symbols -i C:\Windows\i386 -z C:\Windows\Minidump\minidump.dmp

檢查傾印檔案

您可以使用數個命令來收集傾印檔案中的資訊,包括下列命令:

  • 此命令 !analyze -show 會顯示 Stop 錯誤碼及其參數。 停止錯誤碼也稱為錯誤檢查碼。
  • 此命令 !analyze -v 會顯示詳細信息輸出。
  • 命令 lm N T 會列出指定的已載入模組。 輸出包含模組的狀態和路徑。

注意

在舊版 Windows 中, !drivers 擴充功能命令會顯示目的地電腦上載入的所有驅動程式清單,以及其記憶體使用量的摘要資訊。 不過, !drivers 擴充功能命令在 Windows XP 和更新版本中已過時。 若要顯示已載入驅動程式和其他模組的相關信息,請使用 lm 命令。 lm N T命令會以類似舊!drivers延伸模組的格式顯示資訊。

如需其他命令的說明和完整的命令語法,請參閱偵錯工具說明檔。 您可以在下列位置找到偵錯工具說明檔:

C:\Program Files\Debugging Tools for Windows\Debugger.chm

注意

如果您有符號相關問題,請使用 Symchk 公用程式來確認正確載入正確的符號。 如需如何使用 Symchk 的詳細資訊,請參閱 使用符號進行偵錯。

使用批次處理檔簡化命令

識別您必須用來載入記憶體轉儲的命令之後,您可以建立批處理檔來檢查傾印檔案。 例如,建立批處理檔並將其命名 為Dump.bat。 將它儲存在安裝偵錯工具的資料夾。 在批次處理檔案中輸入下列文字:

cd "C:\Program Files\Debugging Tools for Windows"

kd -y srv*C:\Symbols*https://msdl.microsoft.com/download/symbols -i C:\Windows\i386 -z %1

當您想要檢查傾印檔案時,請輸入下列命令,將傾印檔案路徑傳遞至批處理檔:

dump C:\Windows\Minidump\minidump.dmp