Подтвердить что ты не робот

Как установить точку останова для метода в рамках .net

Я хочу установить точку останова на System.Threading.SynchronizationContext:: SetSynchronizationContext, поэтому я могу узнать, когда задан контекст синхронизации.

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

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

4b9b3361

Ответ 1

Нажмите "Отладка", "Windows", "Точки останова", "Создать", "Перерыв на функцию", введите System.Threading.SynchronizationContext.SetSynchronizationContext и нажмите "ОК".

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


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

Мне также пришлось отключить параметр "Включить только мой код" в конфигурации "Отладка".

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

Ответ 2

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

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

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