在Visual Studio中,如何在不构建项目的情况下调试项目

时间:2011-11-17 23:15:40

标签: visual-studio visual-studio-2008

这适用于Visual Studio 2008。

我将Tools|Projects and Solutions|Build and Run|On Run, when projects are out of date设置为Always build,因为这是我通常想要的。但是,有些时候(当我在版本控制中检查历史版本时)我想跳过构建过程。是否存在一个魔术击键,它将覆盖完全一个调试会话的构建步骤,因此我不必更改设置并将其更改回来?

6 个答案:

答案 0 :(得分:38)

请右键单击解决方案名称并转到Properties -> Configuration Properties -> Configuration,清除项目的“构建”复选框。

答案 1 :(得分:8)

在VS2013中,它是:右键单击solution -> Configuration Manager,然后清除项目的Build复选框。

答案 2 :(得分:1)

我所做的是:在代码中设置System.Diagnostics.Debugger.Launch()行,单独运行程序,在VS中附加调试器。

答案 3 :(得分:0)

我在NuGet_profile.ps1中添加了以下函数:

function debugnobuild() {
    # temporarily disable build (same as Properties -> Configuration -> ..)
    $buildProjects = @($DTE.Solution.SolutionBuild.ActiveConfiguration.SolutionContexts |
    where ShouldBuild | foreach {
        $_.ShouldBuild = $false
        $_.ProjectName
    })
    try {
        # start debugging
        $DTE.Solution.SolutionBuild.Debug()
    }
    finally {
        # undo changes
        $DTE.Solution.SolutionBuild.ActiveConfiguration.SolutionContexts |
        where { $buildProjects -contains $_.ProjectName } | foreach {
            $_.ShouldBuild = $true
        }
    }
}

然后只需在软件包管理器控制台中调用debugnobuild(或您喜欢的任何名称)即可。

答案 4 :(得分:0)

我发现创建一个新的构建配置很方便。 在解决方案资源管理器中右键单击解决方案,然后选择Properties。从那里选择Configuration Properties / Configuration。现在选择Configuration Manager并创建一个新配置,如图所示。您可以将构建配置创建为Debug项目的副本:

enter image description here

然后,按OK并关闭所有项目构建标志:

enter image description here

Visual Studio将在启动项目的bin文件夹下创建一个文件夹,其名称为新配置。将您的预构建文件复制到此处并运行新配置。

答案 5 :(得分:-5)

不,没有。如果不运行它就无法调试历史版本,这意味着要构建它。 VS针对当前符号和二进制文件进行调试,这些符号和二进制文件将在不构建源的情况下与源同步,从而无法进行调试。