Share via


IDebugClient2::WriteDumpFile2 方法 (dbgeng.h)

WriteDumpFile2 方法會建立使用者模式或 kernel-modecrash 傾印檔案。

語法

HRESULT WriteDumpFile2(
  [in]           PCSTR DumpFile,
  [in]           ULONG Qualifier,
  [in]           ULONG FormatFlags,
  [in, optional] PCSTR Comment
);

參數

[in] DumpFile

指定要建立的傾印檔名。 DumpFile 必須包含擴展名。 DumpFile 可以包含相對或絕對路徑;相對路徑相對於啟動調試程序的目錄。

[in] Qualifier

指定要建立的傾印文件類型。 如需可能的值,請參閱 DEBUG_DUMP_XXX

[in] FormatFlags

指定要包含在檔案中之使用者模式 minidumps 的傾印檔案格式和 --for user-mode minidumps--what 資訊的旗標。 如需詳細資料,請參閱<備註>。

[in, optional] Comment

指定要包含在損毀傾印檔案中的批註字串。 載入傾印檔案時,此字串會顯示在調試程式控制台中。 某些傾印檔格式不支援儲存批註字串。

傳回值

這個方法也可能傳回錯誤值。 如需詳細資訊,請參閱 傳回值

傳回碼 描述
S_OK
此方法成功。

備註

WriteDumpFile2WriteDumpFileWide 會使用 DEBUG_FORMAT_XXX 位旗標來判斷損毀傾印檔案的格式,以及針對使用者模式 Minidumps,要在檔案中包含哪些資訊。

下列位旗標適用於所有損毀傾印檔案。

Description
DEBUG_FORMAT_WRITE_CAB 在 CAB 檔案中封裝損毀傾印檔案。 提供的檔名或檔句柄用於 CAB 檔案;損毀傾印會先在暫存盤中建立,再移至 CAB 檔案。
DEBUG_FORMAT_CAB_SECONDARY_FILES
在 CAB 檔案中包含目前的符號和對應的影像。
如果未設定DEBUG_FORMAT_WRITE_CAB,則會忽略此旗標。
DEBUG_FORMAT_NO_OVERWRITE 請勿覆寫現有的檔案。
 

使用者模式 Minidumps 也可以包含下列位旗標。

Description
DEBUG_FORMAT_USER_SMALL_FULL_MEMORY 新增完整記憶體數據。 將會包含目標應用程式所擁有的所有可存取認可頁面。
DEBUG_FORMAT_USER_SMALL_HANDLE_DATA 新增與目標應用程式相關聯句柄的相關數據。
DEBUG_FORMAT_USER_SMALL_UNLOADED_MODULES 新增卸除的模組資訊。 此資訊僅適用於 Windows Server 2003 和更新版本的 Windows。
DEBUG_FORMAT_USER_SMALL_INDIRECT_MEMORY 新增間接記憶體。 包含一小部分的記憶體區域,其中包含堆疊或備份存儲區上指標所參考的任何位址。
DEBUG_FORMAT_USER_SMALL_DATA_SEGMENTS 在可執行影像中新增所有數據區段。
DEBUG_FORMAT_USER_SMALL_FILTER_MEMORY 將 設定為零堆疊和備份存儲區中的所有記憶體,這對於重新建立堆棧追蹤並不實用。 這可讓迷你傾印的壓縮更有效率,並藉由移除不必要的資訊來增加隱私權。
DEBUG_FORMAT_USER_SMALL_FILTER_PATHS 拿掉模組路徑,只保留模組名稱。 這很適合用來隱藏目錄結構 (,其中可能包含使用者的名稱) 。
DEBUG_FORMAT_USER_SMALL_PROCESS_THREAD_DATA 將進程環境區塊 (PEB) 和線程環境區塊新增 (TEB) 。 此旗標可用來提供線程和進程的 Windows 系統資訊。
DEBUG_FORMAT_USER_SMALL_PRIVATE_READ_WRITE_MEMORY 新增所有認可的私人讀寫記憶體頁面。
DEBUG_FORMAT_USER_SMALL_NO_OPTIONAL_DATA
防止迷你傾印中包含隱私權敏感數據。 目前,此旗標會從已新增的Minidump數據中排除,因為已設定下列旗標:
DEBUG_FORMAT_USER_SMALL_PROCESS_THREAD_DATA,
DEBUG_FORMAT_USER_SMALL_FULL_MEMORY,
DEBUG_FORMAT_USER_SMALL_INDIRECT_MEMORY,
DEBUG_FORMAT_USER_SMALL_PRIVATE_READ_WRITE_MEMORY。
DEBUG_FORMAT_USER_SMALL_FULL_MEMORY_INFO 新增所有基本記憶體資訊。 這是 QueryVirtual 方法所傳回的資訊。 包含所有記憶體的資訊,不只是有效的記憶體,這可讓調試程式從Minidump重新建構完整的虛擬記憶體配置。
DEBUG_FORMAT_USER_SMALL_THREAD_INFO 新增其他線程資訊,包括運行時間、開始時間、結束時間、開始地址和結束狀態。
DEBUG_FORMAT_USER_SMALL_CODE_SEGMENTS 使用可執行影像新增所有程式代碼區段。
 

如需損毀傾印檔案的詳細資訊,請參閱 傾印檔案目標

規格需求

需求
目標平台 桌面
標頭 dbgeng.h (包含 Dbgeng.h)

另請參閱

.dump (建立傾印檔案)

IDebugClient2

IDebugClient3

IDebugClient4

IDebugClient5

WriteDumpFileWide