Событие после сборки при запуске (F5) в Visual Studio? - PullRequest
5 голосов
/ 15 декабря 2010

У меня есть событие после сборки, настроенное в Visual Studio 2010. У меня проблема в том, что событие не запускается, когда я использую Run (F5), чтобы начать отладку - кажется, что оно запускается, только если я явноBuild (F6).

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

Есть ли параметр, который управляет этим поведением?

Ответы [ 5 ]

11 голосов
/ 15 декабря 2010

Постбилды запускаются только после сборки. Поэтому, если ваши артефакты сборки обновлены, он не будет собираться и постблокировки не будут запускаться.

Если он не запускается даже при сборке, проверьте следующее:

В Visual Studio посмотрите Инструменты -> Параметры -> Проекты и решения -> Построить прогон.

Установлен ли флажок «Создавать только запускаемые проекты и зависимости при запуске»?

Попробуйте снять этот флажок.

Каково значение параметра «При запуске, когда проекты устарели»? Это должно быть «Запрашивать сборку» или «Всегда собирать», чтобы обязательно вызывать сборку при нажатии клавиши F5.

1 голос
/ 03 августа 2015

См. Visual Studio: запуск проекта C ++ после события сборки, даже если проект обновлен

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

1 голос
/ 15 декабря 2010

Работает только после успешной сборки. Вот почему он называется Post- Build Event.

Может быть, то, что вы пытаетесь достичь, может быть сделано по-другому. Не могли бы вы дать более подробную информацию? Что ты пытаешься сделать? Что вы хотите запускать перед каждым сеансом отладки и почему?

0 голосов
/ 05 января 2012

Я разработал простую надстройку VisualStudio, которая перехватывает команду запуска и перестраивает решение, прежде чем оно фактически запустит проект.

Возможно, это будет полезно для кого-то другого: https://skydrive.live.com/redir.aspx?id=3dc36fae9ccfb71f&resid=3DC36FAE9CCFB71F!112&parid=root (BuildAndRunAddin.zip)

0 голосов
/ 15 декабря 2010

Проверьте правильность команды.Простым примером будет:

copy "$(SolutionDir)$(ProjectName)\test.txt" ".\test.txt"
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...