首次编译错误时自动停止 Visual C++ 2008 构建?

我知道我可以编译单个源文件,但有时――比如,当编辑一个被许多 .cpp 文件使用的头文件时――需要重新编译多个源文件.这就是 Build 的用途.

I know I can compile individual source files, but sometimes -- say, when editing a header file used by many .cpp files -- multiple source files need to be recompiled. That's what Build is for.

VC9 (Visual C++ 2008) 中Build"命令的默认行为是尝试编译所有需要它的文件.有时这只会导致许多失败的编译.我通常只是观察错误并按 ctrl-break 手动停止构建.

Default behavior of the "Build" command in VC9 (Visual C++ 2008) is to attempt to compile all files that need it. Sometimes this just results in many failed compiles. I usually just watch for errors and hit ctrl-break to stop the build manually.

有没有办法配置它,使构建在第一次编译错误(不是第一个失败的项目构建)时自动停止?

Is there a way to configure it such the build stops at the very first compile error (not the first failed project build) automatically?

推荐答案

我想出了一个更好的宏家伙.它在第一个错误/秒后立即停止(更新构建窗口后立即停止).

I came up with a better macro guys. It stops immediately after the first error/s (soon as build window is updated).

Visual Studio -> 工具 -> 宏 -> 宏 IDE...(或 ALT+F11)

Visual Studio -> Tools -> Macros -> Macro IDE... (or ALT+F11)

Private Sub OutputWindowEvents_OnPaneUpdated(ByVal pPane As OutputWindowPane) Handles OutputWindowEvents.PaneUpdated
    If Not (pPane.Name = "Build") Then Exit Sub

    pPane.TextDocument.Selection.SelectAll()
    Dim Context As String = pPane.TextDocument.Selection.Text
    pPane.TextDocument.Selection.EndOfDocument()

    Dim found As Integer = Context.IndexOf(": error ")

    If found > 0 Then
        DTE.ExecuteCommand("Build.Cancel")
    End If

End Sub 

希望对你们有用.

相关文章