Visual Studio调试模式

时间:2016-09-25 23:18:34

标签: c# debugging visual-studio-2015

我使用以下代码重新启动我的控制台应用程序:

System.Diagnostics.Process.Start(Environment.GetCommandLineArgs()[0]);
Environment.Exit(0);

当我直接从其构建的可执行文件启动它时,这很好用。但是,如果我使用Visual Studio调试它,它不会。这是因为Visual Studio首先运行application.vhost.exe,然后启动我的应用程序。现在,如果我只运行此vhost.exe,它将无法运行我的应用程序。我假设我必须首先传递命令行参数。

我的问题如下:

  1. 如何在Visual Studio中调试程序时确保程序自动重启?
  2. 我考虑过使用#if(DEBUG)预处理程序指令仅在调试软件时传递.vhost.exe - 文件参数,但是我需要传递哪些参数才能使其正常工作?而且,这在我看来有点“脏” - 有更好的方法吗?

1 个答案:

答案 0 :(得分:1)

1)在项目属性中,禁用" Visual Studio Hosting Process"。然后没有" *。vshost.exe"将会被使用。 2)如果您调用System.Diagnostics.Debugger.Break(),将显示调试器选择对话框,您可以选择已运行的visual studio实例。