ответ

5

Убедитесь, что ваш путь к символу содержит локальный каталог кеша, чтобы он не загружал символы с общедоступного символьного сервера Microsoft каждый раз, когда вы прикреплять.

Кроме того, я не пробовал это с помощью Visual Studio, но вы также можете установить модули идентификации exclusion list, для которых у вас нет символов.

1

Вы также можете загрузить символы для своей текущей платформы с debugging tools for windows page. Установите их в локальный каталог кешированных символов (например, c: \ windows \ symbols)

Вы также можете отключить автоматическую загрузку символов, как описано here.

Или что-то, что может быть быстрее, попробуйте запустить снаружи отладчика (с помощью Ctrl-F5), а затем присоедините его к процессу. У меня есть Visual Studio макрос, который я связываться с Ctrl-Shift-A, что я ударил, чтобы прикрепить к моему процессу в любой момент, и это отображается на это:

Function AttachToProcess(ByVal procname As String, ByVal quiet As Boolean) As Boolean 
    Dim attached As Boolean = False 
    Dim proc2 As EnvDTE80.Process2 

    ' Attaching natively, from http://blogs.msdn.com/jimgries/archive/2005/11/30/498264.aspx' 
    Dim dbg2 As EnvDTE80.Debugger2 = DTE.Debugger 
    Dim trans As EnvDTE80.Transport = dbg2.Transports.Item("Default") 
    Dim dbgeng(1) As EnvDTE80.Engine 
    dbgeng(0) = trans.Engines.Item("Native") 

    For Each proc2 In DTE.Debugger.LocalProcesses 
     If (proc2.Name.Contains(procname)) Then 
      proc2.Attach2(dbgeng) 
      attached = True 
      Exit For 
     End If 
    Next 

    If (attached = False And quiet = False) Then 
     MsgBox(procname + " is not running") 
    End If 
    Return attached 
End Function 

Sub AttachToMyProcess() 
    AttachToProcess("MyProcess.exe", True) 
End Sub 
4

В Visual Studio 2010 я уменьшил мой присоедините до времени процесса w3wp до почти момента, перейдя в Инструменты -> Параметры -> Отладка -> Символы, выбрав Только указанные модули и нажав OK. Это заставляет Visual Studio загружать символы для шести сборок, которые написала наша команда, и пропускает символы загрузки для остальных 146 модулей в процессе.

Примечание. У меня есть серверы Microsoft Symbol для проверки местоположений моего файла с символами (.pdb), и у меня есть кеширование символов для c: \ debugSymbols.

Смежные вопросы