共用方式為


延遲符號載入

根據預設,載入目標模組時,不會實際載入符號資訊。 相反地,調試程式會視需要載入符號。 這稱為 延後符號載入延遲符號載入。 啟用此選項時,調試程式會在遇到無法辨識的符號時載入符號。

當符號路徑變更時,例如,使用 .sympath (設定符號路徑) 命令,所有具有導出符號的載入模組都會延遲重載。 如果新路徑不再包含用來載入 PDB 符號的原始路徑,則會延遲重載具有完整 PDB 符號的模組符號。 如果新路徑仍然包含 PDB 符號檔的原始路徑,這些符號將不會延遲重載。

停用延遲符號載入時,進程啟動可能會變慢,因為每當載入模組時都會讀取所有符號。

在 WinDbg 中,您可以使用 [偵錯] 功能表上的 [解決未限定符號] 選項,針對沒有模組前置詞的符號修改延後符號載入行為。

您可以使用 ld (Load Symbols) 命令或使用 /f 選項來覆寫延遲的符號載入。reload (Reload Module) 命令。 這些會強制立即載入指定的符號,不過會延後載入其他符號。

根據預設,會啟用延遲符號載入。 在 CDB 和 KD 中 ,-s 命令行選項 將會關閉此選項。 您也可以在 CDB 中使用 tools.ini 檔案中的 LazyLoad 變數來關閉它。 調試程式執行之後,可以使用 .symopt+0x4 或 .symopt-0x4 分別開啟或關閉此選項。