2008-12-02 2 views
4

При отладке мне нужно запустить внешнюю программу из целевого каталога сборки, и мне интересно, можно ли ее выполнить с помощью относительных путей.Возможно ли запустить внешнюю программу из целевого каталога при отладке?

В случае после сборки я следующее:

 
IF NOT "$(ConfigurationName)"=="Debug" GOTO End 
:CopyExecutable 
copy "$(SolutionDir)\Source\Lib\MyExecutable.exe" "$(TargetDir)" 
:End 

мне нужно запустить MyExecutable.exe, когда я отладки так во вкладке отладки для свойств проекта, которые я поставил «Начать внешнюю программу» для MyExecutable.exe, но при сбое отладки возникает ошибка. Кажется, мне нужно поставить полный путь для этого.

Есть ли способ сделать это, используя относительные пути?

+0

Для тех, у кого еще есть эта проблема; см. [this] (http://stackoverflow.com/questions/4774745/using-relative-path-for-start-external-program-in-vs-net-2010#comment37905907_4774745) или [это] (http: // stackoverflow.com/questions/4774745/using-relative-path-for-start-external-program-in-vs-net-2010#comment37905830_5261113) комментарий. – 2014-06-30 10:38:02

ответ

-1

Вы пытались что-то вроде $ (TargetDir) \ .. \ Lib?

+2

Невозможно использовать $ (TargetDir) в пути к программе запуска – Fadeproof 2009-01-05 11:14:03

2

(_Disclaimer:. Все направления основаны на VS08 Вещи могут быть в разных местах, в предыдущих или будущих версиях)

Я получаю ощущение, что ваша другая программа не шаг после сборки необходимо запускать перед отладкой, а скорее программу, которая также должна запускаться (сервер или что-то еще), а также , а вы отлаживаете.

Используйте пустой проект C++ Make-File (вы можете использовать другие типы проектов, но по умолчанию это не имеет никакого фактического здания, поэтому я считаю его самым легким) и изменяют его свойства запуска (Project/Properties - > Debug) для запуска другого приложения. Затем установите решение для запуска нескольких проектов (Solution/Properties -> Common Properties -> Startup Project).

5

Путь «Начать внешнюю программу» относится к вашему каталогу решений (в VS2005 в любом случае). Таким образом, вы можете просто поставить:

Source\Lib\MyExecutable.exe 

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

+0

Для меня я сделал это, и все получилось нормально. Но потом я снова открыл решение в другой день, и теперь он говорит, что он не может найти файл. Настройка точно такая же, как и она (Solution-relative, single sub-folder), и файл есть. У кого-нибудь была эта проблема? Никакие файлы, папки или пути не были изменены с тех пор (отслеживается Git). – Michael 2018-03-01 17:03:56

Смежные вопросы