Как достичь точки останова в приложении C ++, если это не стартовый проект - PullRequest
0 голосов
/ 01 июня 2018

У меня есть решение VS2010, которое содержит два проекта: C # windows form и C ++ console app.Проект C # является стартовым проектом и будет вызывать приложение C ++. Я также правильно установил приоритет сборки и зависимость, но точка останова в проекте C ++ не попадет в режим отладки, вот мой код C #:

static void Main()
{
    string CppPath = System.IO.Path.GetFullPath(System.IO.Path.Combine(Environment.CurrentDirectory.ToString(), @"..\..\..") + @"\Debug\");
    System.Diagnostics.ProcessStartInfo startInfo = new System.Diagnostics.ProcessStartInfo(CppPath + "CommunicationServerCpp.exe");
    startInfo.WorkingDirectory = CppPath;
    System.Diagnostics.Process.Start(startInfo);


    Application.EnableVisualStyles();
    Application.SetCompatibleTextRenderingDefault(false);
    Application.Run(new Form1());
}

Я не хочу разделять их на два решения, так как я могу это исправить?

1 Ответ

0 голосов
/ 01 июня 2018

В меню отладки есть «присоединить к процессу».

В консольном проекте вам нужно сделать функцию паузы / задержки, которая ожидает, пока вы не подключите отладчик VS.

Невозможно отладить 2 проекта в 1 экземпляре VS, поэтому необходимо запустить второй экземпляр.

...