使用來源伺服器
來源伺服器可讓偵錯工具自動擷取符合目前目標的來源檔案。 若要使用來源伺服器,您必須偵錯已在建置時間編制來源索引的二進位檔,以及來源檔案位置內嵌在 PDB 檔案中。
Windows 的偵錯工具組含來源伺服器 SrcSrv (Srcsrv.exe) 。
搭配偵錯工具使用 SrcSrv
SrcSrv 可以搭配 WinDbg、KD、NTSD 或 CDB 使用。
若要搭配偵錯工具使用 SrcSrv ,請輸入下列命令,將來源路徑設定為 srv*。
.srcfix
您可以輸入下列命令來取得相同的結果。
.srcpath srv*
將來源路徑設定為 srv* 會告訴偵錯工具應該從目的模組符號檔中指定的位置擷取原始程式檔。
如果您想要使用 SrcSrv ,也包含來源路徑中的目錄清單,請使用分號與路徑中的任何目錄分開 srv*
。
例如:
.srcpath srv*;c:\someSourceCode
如果來源路徑設定如上述範例所示,偵錯工具會先使用 SrcSrv ,從目的模組符號檔中指定的位置擷取原始程式檔。 如果 SrcSrv 無法擷取來源檔案,偵錯工具會嘗試從 c:\someSourceCode 擷取它。 不論 srv* 是路徑中的第一個專案,或稍後出現,偵錯工具一律會先使用 SymSrv,再搜尋路徑中所列的任何其他目錄。
您也可以使用 .srcfix+ 附加 srv*
至現有的來源路徑,如下列範例所示。
3: kd> .srcpath c:\mySource
Source search path is: c:\mySource
3: kd> .srcfix+
Source search path is: c:\mySource;SRV*
如果來源伺服器擷取來源檔案,偵錯會話結束之後,它會保留在硬碟上。 來源檔案會儲存在主目錄的 src 子目錄中, (與符號伺服器不同,來源伺服器不會在 srv*
語法本身指定本機快取) 。 主目錄預設為偵錯工具安裝目錄;您可以使用 !homedir 擴充功能或設定DBGHELP_HOMEDIR環境變數來變更它。 如果這個子目錄不存在,將會建立它。
如果您使用 .open (Open Source File) 命令透過 SrcSrv開啟新的原始程式檔,您必須包含 -m Address 參數。
如需如何編制來源索引的資訊,或如果您打算建立自己的原始檔控制提供者模組,請參閱 SrcSrv。
使用 AgeStore 減少快取大小
SrcSrv下載的任何來源檔案都會在偵錯會話結束之後保留在硬碟上。 若要控制來源快取的大小,AgeStore 工具可用來刪除超過指定日期的快取檔案,或減少快取大小低於指定大小的內容。 如需詳細資訊,請參閱 AgeStore。