Примечание.
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
В Visual Studio можно указать различные параметры для поведения отладчика, включая отображение переменных, отображение определенных предупреждений, как устанавливаются точки останова и влияние остановок на выполнение программ. Параметры отладчика указываются в меню"Параметры>".
Вы можете восстановить все параметры по умолчанию с помощью Инструменты > Импорт и экспорт настроек > Сбросить все настройки. Чтобы сбросить подмножество настроек, сохраните их с помощью мастера импорта и экспорта настроек перед внесением изменений, которые хотите протестировать, а затем импортируйте сохраненные настройки.
Настройка параметров отладки
- Откройте панель"Параметры>" и разверните раздел">".
- Откройте диалоговое окно"Параметры>" и разверните раздел "Отладка".
Выберите категорию параметров отладки, которые требуется настроить, например "Общие", "Окно вывода", "Символы" и т. д.
Наиболее распространенные варианты находятся в категории "Общие ". Дополнительные сведения см. в разделе "Общие", "Отладка", "Параметры".
Выберите или снимите нужный параметр или параметры. При необходимости нажмите кнопку "ОК ", чтобы применить изменения.
Чтобы получить справку о параметрах, нажмите клавишу F1 .
Параметры отладчика
Можно задать следующие параметры общие:
Запрос перед удалением всех точек останова: требуется подтверждение перед выполнением команды удалить все точки останова.
Прерывать все процессы при разрыве одного процесса: одновременно прерывает все процессы, к которым подключен отладчик, при возникновении разрыва.
Остановка при пересечении исключений между доменом приложения или управляемыми/неуправляемыми границами: в управляемой или смешанной отладке среда CLR может перехватывать исключения, пересекающие границы домена приложения или управляемые/неуправляемые границы, если выполняются три условия:
Условие 1: Когда машинный код вызывает управляемый код с помощью COM-взаимодействия, и управляемый код генерирует исключение. См. Введение в КОМ-Interop.
Условие 2: Когда управляемый код, выполняющийся в домене приложения 1, вызывает управляемый код в домене приложения 2, и код в домене приложения 2 выбрасывает исключение. См. Программирование с доменами приложений.
Условие 3. При вызове функции с помощью отражения код вызывает исключение. См. отражение.
Для условий 2 и 3 исключение иногда перехватывается управляемым кодом
mscorlib, а не средой CLR. Этот параметр не влияет на нарушение исключений, пойманныхmscorlib.
Включить отладку на уровне адресов: включает расширенные функции для отладки на адресном уровне (окно Дизассемблера, окно Регистров и точки останова адресов).
- Показать дизассемблер, если исходный код недоступен: автоматически отображает окно дизассемблера при отладке кода, для которого исходный код недоступен.
Включение фильтров точек останова: позволяет задавать фильтры на точках останова, чтобы они влияли только на определенные процессы, потоки или компьютеры.
использовать новый вспомогательный элемент исключений: включает элемент помощника по исключениям, заменяющий ассистента по исключениям. (Вспомогательное средство исключений поддерживается начиная с Visual Studio 2017)
Замечание
Для управляемого кода этот параметр ранее был назван Включить ассистент исключений.
Включить только мой код: отладчик отображает и выполняет шаги только в "Мой код", игнорируя системный код и другой код, который оптимизирован или не содержит символов отладки.
- Предупреждать, если при запуске отсутствует пользовательский код (только для управляемого кода): при отладке с включенной функцией "Просто мой код" этот параметр уведомляет об отсутствии пользовательского кода ("Мой код").
Включить пошаговое выполнение исходного кода .NET Framework: Это позволяет отладчику выполнить пошаговое выполнение в исходный код .NET Framework. Включение этого параметра автоматически отключает функцию Just My Code. Символы .NET Framework загружаются в расположение кэша. Можно изменить расположение кэша в разделе "Отладка>Символы>Расположение поиска" с опцией Кэшировать символы в этом каталоге.
Включить пошаговое выполнение исходного кода .NET Framework: Это позволяет отладчику выполнить пошаговое выполнение в исходный код .NET Framework. Включение этого параметра автоматически отключает функцию Just My Code. Символы .NET Framework загружаются в расположение кэша. Расположение кэша можно изменить в разделе «Отладочные>символы» с помощью опции «Кэширование символов в этом каталоге».
Автоматически деоптимизировать отлаживаемые функции, если это возможно (.Net 8+, динамическая отладка C++): при выборе опции отлаживаемые функции деоптимизируются для более полного процесса отладки.
Подавление оптимизации JIT при загрузке модуля (только для управляемого кода): Отключает оптимизацию JIT управляемого кода при загрузке модуля и компиляции JIT, когда подключен отладчик. Отключение оптимизации может упростить отладку некоторых проблем, хотя и за счет производительности. Если вы используете функцию "Мой код", подавление оптимизации JIT может привести к тому, что код, который не является пользовательским, будет отображаться как код пользователя ("Мой код"). Дополнительные сведения см. статью оптимизация JIT и отладка.
Настройте использование предварительно скомпилированных образов (только управляемых): при выборе этой ссылки откроется диалоговое окно "Параметры отладчика Visual Studio ". Чтобы включить этот параметр, установите флажок "Запретить использование предварительно скомпилированных образов" в флажок загрузки модуля и нажмите кнопку "ОК". При выборе этой опции отключается загрузка предварительно скомпилированных образов NGEN или RDR (готовых к загрузке).
Запрет использования заранее скомпилированных изображений при загрузке модуля (только для управляемых, сбрасывается при перезапуске): при выборе этого параметра отключается загрузка заранее скомпилированных изображений NGEN или RDR.
Настройка JIT-отладки. При выборе этой ссылки откроется диалоговое окно "Параметры отладчика Visual Studio ". Чтобы включить этот параметр, установите флажок Включить JIT-отладку для этих типов кода. Выберите один или несколько типов кода: Native and Managed (.NET Framework) и нажмите кнопку "ОК". Этот параметр включает отладку технологии "Just-in-Time" (JIT) для выбранных типов кода.
Перейти через свойства и операторы (только для управляемого кода): предотвращает вход отладчика в свойства и операторы в управляемом коде.
Включить оценку свойств и другие неявные вызовы функций: включает автоматическую оценку свойств и неявные вызовы функций в окнах переменных и диалоговое окно QuickWatch.
- Вызов функции преобразования строк для объектов в окнах переменных: выполняет неявный вызов преобразования строк при оценке объектов в окнах переменных. Результат отображается в виде строки вместо имени типа. Применяется только при отладке в коде C#. Этот параметр можно переопределить атрибутом DebuggerDisplay (см. раздел "Использование атрибута DebuggerDisplay").
Включить поддержку исходного сервера. Сообщает отладчику Visual Studio получать исходные файлы с исходных серверов, реализующих протокол SrcSrv (srcsrv.dll). Team Foundation Server и средства отладки для Windows — это два исходных сервера, реализующих протокол. Дополнительные сведения о настройке SrcSrv см. в документации SrcSrv. Кроме того, см. раздел Указание символов (.pdb) и исходных файлов.
Это важно
Так как чтение файлов .pdb может привести к выполнению произвольного кода в этих файлах, убедитесь, что вы доверяете серверу.
Печатать диагностические сообщения сервера исходного кода в окне вывода: если включена поддержка сервера исходного кода, этот параметр активирует отображение диагностических сообщений.
Разрешить исходный сервер для сборок с частичным доверием (только управляемые): При включенной поддержке исходного сервера этот параметр переопределяет поведение по умолчанию, которое не позволяет извлекать исходные данные для сборок с частичным доверием.
Всегда запускать команды сервера из ненадежного источника без запроса: при включенной поддержке исходного сервера этот параметр переопределяет поведение по умолчанию при выполнении ненадежной команды.
Включить поддержку Source Link: сообщает отладчику Visual Studio загрузить исходные файлы для PDB-файлов, содержащих сведения о Source Link. Для получения дополнительных сведений об исходной ссылке см. спецификацию исходной ссылки.
Это важно
Так как ссылка на источник загружает файлы с помощью http или https, убедитесь, что вы доверяете PDB-файлу .
- возвращаться к аутентификации с помощью диспетчера учетных данных Git для всех запросов Source Link: если включена поддержка Source Link, а запрос Source Link завершается ошибкой аутентификации, Visual Studio затем вызывает диспетчер учетных данных Git.
Выделение всей исходной строки для точек останова и текущей инструкции (только для C++): когда отладчик выделяет точку останова или текущую инструкцию, он выделяет всю строку.
Требовать, чтобы исходные файлы соответствовали исходной версии: указывает отладчику проверить, что исходный файл соответствует версии исходного кода, используемой для сборки исполняемого файла, который вы отлаживаете. Если версия не соответствует, вам будет предложено найти соответствующий источник. Если соответствующий источник не найден, исходный код не отображается во время отладки.
Перенаправить весь текст окна вывода в окно немедленного выполнения: отправляет все сообщения отладчика, которые обычно отображаются в окне вывода в окно немедленного выполнения.
Показать необработанную структуру объектов в окнах переменных: отключает все настройки представления структуры объектов. Дополнительные сведения о настройке представлений см. в статье Создание пользовательских представлений управляемых объектов.
Включение отладки JavaScript для ASP.NET (Chrome и Edge): включает отладчик скрипта для ASP.NET приложений. При первом использовании в Chrome может потребоваться войти в браузер, чтобы включить установленные расширения Chrome. Отключите этот параметр, чтобы вернуться к прежнему поведению.
Включите отладку JavaScript для ASP.NET (Chrome, Edge и IE): включает отладчик скрипта для приложений ASP.NET. При первом использовании в Chrome может потребоваться войти в браузер, чтобы включить установленные расширения Chrome. Отключите этот параметр, чтобы вернуться к прежнему поведению.
Загрузка экспортов dll (только для нативной версии): Загружает таблицы экспорта dll. Сведения о символах из таблиц экспорта dll могут быть полезны, если вы работаете с сообщениями Windows, процедурами Windows (WindowProcs), COM-объектами или маршалингом или любой библиотекой DLL, для которой нет символов. Чтение сведений о экспорте библиотеки DLL требует дополнительных накладных расходов. Поэтому эта возможность отключена по умолчанию.
- Чтобы узнать, какие символы доступны в таблице экспорта библиотеки DLL, используйте
dumpbin /exports. Символы доступны для любой системной 32-разрядной библиотеки dll. Считывая выходныеdumpbin /exportsданные, можно увидеть точное имя функции, включая нефанумерные символы. Это полезно для установки точки останова для функции. Имена функций из таблиц экспорта dll могут отображаться усеченными в другом месте отладчика. Вызовы перечислены в порядке вызова с текущей функцией (наиболее глубоко вложенной) в верхней части. Дополнительные сведения см. в разделе dumpbin /exports.
Игнорировать исключения доступа к памяти GPU, если записанные данные не изменили значение.: Игнорирует условия гонки, обнаруженные во время отладки, если данные не изменились. Дополнительные сведения см. в разделе Отладка кода GPU.
Предупреждение при использовании пользовательских визуализаторов отладчика для потенциально небезопасных процессов (только управляемые процессы): Visual Studio предупреждает при использовании пользовательского визуализатора, выполняющего код в отлаживаемом процессе, так как он может выполнять небезопасный код.
Включить отладочную кучу Windows (только для нативного кода): для улучшения диагностики кучи. Включение этого параметра влияет на производительность отладки.
Включить средства диагностики при отладке: во время отладки появится окно средств диагностики .
Отображение истекшего времени PerfTip во время отладки: в окне кода отображается истекшее время вызова заданного метода при отладке.
Включение горячей перезагрузки: включает функцию горячей перезагрузки во время отладки.
Автоматическое применение изменений при продолжении (только для Native): Visual Studio автоматически компилирует и применяет все непримененные изменения кода, внесенные при продолжении процесса из состояния останова. Если не выбрано, вы можете применить изменения, использовав элемент Применить изменения кода в меню Отладка.
Предупреждать об устаревшем коде (только для нативного кода): Предупреждения об устаревшем коде.
Показывать кнопку "Выполнить до щелчка" во время отладки: при выборе этого параметра кнопка «Выполнить до щелчка» отображается в процессе отладки.
Автоматическое закрытие консоли при остановке отладки: Указывает Visual Studio закрыть консоль в конце сеанса отладки.
Включить быструю оценку выражений (только для управляемых): позволяет отладчику выполнять более быструю оценку путем имитации выполнения простых свойств и методов.
Загрузка символов отладки во внешнем процессе (только для нативного кода): активирует эту оптимизацию памяти во время отладки.
Выводите Visual Studio на передний план при остановке в отладчике: переключает Visual Studio на передний план при паузе в отладчике.
Сохраняйте развернутые советы по данным открытыми, пока не щелкнете в другом месте. Если этот параметр выбран, развернутый совет по данным остается открытым, пока не щелкнете в другом месте.
Включите узел внешних источников в обозревателе решений: при выборе отображает декомпилированные коды под узлом внешних источников.
Автоматическое декомпилирование в исходный код при необходимости (только для управляемого): при выборе автоматически декомпилирует внешний код .NET при переходе к внешнему коду.
Выделите текущую инструкцию и инструкции с точками останова: когда отладчик выделяет точку останова или текущую инструкцию, она выделяет всю строку.
Показать значения переменных непосредственно в редакторе во время отладки: отображение значений переменных в выделенной строке в отладчике.
Показ значений возврата на лету: отображение значений возврата для выделенной инструкции в отладчике.
Показывать значения аргументов функции в строке: отображать значения аргументов функции в выделенной строке в отладчике.
Отображение значений выражений в текущей строке: отображение значений выражений в текущей строке в режиме отладки.
Параметры, доступные в более ранних версиях Visual Studio
Если вы используете более раннюю версию Visual Studio, некоторые другие варианты могут присутствовать.
Включить средства разработчика Microsoft Edge для приложений JavaScript UWP (экспериментальные): Включает средства разработчика для приложений JavaScript UWP в Microsoft Edge.
Включить классический отладчик JavaScript для ASP.NET в Chrome: включает классический отладчик JavaScript для приложений ASP.NET. При первом использовании в Chrome может потребоваться войти в браузер, чтобы включить установленные расширения Chrome.
Включить помощник по исключениям: для управляемого кода включает функцию помощника по исключениям. Начиная с Visual Studio 2017 помощник по исключениям заменил ассистент по исключениям.
Размотайте стек вызовов при необработанных исключениях: это вызывает окно стека вызовов, чтобы откатить стек вызовов до точки перед возникновением необработанного исключения.
Использовать экспериментальный способ запуска отладки Chrome JavaScript при запуске Visual Studio в качестве администратора: Указывает Visual Studio попробовать новый метод запуска Chrome во время отладки JavaScript-кода.
Предупреждать, если при запуске нет символов (только для собственных приложений): Отображается диалоговое окно предупреждения при отладке программы, для которой отладчик не имеет информации о символах.
Предупреждать, если отладка скрипта отключена при запуске: отображается диалоговое окно предупреждения при запуске отладчика с отключенной отладкой скрипта.