Поделиться через


Параметры проекта для конфигурации отладки C++

Можно изменить параметры проекта для отладочной конфигурации C или Visual C++ в диалоговом окне Страницы свойств, как описано в разделе Практическое руководство. Настройка конфигураций отладки и выпуска. В следующих таблицах показано, где в диалоговом окне Страницы свойств можно найти параметры, связанные с отладчиком.

Предупреждение

Параметры отладки проекта в категории Свойства конфигурации/Отладка для приложений для Магазина Windows и компонентов, написанных на C++, будут другими.См. раздел Запуск сеанса отладки для приложения Магазина в Visual Studio (VB, C#, C++ и XAML) в Центре разработки для Windows.

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

При сохранении решения каждый параметр свойств, связанных с отладкой, автоматически записывается и сохраняется в индивидуальном пользовательском файле (.vcxproj.user) для данного решения.

Папка "Свойства конфигурации" (категория "Отладка")

Параметр

Описание

Загружаемый отладчик

Позволяет выбрать отладчик для запуска из следующих вариантов:

  • Локальный отладчик Windows

  • Удаленный отладчик Windows

  • Отладчик веб-браузера

  • Отладчик веб-служб

Команда (локальный отладчик Windows)

Задает команду для запуска отлаживаемой программы на локальном компьютере.

Удаленная команда (удаленный отладчик Windows)

Путь к EXE-файлу на удаленном компьютере. Путь следует вводить в том же виде, в каком он вводился бы на удаленном компьютере.

Аргументы команды (локальный отладчик Windows и удаленный отладчик Windows)

  • Задает аргументы для указанной выше команды.

В этом поле можно использовать следующие операторы перенаправления:

< file

Чтение потока stdin из файла.

> file

Запись потока stdout в файл.

>> file

Добавление потока stdout в файл.

2> file

Запись потока stderr в файл.

2>> file

Добавление потока stderr в файл.

2> &1

Перенаправление вывода потока stderr (2) в то же место назначения, что и у потока stdout (1).

1> &2

Перенаправление вывода потока stdout (1) в то же место назначения, что и у потока stderr (2).

В большинстве случаев эти операторы применимы только для консольных приложений.

Рабочая папка

Указывает рабочий каталог отлаживаемой программы относительно каталога проекта, в котором расположен исполняемый EXE-файл. Если оставить это поле пустым, каталогом проекта будет являться рабочий каталог. При удаленной отладке каталог проекта располагается на удаленном сервере.

Присоединиться (локальный отладчик Windows и удаленный отладчик Windows)

Указывает, запускать ли приложение или выполнять присоединение к этому приложению. По умолчанию выбрано значение "Нет".

Имя удаленного сервера (удаленный отладчик Windows)

Задает имя компьютера (не вашего), на котором предполагается производить отладку приложения.

Макрос сборки "RemoteMachine" принимает значение этого свойства. Дополнительные сведения см. в разделе Макрос для команд и свойств сборки.

Подключение (удаленный отладчик Windows)

Выбор типа подключения для удаленной отладки: стандартное подключение или подключение без аутентификации. Укажите имя удаленного компьютера в поле Имя удаленного сервера. Доступны следующие типы подключения:

  • Удаленный доступ с аутентификацией Windows

  • Удаленный доступ без аутентификации Windows (только машинный код)

Примечание.   При удаленной отладке без аутентификации удаленный компьютер может стать уязвимым с точки зрения безопасности. Режим аутентификации Windows является более безопасным.

Дополнительные сведения см. в разделе Установка удаленной отладки.

HTTP URL (отладчик веб-служб и отладчик веб-браузера)

Указывает URL-адрес, по которому расположен отлаживаемый проект.

Тип отладчика

Указывает тип используемого отладчика: Только машинный код, Только управляемый код, Только графический процессор, Смешанный код, Авто (по умолчанию) или Скрипт.

  • Только машинный код — используется для неуправляемого кода C++.

  • Только управляемый код — используется для кода, выполняемого в среде CLR (управляемого кода).

  • Смешанный код — вызывает отладчики как для управляемого, так и для неуправляемого типов кода.

  • Авто — определяет тип отладчика на основании информации компилятора и исполняемого файла.

  • Скрипт — вызывает отладчик для скриптов.

  • Только графический процессор — для кода C++ AMP, который выполняется на устройстве GPU или на средстве программной прорисовки DirectX. Подробнее см. раздел Отладка кода GPU.

Среда (локальный отладчик Windows)

Указывает переменные среды для отлаживаемой программы. Используйте стандартный синтаксис переменной среды (например, PATH="%SystemRoot%\..."). Эти переменные переопределяют системную среду или объединяются с ее переменными, в зависимости от значения параметра Объединение среды. Если щелкнуть по столбцу параметров, появится элемент "Изменить...". Щелкните эту ссылку, чтобы изменить переменные среды.

Объединение среды (локальный отладчик Windows)

Определяет, будут ли переменные, указанные в поле Среда, объединяться с переменными среды, определяемыми операционной системой. По умолчанию выбрано значение "Да".

Отладка SQL (все, за исключением отладчика MPI-кластера)

Включает отладку SQL-процедур из приложения Visual C++. По умолчанию выбрано значение "Нет".

Тип ускорителя отладки (только для отладки GPU)

Указывает устройство GPU для отладки. При установке драйверов устройств для совместимых устройств GPU добавляются дополнительные параметры. По умолчанию установлено значение "Программный эмулятор GPU".

Стандартное поведение точек останова для GPU (только для отладки GPU)

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

Ускоритель по умолчанию для AMP (только для отладки GPU)

Определяет ускоритель, по умолчанию используемый для AMP при отладке кода GPU. Выберите WARP software accelerator, чтобы выяснить, вызвана ли проблема оборудованием или драйвером, а не кодом.

Каталог развертывания (удаленный отладчик Windows)

Задает путь на удаленном компьютере, куда будут копироваться выходные данные проекта перед запуском. Путь может быть сетевой папкой на удаленном компьютере, либо это может быть путь к папке на удаленном компьютере. По умолчанию это поле пусто, что означает, что выходные данные проекта не копируются в сетевую папку. Чтобы включить развертывание файлов, необходимо также установить флажок Развертывание в диалоговом окне Диспетчера конфигураций. Дополнительные сведения см. в разделе Практическое руководство. Создание и изменение конфигураций.

Дополнительные файлы развертывания (удаленный отладчик Windows)

Если в поле "Каталог развертывания" задан каталог развертывания, в этом поле указывается список дополнительных файлов (разделяемых точкой с запятой), которые должны копироваться в каталог развертывания. По умолчанию это поле пусто, что означает, что никакие дополнительные файлы в каталог развертывания не копируются. Чтобы включить развертывание файлов, необходимо также установить флажок Развертывание в диалоговом окне Диспетчера конфигураций. Дополнительные сведения см. в разделе Практическое руководство. Создание и изменение конфигураций.

Развертывание отладочных библиотек времени выполнения Visual C++ (удаленный отладчик Windows)

Если в поле "Каталог развертывания" задан каталог развертывания, данный параметр указывает, должны ли библиотеки времени выполнения отладки Visual C++ для текущей платформы копироваться в сетевую папку. Значением по умолчанию является "Да".

Папка "C/C++" (категория "Общие")

Параметр

Описание

Формат отладочной информации (/Z7, /Zd, Zi, /ZI)

Указывает тип отладочных данных, создаваемых для проекта.

По умолчанию установлен формат /ZI, означающий создание базы данных программы (PDB) в формате, совместимом с операцией "Изменить и продолжить". Дополнительные сведения см. в разделе /Z7, /Zd, /Zi, /ZI (формат отладочной информации).

Папка "C/C++" (категория "Оптимизация")

Параметр

Описание

Оптимизация

Указывает, должен ли компилятор оптимизировать создаваемый им код. При оптимизации исполняемый код изменяется. Оптимизированный код не совпадает в точности с исходным кодом. Это усложняет отладку.

По умолчанию установлено значение Отключено (/0D), то есть оптимизация не производится. Можно производить разработку при отключенной оптимизации и включить оптимизацию только при создании рабочей версии программы.

Папка "Компоновщик" (категория "Отладка")

Параметр

Описание

Создавать отладочную информацию (/DEBUG)

Указывает компоновщику необходимость включать сведения, формат которых задается ключом /Z7, /Zd, Zi или /ZI.

Создавать файл базы данных программы (/PDB:)

В этом поле вводится имя PDB-файла. Должен быть выбран формат отладочной информации ZI или /Zi.

Удалить закрытые символы (/PDBSTRIPPED:FILENAME)

В этом поле задается имя PDB-файла в том случае, если в PDB-файл не должны выводиться закрытые символы. Этот параметр создает второй файл базы данных программы (PDB) при сборке образа программы с любыми параметрами компилятора или компоновщика, при которых создается PDB-файл (такими как /DEBUG, /Z7, /Zd или /Zi). Второй PDB-файл не содержит символов, которые нежелательно передавать клиентам. Дополнительные сведения см. в разделе /PDBSTRIPPED (удалить закрытые символы).

Создавать файл сопоставления (/MAP)

Указывает компоновщику на необходимость создания файла сопоставления во время компоновки. По умолчанию выбрано значение "Нет". Дополнительные сведения см. в разделе /MAP (создание файла сопоставления).

Имя файла сопоставления (/MAP:имя)

Если выбрано создание файла сопоставления, в этом поле можно указать имя файла сопоставления. Дополнительные сведения см. в разделе /MAP (создание файла сопоставления).

Сопоставлять экспортируемые функции (/MAPINFO:EXPORTS)

Включение экспортируемых функций в файл сопоставления. По умолчанию выбрано значение "Нет". Дополнительные сведения см. в разделе /MAPINFO (включение данных в файл сопоставления).

Отлаживаемая сборка (/ASSEMBLYDEBUG)

Задает параметры для параметра компоновщика /ASSEMBLYDEBUG. Ниже приведены возможные значения.

  • Атрибут Debuggable не порождается.

  • Отслеживание во время выполнения и отключение оптимизации (/ASSEMBLYDEBUG). Это значение установлено по умолчанию.

  • Нет отслеживания во время выполнения и отключения оптимизации (/ASSEMBLYDEBUG:DISABLE).

  • <наследовать от родителя или от значений по умолчанию для проекта>.

  • Дополнительные сведения см. в разделе /ASSEMBLYDEBUG (добавление атрибута DebuggableAttribute).

Эти параметры в папке "Свойства конфигурации" (категория "Отладка") можно изменить программным путем с помощью интерфейса Microsoft.VisualStudio.VCProjectEngine.VCDebugSettings. Дополнительные сведения см. в разделе VCDebugSettings.

См. также

Ссылки

/ASSEMBLYDEBUG (добавление атрибута DebuggableAttribute)

Другие ресурсы

Отладка машинного кода

Параметры отладки и подготовка

Создание проектов Visual C++ и управление ими

Макросы для команд и свойств построения