【问题标题】:Visual Studio 2017 Debug Multiple Instances of the Same ProjectVisual Studio 2017 调试同一项目的多个实例
【发布时间】:2018-11-08 20:31:14
【问题描述】:

我创建了一个命令行应用程序,它根据命令行参数处理不同的作业。例如,“-w”启动一个 Web 项目,“-c”运行一个简单的命令行进程。

有时这两个项目必须相互交流。例如,我使用“-w”启动一个实例,然后启动一个 API Web 应用程序。我用“-c”启动第二个实例,命令行应用程序通过 API 连接并处理一些返回的数据。

我知道我可以同时调试多个不同的项目,但是有没有办法在 Visual Studio 中调试 SAME 项目的多个实例?

【问题讨论】:

  • 使用同一个项目启动两个 Visual Studio 实例。在每个实例中,您都可以为同一个项目启动一个调试会话(使用不同的参数)
  • 这肯定是一个有效的选项。只是好奇我是否遗漏了可以在单个 Visual Studio 实例中完成的任何内容。

标签: c# .net visual-studio debugging


【解决方案1】:

是的:

  1. 正常调试程序以获得第一个实例
  2. 在解决方案资源管理器中右键单击您的项目并选择Debug -> Start New Instance

您也可以在您的解决方案中启动其他程序。

【讨论】:

  • 当我这样做时,它会杀死第一个实例,而第二个实例永远不会停止。看起来某处可能存在冲突。
  • 另外,如果我可以让它们都像您所说的那样启动,我怎样才能让两个实例具有不同的命令行参数?
  • 不知道为什么它会杀死它。你用的是什么版本的VS?表示?您的程序中是否有任何代码在寻找第二个实例?这个答案对不同的论点没有帮助。我对此有一个想法。很快就会有新的答案。
  • 我正在运行 VS 2017 Pro。我的安装有点不对劲也就不足为奇了。
【解决方案2】:

如果您想向每个实例传递不同的启动参数,您可以执行以下操作:

对于您要运行的每个实例:

  1. 将新的空项目添加到同一解决方案中

  2. 在项目属性下 -> 调试指定

    • 命令 -> 例如项目.exe 的绝对路径
    • 命令参数
    • 最终还有其他选项,例如工作目录等。
  3. 在解决方案属性下选择多个启动项目并选择要同时调试的项目

现在,如果您按 F5,您可以调试所有您想要的项目,最终可以使用多个实例,每个实例都有特定的命令行参数。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-08-24
    • 2017-09-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多