Visual studio Visual Studio 2015-调试需要额外编译

Visual studio Visual Studio 2015-调试需要额外编译,visual-studio,debugging,visual-studio-2015,Visual Studio,Debugging,Visual Studio 2015,我刚从Visual Studio 2013升级到Visual Studio 2015,我注意到了一个真正困扰我的差异: 我们有一个大的解决方案,我们通常做“全部重建”操作,然后当我们编辑一个文件时,我们只是重建我们刚刚修改过的库,然后我们开始调试客户端 这在VS2013中运行得非常好,但现在,在VS2015中,即使我这样做了: 重建所有 之后,右键单击调试 它尝试重建一些DLL。更糟糕的是,如果我需要两个实例,我会执行全部重建、一次调试和第二次调试,它会尝试第二次编译(这会失败,因为第一次调试正

我刚从Visual Studio 2013升级到Visual Studio 2015,我注意到了一个真正困扰我的差异:

我们有一个大的解决方案,我们通常做“全部重建”操作,然后当我们编辑一个文件时,我们只是重建我们刚刚修改过的库,然后我们开始调试客户端

这在VS2013中运行得非常好,但现在,在VS2015中,即使我这样做了:

  • 重建所有
  • 之后,右键单击调试
  • 它尝试重建一些DLL。更糟糕的是,如果我需要两个实例,我会执行全部重建、一次调试和第二次调试,它会尝试第二次编译(这会失败,因为第一次调试正在使用DLL)

    在我们的例子中,我们有多个客户机相互交互,所以我们通常先调试一个客户机,然后再调试另一个客户机。但是它们有一些共同的项目,第二个调试客户机尝试重建这些项目


    有什么方法可以避免这种行为吗???这在VS2015中对我们来说是全新的。

    您必须仔细研究详细的生成跟踪,以了解它决定再次编译的原因。工具>选项>项目和解决方案>生成和运行>MSBuild项目生成输出详细设置。@Hanpassant谢谢,我不知道。我得到了以下信息:“1>项目“XXX”不是最新的。CopyLocal参考源“E:\Dev\WS1\Trunk\Lib\DevExpress\DevExpress.Printing.v15.1.Core.dll”比“E:\Dev\WS1\Trunk\Debug\x86\DevExpress.Printing.v15.1.Core.dll”更新。"但是DevExpress不是我们更新的东西,所以为什么它会被认为是更新的呢?这两个dll副本是一样的吗?为什么它们有不同的时间戳?有人正在将那个dll复制到你的Debug\x86文件夹中;我会找出-从哪里来的?@VladFeinstein他们有相同的大小,相同的修改日期,相同的程序集版本,所以我认为它是安全的o说它们是安全的。这个dll是我们几个项目的参考,它们都是从同一个来源复制的。你是说在这种情况下,
    A比B更新的声明是错误的吗?你提到了
    修改的日期,但是
    创建的日期和
    访问的日期呢?