2010-02-03 2 views
22

Я хочу установить точку останова на статический метод System.Threading.SynchronizationContext :: SetSynchronizationContext, чтобы я мог узнать, когда устанавливается контекст синхронизации.Как установить точку останова для метода в рамках .net

Однако я не могу найти, как установить точку останова в методе, к которому у меня нет исходного кода.

(Это должно быть легко !,, но когда я пытаюсь установить точку останова на методе из окна точек останова он делает распознает метод.)

ответ

35

Нажмите кнопку Debug, Windows, Breakpoints, нажмите кнопку Создать, перерыв в функции введите System.Threading.SynchronizationContext.SetSynchronizationContext и нажмите «ОК».

Это даст вам предупреждение, которое вы должны игнорировать. Я попробовал, и он работает.


Редактировать Яном Рингроуза

Я также должен был отключить «Enable Just My Code» настройки в конфигурации отладки.

Запустите Visual Studio 2008 и вызовите Tools> Options> Debugging> General. Если вы работаете под профилем Visual Basic, перед продолжением вам нужно будет установить флажок в диалоговом окне «Диалоговое окно« Параметры », расположенное в нижней левой части окна« Показать все настройки »(другие профили не будут иметь эту опцию). Установите следующие настройки: Отключите параметр «Включить только мой код»

+0

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

+0

Я не уверен, почему это произойдет. Я просто пробовал это сам, и он работал отлично. – SLaks

+0

спасибо, что у меня теперь есть работа, см. Мое редактирование на ваш ответ –

4

Можно отлаживать кластерные классы .NET. Все, что вам нужно сделать, это настроить VS.NET так, чтобы он мог загружать символы отладки для платформы .NET с одного из серверов Microsoft.

Вы не сможете установить точку останова внутри .NET-метода, хотя, но вы сможете перейти на другой метод платформы .NET и во время отладки, и как только вы войдете в эту метод (и VS.NET открыл файл, содержащий метод SetSynchronizationContext), вы сможете установить контрольную точку для этого метода.

Для получения информации о том, как настройки VS.NET, так что вы можете отлаживать рамки .NET, нажмите here

+0

+1, так как ссылка позволяет мне настроить параметр, который мне нужно включить, однако мне не нужны символы отладки. –

+0

Я использую VS2015, я выбрал загрузку только определенных символов, на самом деле я добавил только одну DLL, но он загружает все символы ... – Legends

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