Отладка с параметрами командной строки в Visual Studio

Я разрабатываю приложение командной строки C++ в Visual Studio, и мне нужно отладить его с помощью аргументов командной строки. На данный момент я просто запускаю сгенерированный EXE-файл с необходимыми мне аргументами (например, этот program.exe -file.txt), но таким способом я не могу отлаживать. Где я могу указать аргументы для отладки?

Стоит ли изучать PHP в 2026-2027 годах?
Стоит ли изучать PHP в 2026-2027 годах?
Привет всем, сегодня я хочу высказать свои соображения по поводу вопроса, который я уже много раз получал в своем сообществе: "Стоит ли изучать PHP в...
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
В JavaScript одним из самых запутанных понятий является поведение ключевого слова "this" в стрелочной и обычной функциях.
Приемы CSS-макетирования - floats и Flexbox
Приемы CSS-макетирования - floats и Flexbox
Здравствуйте, друзья-студенты! Готовы совершенствовать свои навыки веб-дизайна? Сегодня в нашем путешествии мы рассмотрим приемы CSS-верстки - в...
Тестирование функциональных ngrx-эффектов в Angular 16 с помощью Jest
В системе управления состояниями ngrx, совместимой с Angular 16, появились функциональные эффекты. Это здорово и делает код определенно легче для...
Концепция локализации и ее применение в приложениях React ⚡️
Концепция локализации и ее применение в приложениях React ⚡️
Локализация - это процесс адаптации приложения к различным языкам и культурным требованиям. Это позволяет пользователям получить опыт, соответствующий...
Пользовательский скаляр GraphQL
Пользовательский скаляр GraphQL
Листовые узлы системы типов GraphQL называются скалярами. Достигнув скалярного типа, невозможно спуститься дальше по иерархии типов. Скалярный тип...
546
1
420 797
10
Перейти к ответу Данный вопрос помечен как решенный

Ответы 10

Ответ принят как подходящий

Да, он находится в разделе Отладка на странице свойств проекта.

В Visual Studio с 2008 года: щелкните правой кнопкой мыши проект, выберите Характеристики, перейдите в раздел Отладка - там есть поле «Командные аргументы». (Совет: не решение, а проект).

Stackoverflow - единственная используемая документация MS!

Martin Beckett 13.01.2011 19:41

Будьте осторожны с этим. Это изменит не сам файл проекта, а файл vcxproj.user.

TheTrowser 13.05.2015 20:20

Примечание: если у вас есть несколько проектов в решении, не забудьте щелкнуть правой кнопкой мыши проект, который вы хотите запустить, и «Установить как запускаемый проект».

Lion Lai 17.04.2017 10:51

Пятно на. Но, видимо, в VS2017 это называется не «Отладка», а «Отладка». Возможно, мы никогда не узнаем почему.

OmarL 16.10.2017 17:43

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

Steve Smith 04.01.2018 17:51

Команда Аргументы. Фактический исполняемый файл указан в Командование. Проблема, с которой я столкнулся, заключалась в том, что я поместил исполняемый файл в Командные аргументы ... вздох. Спасибо за это @ lou-franco

Daisuke Aramaki 18.11.2020 21:41

@TheTrowser Можно ли установить аргументы из одного из обычно управляемых версий VS-файлов, например <project_name> .vcxproj?

Bernardo SOUSA 02.02.2021 17:26

@BernardoSOUSA Извините, я больше не работаю с VS. Возможно, кто-то еще может вам помочь.

DarkTrick 04.02.2021 15:25

Даже если вы запускаете исполняемый файл вне Visual Studio, вы все равно можете использовать команду «Присоединить» для подключения Visual Studio к уже запущенному исполняемому файлу. Это может быть полезно, например, когда ваше приложение запускается как подключаемый модуль в другом приложении.

Да, прикрепите с помощью Ctrl+Alt+P (или нажмите «Отладка»> «Присоединить к процессу ...»). Но это на самом деле не отвечает на вопрос OP;)

T_D 10.01.2017 15:51

Здесь представляет интерес Mozilla.org FAQ по отладке Mozilla в Windows.

Короче говоря, отладчик Visual Studio может быть вызван в программе из командной строки, что позволяет указывать аргументы командной строки при вызове программы командной строки непосредственно в командной строке.

Это выглядит следующим образом для Visual Studio 8 или 9 (Visual Studio 2005 или Visual Studio 2008 соответственно)

  devenv /debugexe 'program name' 'program arguments'

Также возможно иметь действие исследователя для запуска программы в отладчике Visual Studio.

В Visual Studio 2010 щелкните проект правой кнопкой мыши, выберите Характеристики, щелкните раздел свойств конфигурации на левой панели, затем щелкните Отладка, затем на правой панели появится поле для аргументов команды.

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

Microsoft Visual Studio Ultima 2013.

Вы можете просто перейти в меню DEBUG → Основные свойстваСвойства конфигурацииОтладка, и тогда вы увидите поле для аргументов командной строки.

Фактически, вы можете установить одни и те же входные аргументы для всех различных конфигураций, а не только для отладки.

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

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

Это вроде как работает и в MS VS 2015. Прежде чем я перешел к «Отладка-> {projectname} properties», мне пришлось открыть «Configuration Manager», доступный через раскрывающийся список, содержащий по умолчанию «Debug» и «Release». Появилось окно, в котором я смог добавить новые элементы «Конфигурация». Эти элементы доступны в «Отладка -> Свойства {projectname}».

AMartinNo1 11.06.2016 14:36

Щелкните правой кнопкой мыши проект в окне Решение Visual Studio, выберите «Отладка» (слева) и введите аргументы в поле «Командные аргументы»:

Enter image description here

В Visual Studio 2017 с консольным приложением .NET Core выполните следующие действия:

Щелкните правой кнопкой мыши проект в окне Решение, выберите «Свойства», Отлаживать (слева) и введите аргументы в поле «Аргументы приложения».

Обратите внимание, что они должны быть разделены пробелами.

Это может помочь некоторым людям, у которых все еще есть проблемы. Я использую Visual Studio 2015, и я мог передавать аргументы только тогда, когда я изменил определение argv.

Вместо

int main(int argc, char **argv){
}

Мне пришлось использовать

int main(int argc, char *argv[]){
}

Не знаю, зачем это было нужно, но работает.

Была та же проблема, но оба упомянутых выше объявления не работали. Решением было изменение платформы с x86 на x64, так как я работаю на 64-битной машине.

hfrmobile 06.03.2020 11:18

Начиная с VS 2015, используйте расширение Интеллектуальные аргументы командной строки. Этот плагин добавляет окно, которое позволяет вам включать и выключать аргументы:

Smart Command Line Arguments interface

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

Я нашел некоторые старые аргументы командной строки, хранящиеся в файле MyStartUpProject.csproj.user в исходной папке моего проекта запуска. Удаление этого файла не помогло, Visual Studio вернула его мне. Мне пришлось отредактировать аргументы в файле.

Значения в файле не отображались в VS, свойствах проекта, отладке. При вводе значений они добавлялись к значениям в таинственном файле MyStartUpProject.csproj.user.

Другие вопросы по теме