防火牆和 Proxy 伺服器
如果您使用 SymSrv 來存取符號,而且您的電腦位於使用 Proxy 伺服器或符號存放區不在防火牆的網路上,可能需要驗證,才能進行資料傳輸。
當 SymSrv 收到驗證要求時,偵錯工具可以顯示驗證要求,或根據要求的設定方式自動拒絕要求。
SymSrv 已整合 Proxy 伺服器的支援。 它可以使用預設 Proxy 伺服器 SymProxy,也可以使用您選擇的另一個 Proxy 伺服器。
驗證要求
偵錯工具可以設定為允許驗證要求。 當防火牆或 Proxy 伺服器要求授權時,會出現對話方塊。 您必須輸入某種資訊, (通常是使用者名稱和密碼,) 偵錯工具才能下載符號。 如果您輸入的資訊不正確,對話方塊將會重新顯示。 如果您選取 [ 取消] 按鈕,對話方塊將會消失,且不會傳輸符號資訊。
如果偵錯工具設定為拒絕所有驗證要求,則不會顯示任何對話方塊,而且如果需要驗證,則不會傳送任何符號。
如果您拒絕驗證要求,或偵錯工具自動拒絕驗證要求,SymSrv 將不會再嘗試連絡符號存放區。 如果您想要更新連絡人,您必須重新開機偵錯會話,或使用 !symsrv 關閉。
注意 如果您使用 KD 或 CDB,驗證對話方塊可能會出現在開啟的視窗後面。 如果發生這種情況,您可能必須移動或最小化某些視窗,才能尋找此對話方塊。
在 WinDbg 中,預設允許驗證要求。 在 KD 和 CDB 中,預設會自動拒絕驗證要求。
若要允許驗證要求,請使用 !sym 提示 或 .symopt-0x80000。 若要拒絕所有要求,請使用 !sym 提示關閉 或 .symopt+0x80000。 若要顯示目前的設定,請使用 !sym。
您必須在對驗證許可權狀態進行任何變更之後,使用 .reload (重載模組) 。
選擇 Proxy 伺服器
若要選取 Windows 的預設 Proxy 伺服器,請在 主控台中開啟[網際網路選項],選取 [連線] 索引標籤,然後選取 [LAN 設定] 按鈕。 然後,您可以輸入 Proxy 伺服器名稱和埠號碼,或選取 [ 進階 ] 來設定多個 Proxy 伺服器。 如需詳細資訊,請參閱 Internet Explorer 的說明檔。
若要選取要使用的 symsrv 特定 Proxy 伺服器,請將_NT_SYMBOL_PROXY環境變數設定為 Proxy 伺服器的名稱或 IP,後面接著冒號,然後設定埠號碼。 例如:
set _NT_SYMBOL_PROXY=myproxyserver:80
以這種方式選擇 Proxy 伺服器時,任何使用 SymSrv 存取符號伺服器的 Windows 偵錯工具都會使用它。 它也會由任何其他使用 DbgHelp 作為其符號處理常式的偵錯工具使用。 此設定不會影響其他程式。