只构建启动项目的键盘快捷方式?

12

我尝试查找在VS2008中仅构建启动项目的键盘快捷方式。

我只找到了一个可配置的快捷方式来构建当前查看的项目,但这并不是很好。

有什么想法吗?

谢谢。


你是对的,Tools/Options/Environment/Keyboard 没有 Build.StartupProject:( - sbi
一个严肃的问题,为什么你只想要构建启动项目? - Lazarus
1
由于启动项目往往是我感兴趣的项目,即使我当前正在编辑另一个项目(启动项目依赖于该项目),我也会优先考虑启动项目。 - Danra
4个回答

13

那个宏应该可以解决:

Sub Build_Startup()
    DTE.ToolWindows.OutputWindow.Parent.Activate()
    Dim sb As SolutionBuild2 = DTE.Solution.SolutionBuild
    For Each item In sb.StartupProjects
        sb.BuildProject(sb.ActiveConfiguration.Name, item, True)
    Next
End Sub

只需将此内容放入宏中 - 使用宏IDE Alt + F11,并添加一个键盘映射(Tools/Customize/Commands/Keyboard,在Macros.名称空间中找到您的新命令),然后您就可以了。


太好了,它能运行!但是... 它没有在输出控制台上显示任何内容... 有什么办法可以改变这种情况吗? - Danra
它为我在构建输出窗格中显示标准的构建输出。你想要什么样的输出?你可以使用宏中可用的GetWindowOutputPane和OutputItem函数,在宏中添加自己的输出(示例/实用程序)。 - Bahbar
我的错误,输出确实被正确地显示了。谢谢! - Danra
在VS2010中,它没有显示出来。构建开始了,但是我无法打开通常在按下F7键开始构建时会显示的输出窗口。有什么建议吗? - progician
请注意,根据http://social.msdn.microsoft.com/Forums/vstudio/en-US/3ea91a70-5d1e-42b4-afa0-6218eb098bd9/macro-building-a-specific-project-using-a-specific-configuration-and-platform,此方法不能按所选平台构建 - 而是始终构建为Win32。我无法确认这一点,但认为值得一提。 - Michael Bray
不幸的是,从VS 2012开始,宏已经消失了:https://dev59.com/dWct5IYBdhLWcg3wetUo。虽然有一些插件试图弥补这个问题,但仍然... - Tomasz Gandor

1
你可以创建一个自定义的解决方案配置,只构建你想要的项目(例如命名为“StartupOnly”)。默认情况下,Visual Studio 在工具栏中显示一个组合框,允许快速切换不同的配置,所以你只需要选择该配置并使用常规的构建命令即可。

我正在寻找一种通用的键盘快捷方式,不需要为我想要构建的每个项目定义配置。 - Danra

1
您可以在 VS 2019 和 VS 2022 上使用 "仅构建启动项目" 扩展。
此外,您还可以检查 "Build.BuildOnlyStartupProject" 快捷键以进行分配。

0

抱歉,我没有足够的积分直接回复上面的progician,但在VS2010中,如果您将以下内容作为Bahbar宏的第一行添加,输出窗口将在构建期间显示

DTE.ToolWindows.OutputWindow.Parent.Activate()

更新:此外,您需要使用以下内容作为配置名称:

Dim configName = String.Format("{0}|{1}", sb.ActiveConfiguration.Name, sb.ActiveConfiguration.PlatformName)

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接